void Update() { if (_dead) { return; } if (Input.GetKeyDown(KeyCode.W)) { _actions.Enqueue(new CardMoveAction(CardMoveAction.MovementDirection.Up)); } else if (Input.GetKeyDown(KeyCode.S)) { _actions.Enqueue(new CardMoveAction(CardMoveAction.MovementDirection.Down)); } else if (Input.GetKeyDown(KeyCode.A)) { _actions.Enqueue(new CardMoveAction(CardMoveAction.MovementDirection.Left)); } else if (Input.GetKeyDown(KeyCode.D)) { _actions.Enqueue(new CardMoveAction(CardMoveAction.MovementDirection.Right)); } if (_currentAcion == null) { if (_actions.Count > 0) { _currentAcion = _actions.Dequeue(); } else { return; } } if (_currentAcion.DoAction(gameObject)) { _currentAcion = null; } }
public void Action(Node targetNode) => actionProvider.DoAction(targetNode);