7

在 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”,然后能够获取额外的文本并做出回应……就像“你找到了 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]."

可能很接近......但它不起作用。我收到一条错误消息:

你写了 'say "You find [the foo]."' ,特别是 'the foo':但这要求说一些不能说的东西,或者更确切地说,是打印出来的。尽管当您使用复杂的文本替换时可能会出现此问题,这些替换形式取决于所使用的值的种类,但更多情况下这意味着您尝试使用替换值(例如,在“说”表盘读取[V]."') 是一种无法打印出来的类型。例如,如果 V 是一个数字或一段文本,则没有问题:但如果 V 是一个解析主题,例如表格的“主题”列中的条目,那么就会出现这个问题。

斜体是我的,并突出了关键......我认为这应该是可行的,但我走错了路。线索?

4

1 回答 1

5

再次声明,我对 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]."
于 2010-05-07T15:42:56.277 回答