Как я могу обрабатывать произвольный текст как «существительные» в Inform 7? - PullRequest
7 голосов
/ 07 мая 2010

В Inform я хотел бы иметь возможность создать новое действие и иметь возможность работать с текстовым текстом.

Я могу легко создать новое действие, которое будет работать с существующими вещами.

Finding is an action with past participle found, applying to one thing.
Understand "Find [something]" as finding.
Carry out finding:
say "You find [the noun]."

Но это работает только с предметами, существующими в игровом мире. Например, если я попытаюсь «найти fdsljk», произойдет сбой, потому что я не создал «fdsljk».

Я хотел бы иметь возможность "найти fdsljk", а затем иметь возможность получить этот дополнительный текст и ответить им ... что-то вроде "You find the fdsljk."

Я думал, что-то вроде

A foo is a kind of value.
Finding is an action with past participle found, applying to one foo.
Understand "Find [something]" as finding.
Carry out finding:
    say "You find [the foo]."

может быть близко ... но это не работает. Я получаю сообщение об ошибке:

Вы написали «сказать:« Вы находите [foo]. »», И, в частности, «foo»: но это попросило сказать что-то, что нельзя сказать, или, скорее, напечатать. Хотя эта проблема может возникать, когда вы используете сложные текстовые замены, которые входят в различные формы в зависимости от используемых значений, гораздо чаще это означает только то, что вы пытались использовать замещенное значение (например, в «скажем», циферблат читает [V]. "') Такого рода, который нельзя распечатать. Например, если V - это число или фрагмент текста, проблем нет : но если V - тема для синтаксического анализа, скажем, запись в столбце «темы» таблицы, то эта проблема будет возникает.

Курсив мой, и выделите ключ ... Я думаю, это должно быть выполнимо, но я иду по неверному пути. Улики?

1 Ответ

5 голосов
/ 07 мая 2010

Опять с оговоркой, что мой опыт работы с Inform 7 ограничен вашим предыдущим вопросом; -) ... Я думаю, вам понадобится немного [text], а не внутриигровая [thing]?

Finding is an action applying to one topic.
Understand "Find [text]" as finding.
Carry out finding:
    say "You find [the topic understood]."
...