У меня возникли проблемы с созданием случайного астероида из массива в цикле for.spawn gameobject из массива
Массив работает сейчас, однако (я предполагаю, что это в цикле for где-то), он не будет чередовать между различными игровыми объектами. какой бы объект ни появлялся в первую очередь, каждый раз появляется, но каждый раз, когда вы загружаете игру, каждый раз каждый раз порождает другую.
Как мне получить его, чтобы выбрать новый случайный объект из массива после каждого экземпляра экземпляра?
using UnityEngine;
using System.Collections;
public class GameController : MonoBehaviour {
public GameObject[] asteroids;
public Vector3 spawnValues;
public int asteroidCount;
public float spawnWait;
public float startWait;
public float waveWait;
void Start() {
StartCoroutine (spawnWaves());
}
IEnumerator spawnWaves() {
GameObject asteroid = asteroids[Random.Range(0, asteroids.Length)];
while (asteroidCount > 0) {
for (int i = 0; i < asteroidCount; i++) {
Vector3 spawnPosition = new Vector3 (spawnValues.x, Random.Range (-spawnValues.y, spawnValues.y), spawnValues.z);
Quaternion spawnRotation = Quaternion.identity;
Instantiate (asteroid, spawnPosition, spawnRotation);
yield return new WaitForSeconds (spawnWait);
}
}
}
}
Off тему, но вы имеете в виду помечать с C# не C? Я не знаю, можете ли вы использовать C с единством – Taelsin
мой плохой, нет, он должен быть C#! – MarkHughes88