steed/doc/modules/xact.txt
2011-02-28 09:04:59 +00:00

59 lines
2.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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