1379
правок
Изменения
Перейти к навигации
Перейти к поиску
м
====typ / тип====
====str / строка====
====num / число====
====obj / объект====
====key / ключ====
====pos / поз====
====loc / лок====
====cls / класс====
====ctg / категория====
====lex / лексема====
====pat / шаблон====
====item / элемент====
====title / наименование====
====menu_name / заголовок_меню====
====Сообщения парсера====
=====is_not_recognized=====
=====number_is_expected=====
=====unknown_word=====
=====incorrect_form=====
=====object_not_found=====
=====unusable_object=====
=====too_difficult_statement=====
=====object_select=====
=====сan_not_execute=====
=====no_reply=====
→Предопределенные свойства
==Предопределенные свойства==
[[Изображение:TOM_prop.gif]]
===Поля Специальные поля значений===
Для любого [[TOM: язык программирования#Типы данных|типа данных]] возможен доступ к дополнительным полям.
(Но не для всех типов данных эти поля имеют смысл).
''(только для чтения)''
Работает для всех типов данных.
''(только для чтения)''
''(только для чтения)''
''(только для чтения)''
Возвращает "чистый" объект без примеси количества и положения.
''(только для чтения)''
''(только для чтения)''
Для прочих значений .pos возвращает null.
===Свойства Специальные свойства объектов=======name / имя====
Возвращает программное имя объекта.
''(только для чтения)''
Возвращает локацию, в которой находится объект.
Синтаксис: O.cls
Где: C - объект категории class.
Синтаксис: O.ctg
''(только для чтения)''
''(только для чтения)''
Cвойство используется для установки [[TOM: язык программирования#Шаблоны|парсерных шаблонов]] для объектов категорий action, phrase и event.
Количество шаблонов для одного объекта не ограничено.
}
Свойство item предоставляет доступ к [[TOM: язык программирования#Элементы объекта|вложенным объектам]].
Сообщения парсера хранятся в предопределенных глобальных переменных.
ТОМ инициализирует их при старте, затем они могут быть переопределены в любое время. Более того, свойства с этими же именами могут быть прописаны для актера, для действия или фразы, а также для объекта.
Для парсерных сообщений зарезервированы следующие имена:
*Это сообщение парсер выводит когда введенную команду не удалось сопоставить ни с одним шаблоном действий или фраз.
> подумай о сыре
Это предложение непонятно!
*Это сообщение выводится когда в шаблоне команды указана числовая переменная, а игрок ввел слово. Например, ''первый'' вместо 1, или ''пара'' вместо 2.
> возьми несколько горошин
Необходимо указать число.
*Это сообщение выводится когда в команде использовано слово, не соответствующие ни одному объекту в игре, или написанное с ошибками.
> возьми горохи из мешка
Слово <горохи> мне неизвестно.
*Это сообщение выводится когда слово в команде стоит в форме, не соответствующей форме, заданной в шаблоне команды.
> возьми горохом из мешка
"горохом" - слово в неверной форме.
*Это сообщение выводится когда найденный парсером объект находится вне текущей локации, при том что в шаблоне команды указано его обязательное присутствие.
> осмотри филина
Филин отсутствует.
* Это сообщение выводится когда найденный парсером объект не обладает свойством, указанном в шаблоне, или не принадлежит к классу, указанному в шаблоне.
> брось крота
Дядюшка-крот не годится для этого действия.
*Это сообщение выводится в случае, если парсинг команды требует перебора вариантов, количество которых превышает разумные пределы.
*Это сообщение выводится при устранении неопределенности перед списком неоднозначно распознанных объектов:
> взять еду
сушеные горошины в траве или малина на кустах;
*Это сообщение выводится когда введенная команда распознана, но для актера не задан метод для ее выполнения.
> Крот, осмотри мешок
Побойтесь бога! Крот слеп от рождения!
*Это сообщение выводится когда введенная строка распознана как фраза, но никто из присутствующих в локации на неё не ответил.
> расскажите мне про лес!