Saya telah memulai permainan baru yang tidak memerlukan mouse, sehingga meninggalkan gerakan ke keyboard. Saya telah mencoba menggabungkan 8 arah; atas, kiri, kanan, atas kanan dan seterusnya. Namun ketika saya menekan lebih dari satu tombol panah, kecepatan gerakannya menumpuk ( http://gfycat.com/CircularBewitchedBarebirdbat ). Bagaimana saya bisa mengatasi ini?
Ini bagian yang relevan dari kode saya:
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);
}
}