Пример #1
0
        public Game(IGameClock gameClock, IGameSettings settings)
        {
            _gameClock        = gameClock;
            _settings         = settings;
            _gameStateMachine = new GameStateMachine(settings, _gameNotifications, this);
            var gameState = new GameState(settings);

            _gameState = gameState;
            _gameStateMachineInstance = _gameStateMachine.CreateInstanceLift(gameState);
            Walls          = _settings.Walls.Union(_settings.Doors).ToList().AsReadOnly();
            _fruitForLevel = new[] { new Fruit(_settings.Fruit, FruitType.Cherry) };
        }
Пример #2
0
        public Game(IGameClock gameClock, IGameSettings settings)
        {
            _gameClock = gameClock;
            _settings  = settings;
            var actions = new Actions(settings, _gameNotifications);

            _gameStateMachine = new GameStateMachine(actions, settings, this);
            var gameState = new GameState(settings);

            _gameState = gameState;
            _gameStateMachineInstance = _gameStateMachine.CreateInstanceLift(gameState);
            WallsAndDoors             = _settings.Walls.Union(_settings.Doors).ToList().AsReadOnly();
            Walls            = _settings.Walls;
            _fruitForLevel   = new[] { new Fruit(_settings.Fruit, FruitType.Cherry) };
            GhostHouseMiddle = CalculateMiddleOfGhostHouse(settings.GhostHouse);
        }