gpt4 book ai didi

Inform7:我把东西交给 Actor 后如何让他们检查

转载 作者:行者123 更新时间:2023-12-04 19:28:19 25 4
gpt4 key购买 nike

我试图让 Actor 在玩家角色给他们之后检查一些东西。如果我这样说:

After giving a book to Tom:
try Tom examining the book.

似乎整个事情都被完全忽略了。我把书交给汤姆,他没有检查。我什至创建了一个报告规则(
Report Tom examining book:
say "1.";

) 看看他是否确实检查过它,但它并没有告诉我他确实进行了检查,但这也不起作用。

基本上我想做的就是把这本书给他。他不自觉地(最好是默默地)检查这本书,然后在检查这本书之后他会说“多棒的书!”

感谢您抽出时间来回答。如果这已经得到回答,我很抱歉,我看了看但没有看到任何类似的东西。

最佳答案

这个问题有两个部分:让汤姆拿起这本书,让汤姆说“真是一本了不起的书!”然后。

1. 让汤姆拿书

当前After规则从不适用,因为汤姆不拿书(行动被“阻止给予”规则阻止)。

解决此问题的最简单方法是更换 After带有 Instead 的规则规则,因此使完整的陈述如下:

Instead of giving a book to Tom:
Say "You hand over [the book] to [Tom].";
Now tom carries the book;
try Tom examining the book.

这是有效的,但绕过 give 命令并不是最优雅的做事方式。相反,我们可以完全删除阻止向人们提供东西的规则,如下所示:
The block giving rule is not listed in any rulebook.
After giving a book to Tom:
say "You give [the book] to [Tom].";
try Tom examining the book.

(我们必须描述我们把书给汤姆,因为遵循 After giving 规则阻止了 Report giving 规则生效。我们仍然可以通过使用短语 Report giving 来遵循 continue the action 规则,但是我们描述了给予汤姆检查后把书交给汤姆)。

但这具有允许您向汤姆提供任何东西的效果,这可能不是我们想要的。我们可以通过做这样的事情来解决这个问题:
This is the partial block giving rule:
if the noun is the book and the second noun is tom:
continue the action;
otherwise:
say "[The second noun] [don't] seem interested.";
stop the action.

The partial block giving rule is listed instead of the block giving rule in the check giving it to rules.

这允许您只将书交给汤姆,其他任何人都不能。如果您希望这种确切的情况经常发生在不同的人和不同的对象上,那么您可以进一步定义一个关系(例如,“感兴趣”)以确定某人是否会接受一个对象,并将规则更改为只允许你给人们他们感兴趣的对象。

2. 让汤姆说“多棒的书!”

现在,我们有几种方法可以让汤姆说出我们想让他说的话。我们可以做出的最明显的改变是让汤姆不实际检查这本书。我们可以简单地用这样的东西替换该行:
Say "[Tom] looks over [the book]. 'Wow,' says [Tom], 'what a marvelous book!'".

但是,假设我们仍然希望 Tom 实际检查这本书(如果想稍后检查这本书是否已被检查,或者 Tom 是否已检查某些内容等,这将很有帮助)。然后我们可以做这样的事情:
Try silently tom examining the book;
Say "[Tom] looks over [the book]. 'Wow,' says [Tom], 'what a marvelous book!'"

静默尝试只是防止操作产生任何文本(除非它失败)。我们也可以使用报告规则而不是静默尝试,它更优雅一点,看起来像这样:
Report tom examining the book:
Say "[Tom] looks over [the book]. 'Wow,' says [Tom], 'what a marvelous book!'";
stop the action.

关于Inform7:我把东西交给 Actor 后如何让他们检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49412936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com