У меня проблема ... Я хочу, чтобы моя огненная сфера создавалась каждый раз, когда я нажимаю одну из клавиш со стрелками.
-Это работает, но: если (например) я нажимаю стрелку вниз, а затем, пока нажата стрелка вниз, одновременно нажимаю другую стрелку, (например) стрелку влево, это не создаст огненная сфера слева.
Но со стрелкой вправо все работает просто отлично (потому что это первый из операторов if).
-Я знаю, что код работает сверху вниз, и я не могу это изменить. Но, возможно, я смогу найти способ избежать этого, заставить эту работу работать так, как я хочу.
(Я хочу, чтобы создание fireSphere было похоже на Binding of Isaac: если вы нажмете влево, он будет стрелять влево, если вправо, то будет стрелять вправо, НО, если вы сначала нажмете стрелку влево, а затем, пока налево Стрелка нажата, вы нажимаете стрелку вправо, она будет стрелять вправо. То же самое, если вы нажмете сначала вправо)
(английский - мой второй язык, если ты меня не понимаешь, скажи мне! Я постараюсь объяснить себя лучше)
Спасибо!
if (Input.GetButton("RightArrow") && Time.time > timeToFire)
{
timeToFire = Time.time + 1 / fireRate;
Instantiate(fireSphere, firePoint.position, firePoint.rotation);
}
if (Input.GetButton("LeftArrow") && Time.time > timeToFire)
{
timeToFire = Time.time + 1 / fireRate;
Instantiate(fireSphere, firePoint.position, firePoint.rotation);
}
if (Input.GetButton("UpArrow") && Time.time > timeToFire)
{
timeToFire = Time.time + 1 / fireRate;
Instantiate(fireSphere, firePoint.position, firePoint.rotation);
}
if (Input.GetButton("DownArrow") && Time.time > timeToFire)
{
timeToFire = Time.time + 1 / fireRate;
Instantiate(fireSphere, firePoint.position, firePoint.rotation);
}