Я пытаюсь генерировать кубы в случайном порядке.
Сначала в мире появляется куб. Затем генерируется случайное число. Это число определяет, где будет создан следующий куб. Давайте назовем это cube1 После того, как cube1 порожден, cube2 должен использовать позицию cube1 для появления, но он все еще использует позицию исходного куба.
Я не могу понять почему.
Я уже пытался использовать Debug.Log для просмотра разных позиций, но я не могу заставить его работать независимо от того, что я пытаюсь.
public class GenerateDungeon: MonoBehaviour {
public GameObject[] cells;
public int number = 0, i = 0;
public void Start()
{
Instantiate(cells[i], new Vector3(0, 0, 0), Quaternion.identity);
while(i < 2)
{
number = Random.Range(1, 5);
i++;
if (number == 1)
{
Instantiate(cells[i], cells[i - 1].transform.position + new Vector3(0, 4, 0), Quaternion.identity);
}
else if (number == 2)
{
Instantiate(cells[i], cells[i - 1].transform.position + new Vector3(4, 0, 0), Quaternion.identity);
}
else if (number == 3)
{
Instantiate(cells[i], cells[i - 1].transform.position + new Vector3(0, -4, 0), Quaternion.identity);
}
else if (number == 4)
{
Instantiate(cells[i], cells[i - 1].transform.position + new Vector3(-4, 0, 0), Quaternion.identity);
}
}
}
}
Я не получаю никакой ошибкисообщения, но это не работает так, как я хотел.