你知道吗,我怎样才能在 Robocode 中获得我的机器人的RobotState ?我想获得一个信息,例如,如果我的机器人是活动的、活着的、死的等。在调试模式下是否可以看到该信息,但我如何在我的代码中获得这个信息?
问问题
169 次
1 回答
0
枚举 RobotState 仅在 RoboCode 的核心中使用。你的机器人没有getState()
方法。(我挖掘了源代码)
但是:您可以通过其他方式获得所有这些状态:
如果您的机器人正在撞墙,则会触发 HitWall 事件。您可以通过覆盖机器人类中的方法来处理这些事件:
@Override
public void onHitWall(HitWallEvent e)
{
//your code
}
与击打机器人相同:
@Override
public void onHitRobot(HitRobotEvent e)
{
//your code
}
如果你的机器人死了:
@Override
public void onRobotDeath(RobotDeathEvent event)
{
//salute your warrior
//your code
}
如果它还活着,它仍然应该在你的运行方法中循环:
@Override
public void run() {
do {
//here you do the normal stuff a robot does
} while(true);
}
您可以在此接口中查看更多事件方法:
于 2013-09-26T18:58:00.873 回答