Я пытаюсь добавить атаку к своему персонажу, все работает нормально, кроме того, что моя кнопка вызывается несколько раз нажатием кнопки (я не удерживаю клавишу, а она вызывается в среднем 4 раза).
Вот мой метод обновления:
void Update() {
attackArea.enabled = false;
InputCharacter();
MoveAttackArea();
SetAnimation();
ApplyColorFilters();
}
и мой метод InputCharacter:
void InputCharacter() {
direction = Vector2.zero;
if (Input.GetKey(KeyCode.B)) {
lastAttackTime = currentTime;
Attack();
} else if (Input.GetKey(KeyCode.UpArrow) || Input.GetKey(KeyCode.W)) {
Move(Vector2.up);
} else if (Input.GetKey(KeyCode.DownArrow) || Input.GetKey(KeyCode.S)) {
Move(Vector2.down);
} else if (Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.A)) {
Move(Vector2.left);
} else if (Input.GetKey(KeyCode.RightArrow) || Input.GetKey(KeyCode.D)) {
Move(Vector2.right);
}
}
, также мой метод атаки:
private void Attack() {
Debug.Log("attacking");
animator.SetTrigger("attack");
attackArea.enabled = true;
}
Я не знаюНе знаю, относится ли эта часть к этой теме, но:
Журнал показывается несколько раз, и моя анимация воспроизводится дважды (когда я запускаю анимацию уничтожения объекта, она запускается дважды, я не знаю, связана ли она)