我正在模拟挖掘机的公用事业罢工。我将挖掘机建模为具有自由空间运动的运输车。我有另一个称为 Utility 的代理。公用事业的人口称为公用事业。
我想计算运输商的公用事业罢工。运输车有检测能力,比如如果|Z(transporter) - Z(utility)| <= 3
不会发生任何事故!但是如果|Z(transporter) - Z(utility)| > 3
发生罢工,运输者需要停止工作一段时间,例如2分钟,然后重新开始工作。
我创建了一个名为 v_utilityStrikeNumber 的变量和一个名为 e_checkUtilitystrike 的事件。这是@Benjamin 为其他人建议的。我为事件 Action 编写了以下代码。
for (Utility u: main.utilities){
dist = distanceTo(u);
return dist;
}
if (dist <= 3){
main.utilities_remove(u);
}
else{
v_utilityStrikeNumber += 1;
u.v_isUtilityStrike = true;
state_excavator.receiveMessage("interrupt");
}
我收到以下错误:
- u 无法解析为变量
- dist 无法解析为变量
- u 型不可见
你能告诉我如何解决它们吗?谢谢你。