private EnemySpaceship SpawnEnemyUnit()
        {
            GameObject     spawnedEnemyObject = _enemySpawner.Spawn();
            EnemySpaceship enemyShip          = spawnedEnemyObject.GetComponent <EnemySpaceship>();

            if (enemyShip != null)
            {
                enemyShip.SetMovementTargets(_enemyMovementTargets);
            }
            return(enemyShip);
        }
 public void SpawnPowerUp(EnemySpaceship enemySpaceship, string powerUpType)
 {
     if (powerUpType == "health")
     {
         Instantiate(_healthPowerUpPrefab, enemySpaceship.transform.position, new Quaternion());
     }
     if (powerUpType == "weapon")
     {
         Instantiate(_weaponPowerUpPrefab, enemySpaceship.transform.position, new Quaternion());
     }
 }
        private IEnumerator SpawnRoutine()
        {
            yield return(new WaitForSeconds(_waitToSpawn));

            while (_enemyCount <= _maximumEnemyUnitsToSpawn)
            {
                EnemySpaceship enemy = SpawnEnemyUnit();
                if (enemy != null)
                {
                    _enemyCount++;
                }
                else
                {
                    Debug.LogError("Could not spawn an enemy.");
                    yield break;
                }
                yield return(new WaitForSeconds(_spawnInterval));
            }
        }