public void OnWaveChanged(LevelConfig.WaveDef def, int maxWaves) { if (_hudElements != null) { for (int i = 0; i < _hudElements.Count; i++) { _hudElements[i].OnWaveChanged(def, maxWaves); } } }
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 override void Enter() { base.Enter(); if (_waveQueue.Count > 0) { _currentWave = _waveQueue.Dequeue(); WaveInit(); } else { _generator.gameWon = true; _generator.SetFlowState(State.End); } }
public override void OnWaveChanged(LevelConfig.WaveDef def, int maxWaves) { CanvasGroup grid = _enemyCountText._canvasGroup; if (_countIntroTween != null) { _countIntroTween.Kill(true); } if (_countScaleTween != null) { _countScaleTween.Kill(true); } if (_waveBarMorph != null) { _waveBarMorph.Kill(true); } _countIntroTween = grid.DOFade(0, _flowIndicatorData.enemyCountFadeTime).SetEase(_flowIndicatorData.enemyCountFadeEaseType).OnComplete(() => { _enemyCountText.SetText(def.enemyCount.ToString()); _countIntroTween = grid.DOFade(1, _flowIndicatorData.enemyCountFadeTime). SetEase(_flowIndicatorData.enemyCountFadeEaseType). OnComplete(() => { _countScaleTween = _enemyCountText.transform.DOScale(_flowIndicatorData.enemyCountScale, _flowIndicatorData.enemyCountScaleTime). SetEase(_flowIndicatorData.enemyCountScaleEaseType). SetLoops(2, LoopType.Yoyo); }); }); RectTransform bar = _enemyWaveBar._rectTransform; _waveBarMorph = bar.DOSizeDelta(new Vector2(_flowIndicatorData.waveBarHiddenWidth, bar.sizeDelta.y), _flowIndicatorData.waveBarMorphSpeed). SetEase(_flowIndicatorData.waveBarMorphEaseType).OnComplete(() => { //Set Wave Progress Text _enemyWaveText.SetText((def.waveIndex + 1).ToString() + "/" + maxWaves); _waveBarMorph = bar.DOSizeDelta(new Vector2(_flowIndicatorData.waveBarVisibleWidth, bar.sizeDelta.y), _flowIndicatorData.waveBarMorphSpeed). SetEase(_flowIndicatorData.waveBarMorphEaseType); }); }
public virtual void OnWaveChanged(LevelConfig.WaveDef def, int maxWaves) { }