PDA

Просмотр полной версии : Пара чайниковских вопросов


Alkatraz
19.07.2003, 11:32
Здравствуйте. Тут у меня пара чайниковских вопросов появилась:
1. Переменные - различия и области действия глобальных и локальных переменных. Как, например объявить глобальную переменную? Какова будет область ее действия? Как объявить локальную переменную и будет ли она действовать на весь клип или только в конкретном кадре/процедуре? Где можно увидеть толковое объяснение по этим вопросам?
2. Функции... В принципе вопросы те-же... Как вызывать процедуру в другом клипе? Как прописать конкретную функцию на определенное событие для объекта? Можно ли прописать функцию из другого объекта? Привязываются ли функции конкретно к объекту либо же к клипу вцелом? Вобщем, тоже хотелось бы узнать, где можно достать в сети толковое руководство...
И вообще - я еще абсолютный чайник. Где можно достать примеры с хорошим описанием по основам работы со скриптами?
Спасибо...

Useless
19.07.2003, 15:52
Глобальные переменные в MX объявляются через _global. В пятёрке такого нет, но нечто подобное можно сделать, объявив переменную в _root, а затем обращаясь к ней так: _root.variable.

Локальные переменные для функции и блока (и кадра, вызванного через call), объявляются с помощью ключевого слова var.

Остальные переменные относятся к тому таймлайну (клипу), в котором они определены. Закрытых переменных нет, поэтому к любой переменной в таймлайне можно обратиться из любого другого клипа.

Кроме клипов, есть ещё программные объекты - но с ними всё аналогично.

Функции - те же переменные, просто в них хранится ссылка на код. Поэтому всё, что относится к переменным, справедливо и для функций.

Читать хелп: var, _global, function (ещё можно call и set variable)
Хелп на русском здесь (http://www.vmstudio.com/)
Ещё кое-что для начинающих тут (http://dembicki.narod.ru/)

leo@atris
20.07.2003, 04:59
реалистично обращаться к любой переменной, равно как и объявлять ее, по абослютному пути, нпример
_root.movie1.variable1='yep';
при этом в _root.movie2 ее видно не будет, т.е. можно испольвоать это имя... а вообще, см. классическую стрктуру наследования :)
кстати, это оч.удобно при загрузке переменных (LoadVariables) и вообще чем сожнее клип, тем круче тема :)

Alkatraz
20.07.2003, 19:06
Спасибо!..