public void HitArrow(InputAction inputAction) { var player = inputAction.Player - 1; if ((Players[player].KO) || (!Players[player].Playing)) { return; } if (_noteBars[player].CurrentNote() == null) { return; } if ((Note.ActionToDirection(inputAction) == _noteBars[player].CurrentNote().Direction)) { _noteBars[player].MarkCurrentCompleted(); SyncRemainingNotes(); if (PlayerArrowHit != null) { PlayerArrowHit(player, null); } } else if ((_noteBars[player].CurrentNote() != null)) { _noteBars[player].PlayerFaulted(); SyncRemainingNotes(); if (PlayerFaulted != null) { PlayerFaulted(player, null); } } }