PreGameState.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package model.gameState;
  2. import image.Images;
  3. import java.awt.BasicStroke;
  4. import java.awt.Color;
  5. import java.awt.Font;
  6. import java.awt.Graphics2D;
  7. import java.awt.image.BufferedImage;
  8. import control.GameStateManager;
  9. import control.SongHandler;
  10. import control.button.ButtonEvent;
  11. import control.joystick.JoystickEvent;
  12. import data.io.SQLConnector;
  13. public class PreGameState extends GameState {
  14. double index2 = 3;
  15. double index = 3;
  16. int grootte = 150;
  17. BasicStroke s = new BasicStroke(20);
  18. BufferedImage screenshot;
  19. public PreGameState(GameStateManager gsm, SongHandler sh, SQLConnector sql) {
  20. super(gsm, sh, sql);
  21. screenshot = Images.getImage(Images.ImageType.screenshot);
  22. }
  23. @Override
  24. public void init() {
  25. grootte = 150;
  26. index = 3;
  27. index2 = 3;
  28. }
  29. @Override
  30. public void update(float factor) {
  31. index2 -= factor/1000;
  32. index = (double) Math.round(index2*1000)/1000;
  33. if(index <= 0){
  34. gsm.setState(control.GameStateManager.State.PLAY_STATE);
  35. }
  36. if(grootte > 270)
  37. grootte = 150;
  38. grootte+=2;
  39. }
  40. @Override
  41. public void draw(Graphics2D g2) {
  42. g2.drawImage(screenshot,0,0,1280,1024,null);
  43. Font textFont = new Font("OCR A Extended", Font.BOLD,grootte);
  44. g2.setFont(textFont);
  45. g2.setStroke(s);
  46. g2.setColor(Color.RED);
  47. String text = "" + index;
  48. int width = g2.getFontMetrics().stringWidth(text);
  49. g2.drawString(text, 325, 400);
  50. if(index < 1){
  51. text = "GO!!!";
  52. }
  53. else if (index < 2){
  54. text = "SET";
  55. }
  56. else{
  57. text = "READY";
  58. }
  59. width = g2.getFontMetrics().stringWidth(text);
  60. g2.drawString(text, (256+1024/2)-width/2, 600);
  61. }
  62. @Override
  63. public void buttonPressed(ButtonEvent e) {
  64. }
  65. @Override
  66. public void buttonReleased(ButtonEvent e) {
  67. }
  68. @Override
  69. public void onJoystickMoved(JoystickEvent e) {
  70. }
  71. }