public bool TrySwitchTurn(GameObject entity) { if (!entity.IsOwnedByPlayer() || !CanSwitchTurns(Acting, entity)) { return(false); } AnyCombatTurnEnded?.Invoke(Acting); StartTurn(entity); return(true); }
public void EndTurn(GameObject entity) { if (!IsEntityTurn(entity)) { return; } Queue.Remove(entity); Acting = null; AnyCombatTurnEnded?.Invoke(entity); if (Queue.Count == 0) { AnyCombatTeamTurnEnded?.Invoke(this); NextRound(); return; } StartTurn(Queue.First()); }