Netlogo 在尝试设置玩家时没有人

Netlogo get nobody when trying to set players

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

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? 我究竟做错了什么? 我也试着把

" set BALL-OWNER one-of players with [distance the-ball = 0]"

在设置语句中,但我得到了相同的结果。

如果可能,请尝试将代码作为 Minimum, Complete, and Verifiable Example 提交,以便用户只需将您的代码复制并粘贴到空白的 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