Я изучаю Unity через курс udemy.
Теперь я застрял в точке, где экран Unity зависает, когда я нажимаю кнопку воспроизведения. Это происходит в диспетчере возрождения для случайно расположенных врагов и бонусов, IEnumerator
для врагов работает отлично, но как только я добавляю то же самое для бонуса и нажимаю кнопку воспроизведения, он зависает.
Когда Я закомментирую раздел powerup в диспетчере возрождения и перезапускаю Unity, он работает отлично.
Что мне делать, чтобы мой спавн работал?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SpawnManager : MonoBehaviour
{
[SerializeField]
private GameObject _enemyShipPrefab;
[SerializeField]
private GameObject[] powerup;
// Start is called before the first frame update
void Start()
{
StartCoroutine(EnemySpawnRoutine());
StartCoroutine(PowerupSpawnRoutine());
}
public IEnumerator EnemySpawnRoutine()
{
while(true)
{
float enemyPositionX = Random.Range(-8.34f, 8.34f);
Instantiate(_enemyShipPrefab, new Vector3(enemyPositionX, 6.39f, 0), Quaternion.identity);
yield return new WaitForSeconds(5.0f);
}
}
public IEnumerator PowerupSpawnRoutine()
{
while(true)
{
// float powerupPositionX = Random.Range(-8.622f, 8.622f);
int randomPowerup = Random.Range(0, 3);
Instantiate(powerup[randomPowerup], new Vector3(Random.Range(-8.622f, 8.622f), 4.5f, 0), Quaternion.identity);
}
}
}