예제 #1
0
        private void Start()
        {
            var factory = new Factory();

            _viewInitializer = new ViewInitializer(_bonusView, _buttonView, _healthView, _keyView, _endGameView);

            var player = factory.Create(factory.Create(_data.CharacterConfiguration),
                                        new GrenadeModelPull(factory.Create(_data.GrenadeConfiguration)),
                                        new MineModelPull(factory.Create(_data.MineConfiguration)));

            _viewInitializer.Initialize(new HealthViewModel(player.Character.HealthModel));

            var bonusEffectViewModel = new BonusEffectViewModel(player);

            _viewInitializer.Initialize(new BonusEffectViewModel(player));

            _viewInitializer.Initialize(new ButtonViewModel(new ButtonModel(_data.ButtonConfiguration)));
            _viewInitializer.Initialize(new KeyViewModel(new KeyModel(_data.KeyConfiguration)));

            _bonusExecute = new BonusExecute(new BonusList(_data.BonusesConfiguration), player, bonusEffectViewModel);

            _helperExecute =
                new HelperCharacterExecute(new HelperCharacterModel(_data.HelperCharacterConfiguration), player,
                                           bonusEffectViewModel);

            var enemies =
                ((IFactory <SimpleEnemyConfiguration, List <IEnemyViewModel> >)factory).Create(
                    _data.SimpleEnemyConfiguration);

            _enemyExecute = new SimpleEnemyExecute(enemies);

            _playerExecute = new PlayerInputExecute(player);
        }
예제 #2
0
 public BonusInteractDetector(IPlayerModel player, IBonusList bonusList, BonusEffectViewModel playerEffect)
 {
     _player       = player;
     _bonusList    = bonusList;
     _playerEffect = playerEffect;
 }