Левш@ писал(а):Например глобальные переменные они инициализируются только через поведение прикрепленное к какому-то объекту в сцене, а не исчезнут ли они когда сцена удалится? Они так и называются Global?
Есть разные способы иметь глобальные переменные.
Можно просто обьявить:
Используется javascript
static var glVar_0 : int = 0;
Обратиться к такой переменной можно из любого скрипта:
Можно просто получить ссылку на сам скрипт и заиметь доступ вообще ко всем его переменным (и функциям), кроме private var.
Используется javascript
var script = gameObject.Find("ИмяОбьекта").GetComponent("ИмяСкрипта");
script.glVar_0 = 55;
Тут есть моя статья для нубов, легким языком и подробно:
http://gamecreatingcommunity.ru/forum/186-2694-1 А чтоб они не исчезли при переходе на другую сцену, скрипт можно повесить на обьект которому можно запретить удаление - DontDestroy.
Используется javascript
function Awake () {
DontDestroyOnLoad (transform.gameObject);
}
Такая проблема. Скрипты контролирует #Прагма стрикт.
Обращаюсь к переменным так:
А так не получается:
Используется javascript
var script = gameObject.Find("ИмяОбьекта").GetComponent("ИмяСкрипта");
script.glVar_0 = 55;
Если у меня много объектов одинаковых. И на всех скрипты с одинаковыми именами получается. Как мне обратиться к скрипту нужного объекта?
до этого делал так: создавал массив этих объектов и пропускал через цикл. скрипт называется так же как и имя объекта.
Используется javascript
var index = go[i].GetComponent(go[i].name).index;
//тут работал с индексом и так же с другими его компонентами
Сейчас так уже не получается. Как мне быть?