public void Step(ref WaveStartInfo token, int condition)
        {
            _enemiesData          = token;
            _numberOfEnemyToSpawn = _enemiesData.enemiesToSpawn;
            _enemiesSpawned       = _numberOfEnemyToSpawn;

            UpdateEnemiesLeftHUD(_enemiesSpawned);

            IntervaledTick().Run();
        }
 public void Step(ref DamageInfo token, int condition)
 {
     if (condition == DamageCondition.Dead)
     {
         if (_enemiesSpawned > 1)
         {
             _enemiesSpawned--;
             UpdateEnemiesLeftHUD(_enemiesSpawned);
         }
         else
         {
             var spawnInfo = new WaveStartInfo(0);
             _enemySpawnSequence.Next(this, ref spawnInfo);
         }
     }
 }
Example #3
0
        public void Step(ref WaveStartInfo token, int condition)
        {
            if (condition == WaveStatus.Stop)
            {
                _waveCounter++;
                _enemies = _enemies * _waveCounter;

                if (_scale < 3f)
                {
                    _scale = _scale + 0.5f;
                }

                _guiEntityView.waveWaitingTimeComponent.Reset();
                _guiEntityView.enemiesLeftComponent.isEnabled = false;
                _waveSpawned = false;
            }
        }
Example #4
0
        void SpawnWave(int enemies, float scale)
        {
            var waveStartInfo = new WaveStartInfo(enemies, scale);

            _enemySpawnSequencer.Next(this, ref waveStartInfo);
        }