Пример #1
0
        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;
 }