На каждом уровне Unity есть границы и стрелки, которые являются игровыми объектами.
Что такое наиболее эффективный код C# для управления ими?
Они не изменяются и останутся до конца игры.
Мне было трудно управлять каждым объектом, объявляя его как публичная переменная все отдельно. Я неоднократно дергал каждый объект мышкой. Я прикрепил это к скрипту плеера.(PlayerManager)
пример:
Код: Выделить всё
public GameObject level1;
public GameObject border1OfLevel1;
public GameObject border2OfLevel1;
public GameObject border3OfLevel1;
public GameObject arrow1OfLevel1;
public GameObject arrow2OfLevel1;
public GameObject level2;
//and so on
- Tuple
- Set
- Array
- list
- Словарь
- Stack
- очередь
LinkedList
Вот его код:
Код: Выделить всё
GameObject[][] borderObjects = new GameObject[backgrounds.GetLength(0)][];
for (int i = 0; i < backgrounds.GetLength(0); i++)
{
int numberOfBorders = backgrounds[i].transform.childCount;
borderObjects[i] = new GameObject[numberOfBorders];
for (int j = 0; j < numberOfBorders; j++)
{
Transform borderTransform = backgrounds[i].transform.GetChild(j);
borderObjects[i][j] = borderTransform.gameObject;
}
}
Если вы заняты, буду признателен если бы вы могли связать меня с соответствующим сайтом, который может быть полезен.
Подробнее здесь: https://stackoverflow.com/questions/788 ... s-in-unity
Мобильная версия