HelpState.java 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package model.gameState;
  2. import image.Images;
  3. import image.Images.ImageType;
  4. import java.awt.Font;
  5. import java.awt.Graphics2D;
  6. import java.awt.RenderingHints;
  7. import java.awt.Transparency;
  8. import java.awt.image.BufferedImage;
  9. import java.awt.image.VolatileImage;
  10. import model.GameModel;
  11. import model.SongHandler;
  12. import control.GameStateManager;
  13. import control.GameStateManager.State;
  14. import control.button.ButtonEvent;
  15. import control.button.ButtonHandler;
  16. import control.joystick.JoystickEvent;
  17. import data.io.SQLConnector;
  18. public class HelpState extends GameState {
  19. BufferedImage help = Images.getImage(ImageType.help);
  20. VolatileImage background;
  21. Font textFontSmall = new Font("OCR A Extended", Font.BOLD, 15);
  22. int index = 0;
  23. int frame;
  24. public HelpState(GameStateManager gsm, SongHandler sh, SQLConnector sql){
  25. super(gsm, sh, sql);
  26. createBackground();
  27. }
  28. @Override
  29. public void init() {
  30. ButtonHandler.getButton(2).setColor(GameModel.colors[2]);
  31. sh.play();
  32. }
  33. @Override
  34. public void update(float factor) {
  35. frame++;
  36. }
  37. @Override
  38. public void draw(Graphics2D g2) {
  39. g2.drawImage(background, 0, 0, 1280, 1024, null);
  40. }
  41. @Override
  42. public void buttonPressed(ButtonEvent e) {
  43. if(e.getButton().getButtonID() == 2) {
  44. gsm.setState(State.MENU_STATE);
  45. }
  46. }
  47. @Override
  48. public void buttonReleased(ButtonEvent e) {
  49. }
  50. @Override
  51. public void onJoystickMoved(JoystickEvent e) {
  52. }
  53. public void createBackground() {
  54. background = Images.initVolatileImage(1280, 1024, Transparency.OPAQUE);
  55. Graphics2D g2 = background.createGraphics();
  56. RenderingHints rh = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
  57. g2.setRenderingHints(rh);
  58. g2.drawImage(help, 0,0,1280,1024,null);
  59. g2.setFont(textFontSmall);
  60. //back
  61. g2.setColor(GameModel.colors[2]);
  62. g2.fillOval(80, 965, 30, 30);
  63. g2.drawString("Back", 115, 985);
  64. g2.dispose();
  65. background.createGraphics();
  66. }
  67. }