public override void NextTurn() { var match = Container.GetMatch(); var nextIndex = 1 - match.currentPlayerIndex; var action = new NextTurnAction(nextIndex); Container.Perform(action); }
public override void StartMatch(Player player, int first) { var dungeonSystem = Container.GetAspect <DungeonSystem>(); var enemy = dungeonSystem.GetEncounter(1 - player.index); Container.GetAspect <DataSystem>().StartNewMatch(new List <Combatant> { player, enemy }); var action = new NextTurnAction(first); Container.Perform(action); }
public override void NextTurn() { var match = Container.GetMatch(); var player = match.players[match.currentPlayerIndex] as Player; if (player.finished) { return; } player.finished = true; match.finishedPlayers++; if (match.finishedPlayers == match.players.Count) { var nextIndex = match.nextTurnPlayer; match.nextTurnPlayer = 1 - match.nextTurnPlayer; var action = new NextTurnAction(nextIndex); Container.Perform(action); } else { ChangeTurn(); } }