Назад

Переменные

Автор: nomn: Дата: 07.09.2010

[COLOR="Indigo"]Небольшой обзорчик по переменным, а именно, по тем,
что чаще всего используются.

Начнем.[/COLOR]

1. Персонаж.

[COLOR="Indigo"]Если нам необходимо (как пример) чтоб персонаж
мог поговорить с НПСом 1 раз (другими словами пройти квест только один раз, или первую ступень квеста) то необходимо присваивать постоянные чар переменные. Как они выглядят:[/COLOR]


// Задаем переменную
set my_name_var, 1;

// проверяем
if (my_name_var == 1) { ... }


[COLOR="Indigo"]Переменная может принимать только числовые значения.

Если нам необходимо временно выделить персонажа, или наделить его возможностью говорить с каким-нибудь НПСом (пример: разрешить персонажу пользоваться премиум-варпером до следующего входа в игру) то нужно вешать временные чар. переменные:[/COLOR]


// Задаем переменную
set @my_name_var, 1;

// проверяем
if (@my_name_var == 1) { ... }


[COLOR="Indigo"]Такая переменная сотрется из базы сразу же, как чар покинул игру.

Если же мы хотим, чтоб только один персонаж со всего аккаунта мог пройти скажем определенный квест, то нужно вешать перманентную аккаунт переменную:[/COLOR]


// Задаем переменную
set #my_name_var, 1;

// проверяем
if (#my_name_var == 1) { ... }


Переменная действует на всех персонажей данного аккаунта.

2. Глобальные переменные:
[COLOR="Indigo"]
К примеру мы хотим объявить о начале эвента. Эвент НПС может стоять всегда в пронтере, но пускать только в определенное время. Как же это сделать? С помощью глобальной переменной. Пример:
[/COLOR]

OnClock2100: // В 21:00
set $event_status, 1; // задаем глоб. переменную =1
end;


В самом НПСе, в самом начале:


if ($event_status != 1) {mes "Прости, эвент не начался"; close; }


[COLOR="#4b0082"]Думаю все понятно.

Вот ещё пример использования глобальных переменных: к примеру нам нужно задавать случайное имя монстра. Делается это следующим образом:[/COLOR]


set $ranom, rand(1,3); // присвоить переменной $ranom значение от 1 до 3, причем случайно выбрать.

if ($ranom == 1) {set $mobname$, "Пчелка"; } // если переменная = 1
if ($ranom == 2) {set $mobname$, "Оса"; // если = 2
} else { set $mobname$, "Шмель"; } // иначе (т.е. если = 3)

monster "prontera",192,168,""+$mobname$+"",1002,1"; // создаем моба с нашим случайным именем



Пока всё. Это не гайд по переменным, т.к. тут описана лишь малая часть их. Но не всё сразу. Все вопросы по переменным задавайте здесь. Надеюсь вам понадобиться это описание.

Автор: : Дата: 01.01.1970