/// <summary> /// Gets an array of type Transform returning the flight path used by the enemy. /// </summary> /// <param name="pattern"></param> /// <returns></returns> public static Transform[] EntrancePatterns(EntranceFlightPatterns pattern) { EnemySpawner spawner = GameObject.Find("Round1Phase1EnemyFormation").GetComponent <EnemySpawner>(); GameObject middlePt = GameObject.FindGameObjectWithTag("Point2"); GameObject rightEntrancePt = GameObject.FindGameObjectWithTag("begin_Right"); GameObject leftEntrancePt = GameObject.FindGameObjectWithTag("begin_Left"); // Get next spawn position from spawner script on current formation. Transform nextSpawnPos = spawner.currentSpawnPos; switch (pattern) { case EntranceFlightPatterns.round1_DownLeft: Transform[] rd1_Flight1 = new Transform[5]; rd1_Flight1[0] = RespawnPoint("Round1Phase1EnemyFormation", true); //Debug.Log("<color=green>SpawnPoint:</color> " + spawnPt.transform); rd1_Flight1[1] = middlePt.transform; rd1_Flight1[2] = leftEntrancePt.transform; rd1_Flight1[3] = spawner.gameObject.transform; rd1_Flight1[4] = nextSpawnPos; return(rd1_Flight1); break; case EntranceFlightPatterns.round1_DownRight: Transform[] rd1_Flight2 = new Transform[5]; rd1_Flight2[0] = RespawnPoint("Round1Phase1EnemyFormation", false); rd1_Flight2[1] = middlePt.transform; rd1_Flight2[2] = rightEntrancePt.transform; rd1_Flight2[3] = spawner.gameObject.transform; rd1_Flight2[4] = nextSpawnPos; return(rd1_Flight2); break; default: Transform[] test = new Transform[2]; //test[0] = spawnPt.transform; //test[1] = middlePt.transform; return(test); break; } }
/// <summary> /// Gets an array of type Transform returning the flight path used by the enemy. /// </summary> /// <param name="pattern"></param> /// <returns></returns> public static Transform[] EntrancePatterns(EntranceFlightPatterns pattern) { EnemySpawner spawner = GameObject.Find("Round1Phase1EnemyFormation").GetComponent<EnemySpawner>(); GameObject middlePt = GameObject.FindGameObjectWithTag("Point2"); GameObject rightEntrancePt = GameObject.FindGameObjectWithTag("begin_Right"); GameObject leftEntrancePt = GameObject.FindGameObjectWithTag("begin_Left"); // Get next spawn position from spawner script on current formation. Transform nextSpawnPos = spawner.currentSpawnPos; switch (pattern) { case EntranceFlightPatterns.round1_DownLeft: Transform[] rd1_Flight1 = new Transform[5]; rd1_Flight1[0] = RespawnPoint("Round1Phase1EnemyFormation",true); //Debug.Log("<color=green>SpawnPoint:</color> " + spawnPt.transform); rd1_Flight1[1] = middlePt.transform; rd1_Flight1[2] = leftEntrancePt.transform; rd1_Flight1[3] = spawner.gameObject.transform; rd1_Flight1[4] = nextSpawnPos; return rd1_Flight1; break; case EntranceFlightPatterns.round1_DownRight: Transform[] rd1_Flight2 = new Transform[5]; rd1_Flight2[0] = RespawnPoint("Round1Phase1EnemyFormation", false); rd1_Flight2[1] = middlePt.transform; rd1_Flight2[2] = rightEntrancePt.transform; rd1_Flight2[3] = spawner.gameObject.transform; rd1_Flight2[4] = nextSpawnPos; return rd1_Flight2; break; default: Transform[] test = new Transform[2]; //test[0] = spawnPt.transform; //test[1] = middlePt.transform; return test; break; } }