Netlogo 要检查所有8个相邻的有海龟的补丁吗?网络标志
我需要检查一下附近的地方是否都有海龟。我尝试的代码给出了带有set原语的错误“expected reporter” 我的代码是Netlogo 要检查所有8个相邻的有海龟的补丁吗?网络标志,netlogo,Netlogo,我需要检查一下附近的地方是否都有海龟。我尝试的代码给出了带有set原语的错误“expected reporter” 我的代码是 if all? other (people-on neighbors) with [fear?] [set unable-move? true ] 人是品种,恐惧是一个属性变量(人自己的变量)和无法移动?是一个全局变量 在某个时刻,我想阻止这个人(乌龟),如果所有的8块补丁,包括中间的补丁都有一个人(乌龟)在上面,并且处于恐惧之中 类似于: if sum
if all? other (people-on neighbors) with [fear?] [set unable-move? true ]
人是品种,恐惧是一个属性变量(人自己的变量)和无法移动?是一个全局变量
在某个时刻,我想阻止这个人(乌龟),如果所有的8块补丁,包括中间的补丁都有一个人(乌龟)在上面,并且处于恐惧之中 类似于:
if sum [count people-here with [fear?]] of neighbors >= 8 [
set unable-move? true
]
我希望它能起作用 这也应该有效:
if (not any? neighbors with [count people-here with [fear?] = 0])
[ set unable-move? true ]
原语要求您提供:
- 要为其测试条件的agentset(在本例中为)
- 在每个代理(在您的情况下是相邻的补丁)上测试该条件的报告程序:
有吗?这里的人[恐惧?]
if all? neighbors [ any? people-here with [ fear? ] ] [
set unable-move? true
]
就这些 如果你给出一个可以测试的短代码,那就容易多了!谢谢,但实际上我的意思是尼古拉斯爵士回答的。谢谢,但我想检查一下所有的邻居。