2013-09-04 6 views
1

Знаете ли вы, как я могу получить RobotState моего робота в Robocode? Я хотел бы получить информацию, например, если мой робот активен, жив, мертв и т. Д. В режиме отладки можно увидеть эту информацию, но как я могу получить ее в своем коде?Как я могу получить RobotState моего робота?

enter image description here

+1

Post код? Вы можете использовать методы, перечисленные в ссылке, которую вы дали. Вы можете просто вызвать isAlive(), чтобы узнать, жив ли он и так далее ... if rossRobot.isAlive() {doSomethingHere} – RossC

+1

currentRobot.getState()? –

ответ

0

Перечисление RobotState используется только в ядре Robocode. Для вашего робота нет метода getState(). (Я выкопал через source code)

Однако вы можете получить все тезисы состояние в других отношениях:

Если ваш робот бьет стену, событие 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); 
} 

Вы можете посмотреть на еще более методов событий в этом интерфейсы:

Смежные вопросы