public static Enemy SpawnBoss(Vector3 pos) { GameObject bossPre = Enemies.RandomBoss(); Enemy boss = Enemies.CreateEnemy(pos, bossPre); return(boss); }
public List <Enemy> AddEnemies(List <GameObject> newEnemies) { List <Enemy> spawnedEnemies = new List <Enemy>(); foreach (GameObject enemy in newEnemies) { Enemy spawnedEnemy = Enemies.CreateEnemy(Vector3.zero, enemy); spawnedEnemies.Add(spawnedEnemy); this.enemies.Add(spawnedEnemy); } return(spawnedEnemies); }
public static List <Enemy> SpawnEnemies(Vector3[] positions) { List <Enemy> spawnedEnemies = new List <Enemy>(); for (int i = 0; i < positions.Length; i++) { Vector3 pos = positions[i]; EnemyType type = Enemies.RandomEnemy(); GameObject enemyPre = GetEnemyPrefabByName(type.name); Enemy enemy = Enemies.CreateEnemy(pos, enemyPre, type); spawnedEnemies.Add(enemy); } return(spawnedEnemies); }
public override bool DoStage(Level level) { if (count > 0) { cooldown -= Time.DeltaTime; if (cooldown <= 0.0f) { Enemy e = Enemies.CreateEnemy(name); left = !left; if (left) { e.transform.position = new Vector2(0, 0); dest = new Vector2(dest); } else { e.transform.position = new Vector2(1, 0); dest = new Vector2(dest); cooldown = 0.5f; } e.transform.Rotate(180); dest = new Vector2(dest); dest.Sub(0, 0.1f); e.SetState(new FlyInState(new SpinState(), dest, 1.0f)); level.AddEntity(e); count--; } return(false); } else { return(true); } }