Advertisement
Guest User

Untitled

a guest
Dec 9th, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. package peakrobots.ilkin;
  2.  
  3. import robocode.AdvancedRobot;
  4.  
  5. import java.awt.event.KeyEvent;
  6.  
  7. public class TankTrainer extends AdvancedRobot {
  8.  
  9. enum State {
  10. STEADY, AHEAD, LEFT, RIGHT
  11. }
  12.  
  13. private State state = State.STEADY;
  14. private int numKeyPressed = 0;
  15.  
  16. @Override
  17. public void run() {
  18. while (true) {
  19. switch (state) {
  20. case STEADY:
  21. setStop();
  22. break;
  23. case AHEAD:
  24. setAhead(10000);
  25. break;
  26. case LEFT:
  27. setTurnLeft(10000);
  28. break;
  29. case RIGHT:
  30. setTurnRight(10000);
  31. break;
  32. }
  33. execute();
  34. }
  35. }
  36.  
  37. @Override
  38. public void onKeyPressed(KeyEvent e) {
  39. numKeyPressed ++;
  40. switch (e.getKeyCode()) {
  41. case KeyEvent.VK_LEFT : state = State.LEFT; break;
  42. case KeyEvent.VK_RIGHT : state = State.RIGHT; break;
  43. case KeyEvent.VK_UP : state = State.AHEAD; break;
  44. case KeyEvent.VK_SPACE : setFire(1); break;
  45. }
  46. }
  47.  
  48. @Override
  49. public void onKeyReleased(KeyEvent e) {
  50. numKeyPressed --;
  51. if (numKeyPressed == 0) {
  52. state = State.STEADY;
  53. }
  54. }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement