[Jass] Урок 2. Базовая структура триггера.
Итак, теперь приступим к изучению непосредственно Jass.
Для начала нужно открыть Редактор триггеров. Удалим там всё и создадим новый триггер. Назовём его Probe.
Есть такая опция в триггерах под названием Конвертировать в текст. Это сконвертирует триггер Probe в Jass. Давайте это сделаем, нажав Правка -> Конвертировать в текст.
Откроем JassCraft. Создадим в нём новый документ. Скопируем в него текст из триггера Probe. Получим это:
Code
function Trig_Probe_Actions takes nothing returns nothing  
endfunction  

//==========================================================================  
function InitTrig_Probe takes nothing returns nothing  
  set gg_trg_Probe = CreateTrigger( )  
  call TriggerAddAction( gg_trg_Probe, function Trig_Probe_Actions )  
endfunction

Разберу этот код по частям.
Мы уже говорили о том, что функции бывают native и BJ, Приблизительно 92% функций, используемых GUI - именно BJ, поэтому лучше писать код на Jass.
Code
function InitTrig_Probe takes nothing returns nothing

function объявляет функцию.
InitTrig_Probe - название функции.
takes - аргументы, которые функция принимает. Перечисляются через запятую. Если функция не принимает ничего, то после takes пишется nothing. Заметьте, что после последнего аргумента запятую ставить не надо.
returns - аргумент, который функция возвращает. Такой аргумент может быть только один! При этом не надо указывать название аргумента, только его тип. Если функция не возвращает ничего, то после returns пишется nothing.
Code
set gg_trg_Probe = CreateTrigger( )

set - оператор-аналог действия "Задать переменную" в триггерах на Jass. Синтаксис: set переменная = значение. Отсюда вывод, что название переменной - gg_trg_Probe, а её значение - CreateTrigger(), т.е. новый триггер (функции мы разберём подробнее позднее).
P.S.: Пробелы в скобках - пережиток триггеров, лучше их убирать.
Code
call TriggerAddAction( gg_trg_Probe, function Trig_Probe_Actions )

А это наглядный пример того, как надо вызывать функцию.
call - оператор, служащий для вызова функции.
TriggerAddAction - название функции. В скобках надо перечислить в заданном порядке все принимаемые функцией аргументы.
Code
endfunction

endfunction - оператор, определяющий конец функции.
Code
//====================================================================

// - специальные символы, после которых пишется комментарий. Он не влияет на работу триггера и не проходит проверку парсером.
Code
function Trig_Probe_Actions takes nothing returns nothing  
endfunction

Эта функция предназначена для действий триггера. У нас действий нет, поэтому она будет пустой.
Категория: Jass | Добавил: Pirat9629 (15.04.2011)
Просмотров: 1624 | Теги: Учебник jass | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]