private GameController( Field field, PlayerTurnSignal playerTurnSignal, EnemyTurnSignal enemyTurnSignal, WaitForPlayerTurnSignal waitForPlayerTurnSignal, WaitForEnemyTurnSignal waitForEnemyTurnSignal, AttackTurnAction.Factory attackPerformerFactory, SceneLauncher sceneLauncher, IVictoryCondition victoryCondition, ILossCondtion lossCondtion) { this.field = field; this.playerTurnSignal = playerTurnSignal; this.enemyTurnSignal = enemyTurnSignal; this.waitForPlayerTurnSignal = waitForPlayerTurnSignal; this.waitForEnemyTurnSignal = waitForEnemyTurnSignal; this.attackPerformerFactory = attackPerformerFactory; this.sceneLauncher = sceneLauncher; this.victoryCondition = victoryCondition; this.lossCondtion = lossCondtion; this.turnQueue = new Queue <Character> (); turnQueue.Enqueue(field.Player); foreach (var enemy in field.Enemies) { turnQueue.Enqueue(enemy); } }
private void Inject(SceneLauncher sceneLauncher) { this.sceneLauncher = sceneLauncher; }