Button NetLogo:Can';";停止“;从另一个程序中删除永久按钮?

Button NetLogo:Can';";停止“;从另一个程序中删除永久按钮?,button,netlogo,execution,forever,Button,Netlogo,Execution,Forever,我把我的问题简化如下。我想在没有机器人的情况下停止永久按钮“go”的执行,我想从另一个过程调用它(在本例中为“test”),如下所示: 原因是我想在机器人死亡的地方调用stop,这样我就可以发送适当的用户消息。遗憾的是,您必须重新组织代码,以便您调用的如果没有?机器人[停止]在您的围棋中,以便实现以下目标: 请参阅文档: 永久按钮也可以从代码中停止。如果永远按钮 直接调用一个过程,然后当该过程停止时 停止。(在turtle或patch forever按钮中,按钮不会停止 直到每一只乌龟或一块补丁

我把我的问题简化如下。我想在没有机器人的情况下停止永久按钮“go”的执行,我想从另一个过程调用它(在本例中为“test”),如下所示:


原因是我想在机器人死亡的地方调用stop,这样我就可以发送适当的用户消息。

遗憾的是,您必须重新组织代码,以便您调用的
如果没有?机器人[停止]
在您的围棋中,以便实现以下目标:

请参阅文档:

永久按钮也可以从代码中停止。如果永远按钮 直接调用一个过程,然后当该过程停止时 停止。(在turtle或patch forever按钮中,按钮不会停止 直到每一只乌龟或一块补丁都停下来——一只乌龟或一块补丁都不会停下来 有权停止整个按钮。)

参考:

停止此代理立即退出封闭过程,询问, 或询问类似构造(例如crt、hatch、sprout)。只有封闭的 过程或构造停止,而不是代理的所有执行

参考:

我不想发布的另一个黑客解决方案可能是执行以下操作,即您提出一个错误,然后停止

to go
   carefully[test][error-message stop]
end
to test
   if not any? robots [ error "no more robots!" ]
end
to go
   carefully[test][error-message stop]
end
to test
   if not any? robots [ error "no more robots!" ]
end