Question by
$$anonymous$$ · Mar 12, 2018 at 07:02 PM ·
scripting problemstrange
C# Script skipping a critical part of the script without no reason. Help!
Here's my script: public class WaveScript: MonoBehaviour {
private bool NextWaveStarted;
private int EnemiesKilled;
private int MaxEnemiesKilled;
private GameObject GUIController;
public GameObject[] WaveSpawnPoints;
public GameObject[] EnemyTypes;
public int MaxEnemies;
private int SpawnPoint;
// Use this for initialization
void Start () {
GUIController = GameObject.Find("GUIController");
NextWaveStarted = false;
MaxEnemiesKilled = 1;
MaxEnemies = 1;
SpawnPoint = 0;
}
// Update is called once per frame
void Update () {
if (GameObject.Find("Block") == null & GUIController.GetComponent<GUIScript>().Wave == 1 & NextWaveStarted == false|| GameObject.Find("Block(Clone)") == null & GUIController.GetComponent<GUIScript>().Wave != 1 & NextWaveStarted == false)
{
NextWaveStarted = true;
GUIController.GetComponent<GUIScript>().NextWave();
MaxEnemies = MaxEnemies + 2;
StartCoroutine("SpawnEnemies",GUIController.GetComponent<GUIScript>().Wave);
}
}
IEnumerator SpawnEnemies(int CurrentWave)
{
for (int i = 0; i == MaxEnemies; i++) //Skips this part.
{
yield return new WaitForSeconds(1f);
int SpawnPoint = Random.Range(0, 4);
Debug.Log(i); //Doesn't log anything to the console.
Instantiate(EnemyTypes[0], WaveSpawnPoints[SpawnPoint].transform.position, Quaternion.identity);
}
NextWaveStarted = false;
Debug.Log("..."); //I put this here to test that it skips it.
}
}
Comment
Ok, I just fixed the script by using while() but now there is another problem. When the enemies spawn they just don't spawn to the spawnpoints but they spawn at like | 400 x | 400 y | 0 z | While the spawnpoint positions are like | 30 x | 40 y| 0 z |
Your answer
Follow this Question
Related Questions
Scripts unchecking automatically 0 Answers
Can't get script to repeat 0 Answers
new scripts wont work, old scripts work fine. why? new scripts won't do ANY work. 0 Answers
How do i fix this error? Cannot implicitly convert type `Sprite' to `UnityEngine.Sprite' 1 Answer
Collisions not working in top-down RPG? 0 Answers