首页 > 解决方案 > Netlogo 在尝试设置播放器时无人问津

问题描述

我想设置球主,但它不起作用,我有一个无人值守。这是我的代码:

to setup
  clear-all
  reset-ticks
  setup-players-red
  setup-players-blue
  setup-ball 
  print BALL-OWNER
end


to setup-ball
  create-balls 1 [
    setxy 5 -1
    set shape "ball basketball"
    set size 2.5
    set the-ball self
    set BALL-OWNER one-of players with [distance the-ball = 0]
    set owner BALL-OWNER
  ]
end

to setup-players-red
  create-players 1[
    set color red
    set shape "person"
    set size 5
    setxy (5)
    setxy (-1)
    set team "red"
  ]

end

to setup-players-blue 
create-players 1[
    set color blue
    set shape "person"
    set size 5
    setxy (-5)
    setxy (1)
    set team "blue" 
  ]
end

那么为什么我有一个“nodoby”打印而不是玩家 1/2?我究竟做错了什么?我也试着把

" 将 BALL-OWNER 设置为 [distance the-ball = 0] 的球员之一"

在设置语句中,但我有相同的结果。

标签: netlogo

解决方案


如果可能,尝试将代码作为最小、完整和可验证的示例提交,以便用户可以将您的代码复制并粘贴到空白的 NetLogo 实例中并运行您的模型。

setxy的播放器代码有问题-如果已解决,我不会遇到您描述的相同错误-下面的代码为我运行:

globals [ ball-owner the-ball owner ]

breed [ players player ]
breed [ balls ball ]

players-own [ team ]

to setup
  clear-all
  reset-ticks
  setup-players-red
  setup-players-blue
  setup-ball 
  print BALL-OWNER
end


to setup-ball
  create-balls 1 [
    setxy 5 -1
    set shape "circle"
    set size 2.5
    set the-ball self
    set BALL-OWNER one-of players with [distance the-ball = 0]
    set owner BALL-OWNER
  ]
end

to setup-players-red
  create-players 1[
    set color red
    set shape "person"
    set size 5
    setxy 5 -1
    set team "red"
  ]

end

to setup-players-blue 
create-players 1[
    set color blue
    set shape "person"
    set size 5
    setxy -5 1
    set team "blue" 
  ]
end

推荐阅读