Ho iniziato un nuovo gioco che non richiede mouse, lasciando così il movimento sulla tastiera. Ho cercato di incorporare 8 direzioni; su, sinistra, destra, su-destra e così via. Tuttavia, quando premo più di un tasto freccia, la velocità di movimento aumenta ( http://gfycat.com/CircularBewitchedBarebirdbat ). Come ho potuto contrastare questo?
Ecco una parte rilevante del mio codice:
var speed : int = 5;
function Update () {
if (Input.GetKey(KeyCode.UpArrow)) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
} else if (Input.GetKey(KeyCode.UpArrow) && Input.GetKey(KeyCode.RightArrow)) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
} else if (Input.GetKey(KeyCode.UpArrow) && Input.GetKey(KeyCode.LeftArrow)) {
transform.rotation = Quaternion.AngleAxis(315, Vector3.up);
}
if (Input.GetKey(KeyCode.DownArrow)) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
}
}