我怎样才能获得turtle id(我自己)在ask turtle上下文?

时间:2018-05-31 14:52:51

标签: design-patterns netlogo

我刚刚开始使用NetLogo而我正试图从OOP过渡,所以如果我的编码范例是我的问题的根源,我会道歉。

问题

ask turtle过程中,我想让每只乌龟调用一个方法,将其作为参数传递给它。我收到了错误:Expected a number rather than a list or block

尝试解决问题

ask turtles [
    setxy ( mean [pxcor] of my-territory ) ( mean [pycor] of my-territory )
    show my-territory
    report-status-and-split turtle [[who] of myself]
]

我用它作为:

report-status-and-split [reporting-turtle]
  ...
  create-turtles 1 [
    set color red
    if reporting-turtle != nobody
      [ create-link-with reporting-turtle [ set color green ]
        move-to reporting-turtle
        fd 8
      ]
   ]

我也尝试过:report-status-and-split [who myself]report-status-and-split [myself [who]]。所有错误均为Expected a literal

所以我没有使用who,而是尝试将myself作为参数传递给我:

  

您不能在乌龟上下文中使用REPORT-STATUS-AND-SPLIT,因为REPORT-STATUS-AND-SPLIT只是观察者。

我确信我的问题很简单。

如何在ask-turtle环境中正确使用who

如何重新考虑我遵循Netlogo编码习惯的方法?

1 个答案:

答案 0 :(得分:1)

report-status-and-split self更改为set