====== Модуль xAct ====== ^ Подключение | require %%"%%xact%%"%% | ^ Тип | расширение кода | ^ Зависимости | нет | ===== Описание ===== Модуль позволяет делать ссылки на объекты из других объектов, реакций и life методов в форме: {объект(параметры):текст}. Начиная с версии 1.2.2 (instead_version "1.2.2") символ разделителя задается stead.delim и по-умолчанию содержит '|'. То-есть формат записи выглядит так: {объект(параметры)|текст}. Где 'объект' это сам объект или атрибут nam объекта. При этом, чтобы ссылка работала, объект должен присутствовать в сцене.(Начиная с 1.2.2 -- не обязательно). (параметры) -- необязательные параметры в виде: (текст, текст, ...) 'текст' -- то, как ссылка выглядит в игре для игрока. Модуль содержит в себе функцию xact, которая создает объект - простейшую реакцию. Первый параметр функции -- имя, второй -- реакция, которая может быть строкой, функцией или code. Модуль содержит в себе реализацию комнаты с расширенным описанием: xroom. Если в такой комнате задать атрибут xdsc, то он будет выведен в области описаний объектов. Функция xdsc позволяет более гибко управлять выводом текста в области предметов. См. примеры. ===== Примеры использования ===== main = room { forcedsc = true; dsc = [[От автора. Эту игру я писал очень {note1|долго}.]]; obj = { xact('note1', [[Больше 10 лет.]]); } } main = room { forcedsc = true; dsc = [[Я в комнате.]]; xdsc = [[ Я вижу {apple|яблоко} и {knife|нож}. ]]; other = [[ Еще здесь лежат {chain|цепь} и {tool|пила}.]]; obj = { xdsc(), -- 'xdsc method by default' xdsc 'other', 'apple', 'knife', 'chain', 'tool', } } main = xroom { forcedsc = true; dsc = [[Я в комнате.]]; xdsc = [[ Я вижу {apple|яблоко} и {knife|нож}. ]]; obj = { 'apple', 'knife', 'chain', 'tool', } }