public MonsterState(MonsterGenerator generator, LevelConfig.LevelDef levelDef, HUDController hudController) : base(generator, levelDef) { _currentWaveIndex = 0; _hudController = hudController; _waveQueue = new Queue <LevelConfig.WaveDef>(); _maxWaves = levelDef.waves.Length; for (int i = 0; i < _maxWaves; i++) { LevelConfig.WaveDef def = levelDef.waves[i]; def.waveIndex = i; _waveQueue.Enqueue(def); } }
public MonsterGenerator(GameConfig gameConfig, EnemySystem enemySystem) { _dispatcher = Singleton.instance.notificationDispatcher; // TODO: Klean it up! _dispatcher.AddListener(GameplayEventType.ENEMY_KILLED, onEnemyKilled); _dispatcher.AddListener(GameplayEventType.GAME_COMPLETE, OnGameComplete); _levelConfig = gameConfig.levelConfig; _enemySystem = enemySystem; if (_levelConfig.levels.Count == 0) { Debug.LogError("NO LEVELS LOADED IN LEVEL CONFIG!"); } else { _levelDef = _levelConfig.levels[0]; } }
public EndState(MonsterGenerator generator, LevelConfig.LevelDef levelDef) : base(generator, levelDef) { }
public FlowState(MonsterGenerator generator, LevelConfig.LevelDef levelDef) { _generator = generator; _levelDef = levelDef; }
public BetweenWaveState(MonsterGenerator generator, LevelConfig.LevelDef levelDef) : base(generator, levelDef) { }