如何打破 netlogo 中的询问?例如......特工正在移动,突然满足了某些条件。现在您不想要求代理执行(移动)并停止询问。并在询问后将控制权传递给下一行。
类似的东西存在于称为“停止”的过程中。但不是为了问。有办法解决吗?
嗯,确实突破了。来自以下文档:stop askstop
该代理立即从封闭过程、ask 或类似ask 的构造(例如crt、hatch、sprout)中退出。仅当前过程停止,而不是代理的所有执行。
所以你可以做这样的事情:
ask turtles [
if stop-condition? [ stop ]
move-to one-of patches ; or whatever
]
print "done!"
Run Code Online (Sandbox Code Playgroud)
...一旦stop-condition?成为真,执行就会突破阻塞ask并“完成!” 将被打印。