Yan-ice/GenshinKitchen_2023F

关于 Script Specificaiton 中的 Wait Instruction 的一些疑问

Opened this issue · 2 comments

根据文档,在 waituntil 指示中,可能有 player_ready, player_hasitem, target_ready, target_hasitem 这 4 种结束当前等待状态的方式。目前有以下疑问:
1、player_ready 的意义不是很明确,不知道是否应该理解为玩家在目标机器前?
2、等待直到 player_hasitem,意思是一直等等到玩家手上有东西,可是如果手上本来没有东西,一直等也等不到有东西,要玩家主动去拿取,所以这个指令可能进入死循环。
3、根据给出的例子,target_ready 的意思是等待到机器完成工作,即等待到机器不正在工作,也就是 dataOut_bits[4] = 0。但文档说明里,“例如, waituntil target_ready指令被解释后i_sign=2, 执行该指令时,一直等待直到target_ready为1.”,说要等到要等到 target_ready 为1,而根据 Feedback Signal,为1的时候代表机器在工作而不是空闲,好像有一些矛盾
4、跟第2点差不多同理,如果不主动放东西给机器,机器永远也不会从没有物品变成有物品,可能进入死循环

死循环问题:上述两个信号在wait里确实会死循环,但在jump时是有用的。为了格式统一所以wait里也会有这俩(没用的)信号。

关于player_ready的理解没问题。waituntil的意思总是“等到特定信号为1为止”,例如等到机器空闲为止(再进行下一步动作)。