问题标签 [inform7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
125 浏览

inform7 - 可能的房间列表而不是可能的方向

我尝试列出用户可能去往的可能方向。但是对于故事的基调,最好不要说“你可以去南北”而是“你可以去浴室和厨房”。

我找到了帽子代码,但它只显示了方向。

任何想法?

0 投票
1 回答
202 浏览

inform7 - 在位置描述中通知 7 [名词]

我试图用“陌生人”代替[名词]。在这段代码中:

列出不起眼的项目的规则:什么都不做。

在描述位置时,我看到的是“向上”而不是“陌生人”。但是在攻击和之后remove the noun from play;,我看到“什么都没有” - 好吧。

为什么会这样?

0 投票
1 回答
90 浏览

inform7 - 在 Inform7 中锁门在一种情况下有效,但在另一种情况下无效

希望有人在此标签上活跃,我将在此处发布有关 Inform7 的问题。我们目前在大学里使用这种语言来接触小组中拼接项目和任务的结构。

当前的任务是在按下按钮时解锁门并在转动一圈后将其关闭。我使用的代码如下:

我使用 doorOpen 作为属性来检查门是否打开。现在的问题是我可以按下按钮,进入打开的房间,它说门正在关闭,但我可以毫无问题地走出房间,而且似乎从现在开始它已经解锁了。

另一方面,我还有其他代码:

TuerSiT 是一扇门。它位于 R024 以南,Flur005R 以北。它被锁定。

Sicherheitsausweis 解锁 TuerSiT。

那里的now doorname is locked作品完全没问题。

有什么我做错了吗?我还尝试创建隐藏的钥匙来解锁,因为那是我认为问题所在,但似乎我无法锁门。

任何帮助深表感谢!

0 投票
1 回答
60 浏览

inform7 - Inform7中规则中的同义词不会改变?

为了使当前包含特殊门的 Inform7 项目中的代码更具可读性,我决定创建各种门和作为门的一部分的东西,以回溯要打开和关闭的门。
背景:一扇门只有在之前被一个叫做 Mobitab 的东西操纵然后被安全通行证解锁的情况下才能打开。所以我创建了一种叫做 DoorpanelSM 的东西,它有一个属性被操纵(通常为 0)和一个属性被激活(通常为 0)。我的门操作和解锁代码如下所示:

注意:问题进一步缩小。编辑一直到底部!

只有一扇门才能发挥作用。但是,如果我使用两个或更多门,则定义的门板的属性似乎是全局的。我确信这now activated of the currentPanel is 0;不会改变 currentPanel 的属性,而是声明了一个全局变量,该变量在以下每个条件下都被要求。我完全无法找到正确设置和获取我要求的面板值的方法。

显示问题的小测试程序(包括上述):

想法是执行以下操作:

使用 Securitypass
使用 Mobitab
使用 Mobitab 和 TPTSM1 //这是第一个门板;操作门
使用带有 TPTSM1 的 Securitypass //打开门
向西
使用带有 TPTSM2 的 Mobitab //这将是第二个门板(向西北);表示面板已经被操纵。

而且我不知道为什么......任何帮助都非常感谢!

编辑:进一步调查,我使用了该showme命令,发现变量在第一扇门上已正确更改,并且它们都正确为 0。但是据说尽管操纵值是 0,但面板已经被操纵。也许是问题是连接到currentPanel 的东西吗?
更多编辑:实际上它看起来就像那样...... currentPanel 似乎总是 TPTSM1。我的理解是,每次对任何门板执行规则时,它都会相应地改变。我将如何更改代码来实现这一点?
更多编辑:如上所述(看起来)currentPanel操作/解锁后似乎已修复。然而,showme 都没有看到这个东西,我也不能在代码的其他地方使用它。我仅从仅在函数中作为参数知道的参数中知道这种行为。所以这让我更加困惑......

0 投票
1 回答
52 浏览

inform7 - Inform7 中另一个人的全球可见性?

在我正在为大学做的一个项目的一部分中,有人要求一个人能够使用一种对讲机来引导另一个人。然而,这需要某种全局访问权限来访问应该能够像那样控制的人。人们可能会执行以下操作之一:

  • 每次他要求另一个角色做某事时交换玩家,执行动作并返回
  • 使用对讲机改变角色的观点(这在我看来不是一种直观的游戏方式)
  • 不知何故让另一个角色在每个房间都可见(这将是我最喜欢的那个)

不幸的是,我在文档中找不到类似的东西(可见性仅在一个房间内照明,可达性仅打开/从某物中取出某物)。我想到的另一种方法是保存两者的起源房间,将它们放在一个密室中,c1然后要求c2尝试做某事,两者都放在各自的位置,要求的动作由c2执行。
但是,将其写为之前的规则是行不通的,因为它已经被默认检查规则取消了。另一方面,我不能写:

因为那是一般的。
欢迎任何想法、方法或解决方案!

0 投票
1 回答
70 浏览

action - 如何更改 Inform7 中存储的动作名词或整体当前动作?

编辑:大规模清理,使当前状态更清晰!

我想在两个方面修改一个动作:
要么更改先前检索到的动作中的名词,要么更改current action 当前

存储)动作的动作名称(因此更改等待解锁它)。

我试过了:

  • 直接访问存储动作的名词:now the noun of storedAction is
  • 访问当前动作的动作名称以及由糟糕的尝试存储的动作名称now the action name part of current action is
0 投票
1 回答
177 浏览

inform7 - 在 Inform 7 中进入房间前检查房间类型和玩家状态

在这个游戏中房间是私人的还是公共的,玩家有两种状态,A或B。玩家只能在状态A时进入公共房间,而不能进入状态B。这就是想要的效果,但是在输入这个之后:

通知行为就像最后一个文本块甚至不存在一样。我究竟做错了什么?

0 投票
1 回答
61 浏览

inform7 - 如何编写“依赖”的理解-何时规则?

我处于这样的情况:

现在我想> eat three-scoop工作。我可以做这个:

但当然,理想情况下,我想写一个这样的规则:

但是,Inform 文档指出这是不可能的

因此,例如,我们不能安全地说“当名词是松果”,或者指代诸如“理解的数字”之类的东西。(我们还没有完全理解。)如果我们想要更复杂地处理这种情况,我们需要按照通常的方式编写检查规则等。

All the same, it isn’t clear to me how to replace such a rule with a checking rule “in the usual way”. How do I use checking rules to make [number]-scoop in the player’s command be interpreted as “an ice cream cone with that many scoops”?

0 投票
1 回答
287 浏览

inform7 - Inform7:我如何让演员在我给他们东西后检查他们

我试图让演员在玩家角色给他们一些东西后检查它。如果我说这样的话:

似乎整个事情都被完全忽略了。我把书给汤姆,他不检查。我什至创建了一个报告规则(

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

基本上我想做的就是给他这本书。他会自动(最好是默默地)检查这本书,然后在检查完这本书后,他会说“多么奇妙的书!”

感谢您花时间回答。如果已经回答了这个问题,我很抱歉,我看了但没有看到任何类似的东西。

0 投票
2 回答
288 浏览

inform7 - 有没有办法从命令行调用 Inform7?

有没有办法从命令行播放inform7?我想写一些自动化的测试脚本,用某些命令来播放,不想手动做。有没有办法做到这一点?