State.java 881 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package model.state;
  2. import java.awt.Graphics2D;
  3. import java.awt.event.KeyEvent;
  4. import model.GameStateManager;
  5. public abstract class State {
  6. protected GameStateManager gsm;
  7. protected String name;
  8. // Super class of all the implemented states
  9. public State(String name, GameStateManager gsm) {
  10. this.name = name;
  11. this.gsm = gsm;
  12. }
  13. public String getName() {
  14. return name;
  15. }
  16. @Override
  17. public boolean equals(Object o) {
  18. if (!(o instanceof State))
  19. return false;
  20. State tempstate = (State) o;
  21. if (tempstate.getName() == this.name)
  22. return true;
  23. else
  24. return false;
  25. }
  26. public abstract void init();
  27. public abstract void exit();
  28. public abstract void update();
  29. public abstract void paint(Graphics2D g2);
  30. public abstract void keyPressed(KeyEvent e);
  31. public abstract void keyReleased(KeyEvent e);
  32. public abstract void keyTyped(KeyEvent e);
  33. }