Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Warcraft [0]
Тактика [1]
Картостроение [5]
Прочее [6]
Starcraft [0]
World of Warcraft [0]
Diablo [0]
Мини-чат
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0


[ Кто нас сегодня посетил ]

Наш опрос
Вы ждете Diablo 3?
Всего ответов: 21
Главная » Статьи » Картостроение

[СТАТЬЯ] Jass для начинающих.
Я не мастер писать статьи, но изложу следующее.
1. Локальные и глобальные переменные.
2. Условия
3. Циклы
4. Из чего сделан триггер
5. Полезная информация

Прежде чем работать на jass вам необходимо триггер конвертировать в текст. Сделать это можно следующим путем:
Правка/Конвертировать в текст.
Локальные и глобальные переменные.
Объясню простым языком. Глобальные переменные используются во всех триггерах и создаются в модуле триггеров "Переменные". Выбираете тот тип, который вам нужен, массив это будет или нет, называете ее и создаете переменную.
Локальные переменные, создаются внутри каждого триггера и действуют только в нем. Локальная переменная с одинаковым типом и названием в разных триггерах не относятся друг к другу, то есть они будут независимы друг от друга.
Теперь разберем, как объявляются (создаются) локальные переменные в триггере на jass.
local integer i = 0
local unit u

Обратите внимание на то, что я сразу присвоил значение целочисленной переменной равной нулю.
А с юнитом я так не делал. Дело все в том, что целочисленные и реальные переменные должны присваиваться сразу какому-нибудь значению. Будто, то будет 0,5,110. А с юнитом и остальными типами переменных мы так не поступаем.
На jass'е перед глобальными переменными ставится следующие: udg_(ваша глобальная переменная).
На этом о глабальных и локальных переменных я пока закончу и перейлу к следующему вопросу.
Условия.
Основной макет при создании каких-либо условий в триггере осуществляется следующим путем.
if (условие)
then (действи, если условия верны)
else (действия, если условия не верны)
endif (конец)
Во общем все.
Циклы.
В качестве примера рассмотрим следующий код:
loop (объявление цикла)
exitwhen i > 11 (цикл выполняется, пока условие верно)
call AdjustPlayerStateBJ( 1, Player(i), PLAYER_STATE_RESOURCE_GOLD ) (действия в цикле) В данном случае, оно одно и выполняет функцию добавление золота каждому игроку.
set i = i + 1 (вот эта вещь обязательна, иначе будет зацикливание) (шаг цикла)
endloop (конец цикла)
Обратите внимание на переменную i. Одна и таже переменная должна участвовать в условии цикла и в шаге цикла.
Из чего сделан триггер.
Теперь посмотри из чего состоит триггер на jass.
К примеру получим следующий код:
Code

function Trig_Every_gold_Actions takes nothing returns nothing  
local integer i = 0  
loop  
exitwhen i > 11  
call AdjustPlayerStateBJ( 1, Player(i), PLAYER_STATE_RESOURCE_GOLD )  
set i = i + 1  
endloop  
set i = 0  
endfunction  

//=====================================================================  
function InitTrig_Every_gold takes nothing returns nothing  
set gg_trg_Every_gold = CreateTrigger( )  
call TriggerRegisterTimerEventPeriodic( gg_trg_Every_gold, 1.00 )  
call TriggerAddAction( gg_trg_Every_gold, function Trig_Every_gold_Actions )  
endfunction  
Стоить помнить, что сам триггер то же является переменной.  
Что происходит в триггере:  
set gg_trg_Every_gold = CreateTrigger( ) - эта строка отвечает за создание самого триггера и его составляющих.  
call TriggerRegisterTimerEventPeriodic( gg_trg_Every_gold, 1.00 ) - то что называется, событиями.  
call TriggerAddAction( gg_trg_Every_gold, function Trig_Every_gold_Actions ) - добавлению триггеру действий.

Обратите внимание на название gg_trg_Every_gold- триггер переменная, function Trig_Every_gold_Actions - функция выполнения действий триггера. Начинающим я рекомендую в начале писать на GUI, а потом переводить все в jass.
Полезная информация
Здесь я хочу рассказать о том, что прежде всего при создании переменных необходимо обнулять их значения и лелается это следующим образом:
set u = null (любые другие типы переменных)
set i = 0 (если переменная реальная или целочисленная)
Следует помнить еще одно: при работе с jass-кодом необходимо, как можно чаще сохранятся.
Так как могут быть вылеты редактора и вы можете потерять не сохраненные данные.
Данная статья будет со временем будет обновляться.
Желаю удачи в изучении jass'а!
Категория: Картостроение | Добавил: BLooDWoLf (27.12.2010)
Просмотров: 318
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Случайные обои
Случайный файл
[28.10.2010][Модели]
Тралл(RoC) (0)
Новые файлы
[12.12.2010][RPG]
Сталкер - Война... (0)
[08.11.2010][Модели]
Спецназ (0)
[08.11.2010][RPG]
Diablo 3: Альте... (0)
[07.11.2010][Иконки]
Пак иконок Warh... (0)
[07.11.2010][Модели]
Привратник ада(... (0)
Copyright (c) 2010. BlizFun. При копировании материала просьба указывать источник.
Используются технологии uCoz | MMS