Содержание   <<< Назад   Далее >>>

Lua скрипты игрового режима



room

Глобальный объект room связан с комнатой (комната персонажа), относительно которой запускается скрипт. У комнаты есть свойства (стейты). Доступ к свойствам осуществляется через точку. Список свойств(стейтов) находится в файле, указанном в качестве параметра переменной RoomStatesFile, в настройках мира.

Список методов :
object|nil AddObject("идентификатор прототипа")
Назначение:
Создает новый объект и помещает его в комнату.
Параметры:
"идентификатор прототипа" - объект, который нужно создать и добавить в комнату.
Возвращаемые значения:
object - новый объект, который успешно создался и был добавлен в комнату.
nil - объект не был создан (ошибка в идентификаторе прототипа).


mob|nil AddMob("идентификатор прототипа")
Назначение:
Создает нового моба и помещает его в комнату.
Параметры:
"идентификатор прототипа" - моб, который нужно создать и добавить в комнату.
Возвращаемые значения:
mob - новый моб, который успешно создался и был добавлен в комнату.
nil - моб не был создан (ошибка в идентификаторе прототипа).


object|nil AddAloneObject("идентификатор прототипа")
Назначение:
Создает новый объект и помещает его в комнату, при условии, что такого-же объекта там нет.
Параметры:
"идентификатор прототипа" - объект, который нужно создать и добавить в комнату.
Возвращаемые значения:
object - новый объект, который успешно создался и был добавлен в комнату.
nil - объект не был создан (ошибка в идентификаторе прототипа) или такой объект в комнате есть.


mob|nil AddAloneMob("идентификатор прототипа")
Назначение:
Создает нового моба и помещает его в комнату, при условии, что такого-же моба там нет.
Параметры:
"идентификатор прототипа" - моб, который нужно создать и добавить в комнату.
Возвращаемые значения:
mob - новый моб, который успешно создался и был добавлен в комнату.
nil - моб не был создан (ошибка в идентификаторе прототипа) или такой моб в комнате есть.


object|mob|nil Add(prototype)
Назначение:
Создает новую сущность данного прототипа и помещает ее в комнату.
Параметры:
prototype - прототип, сущность которого нужно создать и добавить в комнату.
Возвращаемые значения:
object|mob - сущность создалась и была добавлена в комнату.
nil - сущность не была создана (ошибка).


bool Add(mob|object)
Назначение:
Помещает моба или объект в комнату. При этом сущность убирается из текущей комнаты, если он в комнате или из группы типа 'owner', если он в группе.
Параметры:
mob|object - сущность которую нужно добавить в комнату.
Возвращаемые значения:
true - сущность успешно была добавлена в комнату.
false - сущность не была добавлена в комнату (например группа 'owner' не согласилась 'отдать' сущность).


bool IsExist(prototype)
Назначение:
Определяет наличие в комнате сущности данного прототипа.
Параметры:
prototype - прототип, сущность которого, которую нужно проверить на нахождение в комнате.
Возвращаемые значения:
true - сущность прототипа находится в комнате.
false - сущность прототипа в комнате отсутствует.


object | nil FindObject("строка поиска")
Назначение:
Осуществляет поиск объекта в комнате. В качестве параметра - строка, которая используется как ключ при поиске.
Параметры:
"строка поиска" - строка, по которой нужно искать объект в комнате.
Возвращаемые значения:
object - объект, если поиск прошел удачно.
nil - если объект не был найден.


mob | nil FindMob("строка поиска")
Назначение:
Осуществляет поиск моба в комнате. В качестве параметра - строка, которая используется как ключ при поиске.
Параметры:
"строка поиска" - строка, по которой нужно искать моба в комнате.
Возвращаемые значения:
mob - моб, если поиск прошел удачно.
nil - если моб не был найден.


actor | nil FindActor("строка поиска")
Назначение:
Осуществляет поиск персонажа в комнате. В качестве параметра - строка, которая используется как ключ при поиске.
Параметры:
"строка поиска" - строка, по которой нужно искать персонажа в комнате.
Возвращаемые значения:
actor - персонаж, если поиск прошел удачно.
nil - если персонаж не был найден.


void RunMobsMethod("имя метода", ...)
Назначение:
Осуществляет запуска заданного метода у всех мобов в комнате. В метод могут передаваться любое количество параметров.
Параметры:
"имя метода" - строка, имя метода, который необходимо запустить.


void RunObjectsMethod("имя метода", ...)
Назначение:
Осуществляет запуска заданного метода у всех объектов в комнате. В метод могут передаваться любое количество параметров.
Параметры:
"имя метода" - строка, имя метода, который необходимо запустить.


any RunMethod("идентификатор метода", ...)
Назначение:
Запускает скрипт метода для комнаты.
Параметры:
"идентификатор метода" - метод, который нужно запустить.
... - запуск метода может сопровождаться любым количеством параметров, которые пишутся через запятую. Доступ к параметрам из скрипта метода осуществляется с помощью методов params() и param(index).
Возвращаемые значения:
actor|room|object|mob|string|nil - значение любого типа, которое может вернуть метод. По умолчанию или в случае ошибки возвращается nil.


void Send("текстовая строка")
Назначение:
Отправляет всем персонажам в комнате заданную строку текста.
Параметры:
"текстовая строка" - строка, которую нужно отправить. Все скрипты динамического описания будут работать со стейтами комнаты.


void SendEx(actor|mob|object, "текстовая строка")
Назначение:
Отправляет всем персонажам в комнате заданную строку текста. Все скрипты динамического описания будут работать со стейтами активного объекта, указанного первым параметром.
Параметры:
actor|mob|object - активный объект, относительно которого будут работать скрипты динамического описания.
"текстовая строка" - строка, которую нужно отправить.


[object] GetObjects()
Назначение:
Возвращает массив объектов, которые находятся в комнате.
Параметры:
Нет параметров.
Возвращаемые значения:
[object] - массив объектов в комнате.


[mob] GetMobs()
Назначение:
Возвращает массив мобов, которые находятся в комнате.
Параметры:
Нет параметров.
Возвращаемые значения:
[mob] - массив мобов в комнате.


Содержание   <<< Назад   Далее >>>