Advertisement
Guest User

Java2D_InputHandler

a guest
Nov 11th, 2012
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. package j2dgame.game;
  2.  
  3. import java.awt.event.KeyEvent;
  4. import java.awt.event.KeyListener;
  5.  
  6. public class InputHandler implements KeyListener {
  7.  
  8. public InputHandler(Game game) {
  9. game.addKeyListener(this);
  10. }
  11.  
  12. public class Key {
  13. private int numTimesPressed = 0;
  14. private boolean pressed = false;
  15.  
  16. public int getNumTimesPressed() {
  17. return numTimesPressed;
  18. }
  19.  
  20. public boolean isPressed() {
  21. return pressed;
  22. }
  23.  
  24. public void toggle(boolean isPressed) {
  25. pressed = isPressed;
  26. if (isPressed)
  27. numTimesPressed++;
  28. }
  29.  
  30. }
  31.  
  32. public Key up = new Key();
  33. public Key down = new Key();
  34. public Key left = new Key();
  35. public Key right = new Key();
  36.  
  37. public void keyPressed(KeyEvent e) {
  38. toggleKey(e.getKeyCode(), true);
  39. }
  40.  
  41. public void keyReleased(KeyEvent e) {
  42. toggleKey(e.getKeyCode(), false);
  43. }
  44.  
  45. public void keyTyped(KeyEvent arg0) {
  46.  
  47. }
  48.  
  49. public void toggleKey(int keyCode, boolean isPressed) {
  50. if (keyCode == KeyEvent.VK_W || keyCode == KeyEvent.VK_UP) {
  51. up.toggle(isPressed);
  52. }
  53. if (keyCode == KeyEvent.VK_S || keyCode == KeyEvent.VK_DOWN) {
  54. down.toggle(isPressed);
  55. }
  56. if (keyCode == KeyEvent.VK_A || keyCode == KeyEvent.VK_LEFT) {
  57. left.toggle(isPressed);
  58. }
  59. if (keyCode == KeyEvent.VK_D || keyCode == KeyEvent.VK_RIGHT) {
  60. right.toggle(isPressed);
  61. }
  62.  
  63. }
  64.  
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement