Глобальная переменная

Программирование на Юнити.

Глобальная переменная

Сообщение MediaMen 23 апр 2009, 08:49

Как объявить переменную в скрипте, что бы другие скрипты ее видели?
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: Глобальная переменная

Сообщение Neodrop 23 апр 2009, 09:15

Зависит от языка, на котором пишете.

C#
Код: Выделить всё
public float myVar = 0.0f;


JavaScript
Код: Выделить всё
var myVar : float = 0.0;


в Boo не знаю. Не пишу. Там кажется и вовсе просто myVar.

Следующий вопрос, как я подозреваю : "Как получить доступ к переменной?" ? :-?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Глобальная переменная

Сообщение MediaMen 23 апр 2009, 09:23

Вы провидец просто! ^:)^ И как же?
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: Глобальная переменная

Сообщение Neodrop 23 апр 2009, 09:32

Тут на форуме это не раз обсуждалось.
Для какого языка или комбинации языков вам нужен доступ к public переменной?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Глобальная переменная

Сообщение MediaMen 23 апр 2009, 09:58

Для JavaScript, подскажите плиз
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: Глобальная переменная

Сообщение Neodrop 23 апр 2009, 10:30

Сперва нужно получить доступ к объекту с переменной.
Наиболее простой способ :

1. Создаём GO в сцене. Называем его Globals.
2. Пишем скрипт

Globals.js
Код: Выделить всё
var myVar0 : float;
var myVar1 : Vector3;
// и так далее


3. Вешаем скрипт на наш Globals объект и забываем про него.

4.
В любом скрипте пишем :

Код: Выделить всё
var gl : Globals;

function Start()
{
   gl = GameObject.Find("Globals").GetComponent("Globals");
}


5. Теперь, когда нам нужно получить глобальные переменные, просто пишем

Код: Выделить всё
....
   gl.myVar0 = 0.1;
   gl.myVar1 = Vector3(0,0,0.1);
// и далее по списку.


Точно так же можно получить доступ к общим функциям, объявленным в этом скрипте.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Глобальная переменная

Сообщение MediaMen 23 апр 2009, 10:38

Спасибо
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13