Переведенные команды скрипта с примерами

Переведенные команды скрипта с примерами

Прикрепляет внешний скрипт. Данная команда делает внешний скрипт как бы внутренним. Для того чтобы не писать команды в самой игре их можно написать в файле и потом с помощью данной команды прикрепить.

Пример - при создании юнита:

Содержимое файла может содержать обработку события use т.е. воздействие с юнитом при нажатии клавиши Е. Таким образом после прикрепления файла созданный юнит будет реагировать на клавишу Е. Все что будет написано в скрипте s.s2s станет частью юнита.

Скрипты можно прикреплять ко всем объектам. Например

$id=create("object",193,$x,$y); addscript "unit",$id,"sys/script/s.s2s";

У команды три параметра.1 - тип объекта (объект, предмет, юнит, инфо соответственно "object", "item","unit","info")2 - идентификатор к чему присоединяем скрипт.3 - Путь к скрипту относительно папки с модом.

create "Class", Type [, X, Z] [, Amount]

Команда для создания на карте предметов, объектов юнитов, инфо.

$id=create("object",193,$x,$y);Создает объект 193 и располагает его на карте с координатами $x,$y.

Функция возвращает идентификатор созданного и помещает его в переменную $id. Переменную можно назвать по другому.Переменную нужно обязательно указывать, иначе будет ошибка.

Чаще всего используют присваивание к переменной для того чтобы обратиться к созданному и что-либо с ним сделать.

Для создания нескольких предметов или объектов пользуются:

$id=create("item",66,0,0,20); // создает 20 печеников$id=create("object",193,$x,$y,2); // создает 2 бамбуковые башни (в этом нет необходимости и практической значимости)

currentid

Команда возвращает идентификатор объекта, предмета, юнита в котором обрабатывается скрипт.

Например для того, чтобы присвоить скрипт какому либо объекту при загрузки карты используют событие on:load и в нем прописывают команду присваивания скрипта addscript. Одним из параметров команды является идентификатор объекта, т.е. к кому именно на карте нужно присвоить скрипт. Строка $id=currentid(); присваивает переменной $id значение идентификатора объекта в котором было вызвано данное событие on:load

on:load

msg "Message" [,Font] [,Duration]

Данная команда выводит текстовое сообщение на слева на экран.

msg "Всем привет!",3,3000;

Выводит сообщение "Всем привет!" шрифтом 3 на 3 сек.

Команду можно вызывать без второго и третьего параметра. Тогда значения будут по умолчанию. шрифт 0 на 3 сек.

msg "Всем привет!";

damage "Class", ID, Value

Группа: objects Данная команда может применяться в трех различных случаях. Во всех трех она указывает наносимый урон.

В первом случае можно рассмотреть скрипт описание предмета стрелы:

Здесь damage указывает какое количество урона наносит стрела если попадает в объект, предмет, юнита.

Рассмотрим скрипт описание предмета лук:

name=Длинный лук . damage=1.1 .

Здесь damage - это множитель, на который домножается базовое значение урона наносимого боеприпасом: у лука - 1, у длинного лука - 1.1, у золотого лука - 1.9

И третий способ применения команды, это явное указание какому объекту нужно нанести урон.

damage "Class", ID, damage_value;

Class - класс объекта, которому наносится урон ( object, unit, item ); ID - идентификатор этого объекта на карте; damage_value - значение наносимого урона.

distance "Class", ID, "Class"

Возвращает число, расстояние между объектами.Пример:

$a=distance("object",$id1,"object",$id2) // Переменная $a будет равна расстоянию между объектом с идентификатором $id1 и объектом с идентификатором $id2$a=distance("object",$id1,"unit",1) // Переменная $a будет равна расстоянию между объектом с идентификатором $id1 и игроком (Для определенния дистанции между игроком и другими объектами имеется специальная функция playerdistance)$a=distance("object",$id1,"info",$id2) // Переменная $a будет равна расстоянию между объектом с идентификатором $id1 и инфо с идентификатором $id2

Команды вывода текстовых окон.

add "Text" Группа: interface

Добавляет строку в текстовый буфер.

clear Группа: interface

Очищает текстовый буфер

msgbox "Title", ["Text"] Группа: interface

Показывает окно с текстом. Title - заголовок окна; Text - текст выводимый в окне;Если параметр Text не указан, то выводится содержимое текстового буфера.

Пример:// Скрипт подвешенный на отмычку из первой карты Adventureon:drop Вызываемые события методом on

on:Event Categories: basic

C помощью команды "on", вы выбираете секцию скрипта выполнятся будет только в этом событии.

on:start //на старт карты (не загрузку игры сохраненной а именно на начало новой игры) выведет сообщение

Вообще встречается повсеместно, так что пример можете найти практически в любом скриптовом файле.

events //собственно события start - старт новой карты load - загрузка или старт новой presave - перед сохранением postsave - послесохранения create - на создание (обьекта,юнита. ) но не в случае с загрузкой а именно на создание use - на кнопку использования(е), или в случае с вещами на кнопку использовать в инвентаре hit - на любые повреждения нанесенные игроком(нужно оговорится, сачок к примеру бьет на 0 , но это тоже считается) фактически - на удар kill - когда уничтоженно/убито collect - когда вещь подобранна с помощью(е) хотя я понимаю что в случае добавления с помощь юскрипта чего то в инвентарь событие это же drop - когда выброшена вещь trigger - когда условия инфо триггера совпадают(триггер активируется) changeday - во время смены дня(00:00 часов) sleep - во время сна dig -когда игрок использует лопату(роет) (behaviour=spade) fish - когда использует удочку(ловит рыбу) (behaviour=fishingrod) useground - когда использует землю usesea - когда использует пресную воду\море impact - столкновение метательного\огнестрельного снаряда с обьектом timer - когда таймер окончился(0) getoff - слезть с "ездабельного =)" животного или с техники attack1 - если вещь в руке используется с помощью левой кнопки attack2 - если вещь в руке используется с помощью правой кнопки ai_attack - когда игрок атакован враждебным юнитом ai_idle1 - когда анимация 1 для юнитов проигрывается ai_idle2 - когда анимация 2 для юнитов проигрывается ai_idle3 - когда анимация 3 для юнитов проигрывается nodeXXXX - когда юнит двигающийся по пути достигает точки пути(инфо) с ID XXXX reach - когда юнит двигающийся по пути достигает инфо(как правило это начало\конец(если зациклен) пути) selectplace - когда кликаем на землю в режиме размещения cracklock_success - когда успешно ломаем замок cracklock_failure - когда не получается сломать замок build_setup - когда здание выбрано из списка задний build_start - когда установлено место постройки build_finish - когда здание построено keyhitXX - когда клавиша скрипта нажата. (only in the script from game.inf) keydownXX - когда удерживается скриптовая клавиша (only in the script from game.inf) keyreleaseXX - когда отпущенна(именно момент отпускания) скрипт клавиша (only in the script from game.inf) spawn - когда создается у spawn-info(спаунится) addstate - на добавление статуса freestate - на удаление статуса seperate - when an attached item is hit edset - когда объект размещен в редакторе inhand - when an item is drawn noammo - на попытку стрельбы\метания без патронов

skipevent //пропуск события(выход из него) Categories: basic

для некоторых событий, Stranded II автоматически предпринимает действия в случае вашего с ними взаимодейтсвия. к примеру вещи лежащие на острове(камни, листья, палки т.д.), их всегда можно будет подобрать когда вы нажмете использовать - даже если это не описывается в скрипте. Skipevent позволяет миновать,отключить,пропустить , простые функции для некоторых событий.команда может быть помещена где угодно в скобках события.