netlogo - 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 实例中并运行您的模型。
您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
推荐阅读
- python - 如何在 Tensorflow 中保存和恢复经过训练的 LSTM 模型?
- database-design - 在 dynamodb 中存储树状结构
- postgresql - 我能够创建一个函数但无法调用它
- node.js - `TypeError [ERR_INVALID_CALLBACK] 中的理解问题:回调必须是节点中的函数
- java - 类型不匹配:无法将 session.setPortForwardingL() 从 void 转换为 int;
- javascript - 如何在 NetSuite 上的 beforeLoad 功能中操作记录?
- php - 从 PHP 中的结果准备 json 数组
- ios - 如何在终端上从 xcarchive 导出 dsym 文件
- reactjs - 嵌套路由器不工作代码拆分
- javascript - 如何将 id 名称传递给 jQuery 验证并发送到控制器?