Dofensmirtsz преди 10 години
родител
ревизия
b89ea8a5df
променени са 6 файла, в които са добавени 84 реда и са изтрити 4 реда
  1. 1 1
      control/GameControl.java
  2. 4 1
      control/GameStateManager.java
  3. 3 1
      image/Images.java
  4. BIN
      image/screenshot.png
  5. 1 1
      model/gameState/MenuState.java
  6. 75 0
      model/gameState/PreGameState.java

+ 1 - 1
control/GameControl.java

@@ -26,7 +26,7 @@ public class GameControl implements JoystickListener, ButtonListener, ActionList
 		this.view = view;
 		this.gsm = gsm;
 		view.setIgnoreRepaint(true);
-		update = new Timer(0,this);
+		update = new Timer(1000/60,this);
 		update.start();
 //		Timer update = new Timer();
 //		update.schedule(new TimerTask() {

+ 4 - 1
control/GameStateManager.java

@@ -9,6 +9,7 @@ import model.gameState.GameOverState;
 import model.gameState.GameState;
 import model.gameState.MenuState;
 import model.gameState.PlayState;
+import model.gameState.PreGameState;
 import model.gameState.TitleState;
 import control.button.Button;
 import control.button.ButtonHandler;
@@ -24,7 +25,8 @@ public class GameStateManager {
 		TITLE_STATE,
 		MENU_STATE,
 		PLAY_STATE,
-		GAMEOVER_STATE
+		GAMEOVER_STATE,
+		PRE_GAME_STATE
 	}
 	
 	public GameStateManager(SongHandler sh){
@@ -33,6 +35,7 @@ public class GameStateManager {
 		gamestates.add(new MenuState(this, sh));
 		gamestates.add(new PlayState(this, sh));
 		gamestates.add(new GameOverState(this, sh));
+		gamestates.add(new PreGameState(this,sh));
 		setState(State.TITLE_STATE);
 	}
 	

+ 3 - 1
image/Images.java

@@ -33,6 +33,8 @@ public class Images {
 		   	images.add(toCompatibleImage(ImageIO.read(Main.class.getResource("/image/aanwijzers4sho.png"))));
 		   	images.add(toCompatibleImage(ImageIO.read(Main.class.getResource("/image/kast.png"))));
 		   	images.add(toCompatibleImage(ImageIO.read(Main.class.getResource("/image/gameover.png"))));
+		   	images.add(toCompatibleImage(ImageIO.read(Main.class.getResource("/image/screenshot.png"))));
+		   	
 		} catch (IOException e) {
 			e.printStackTrace();
 		}
@@ -43,7 +45,7 @@ public class Images {
 	}
 
 	public enum ImageType {
-		pulse,cursor,pressstart,colorstrike,background,aanwijzers,kast,gameover
+		pulse,cursor,pressstart,colorstrike,background,aanwijzers,kast,gameover, screenshot
 	}
 
 	public static BufferedImage readImage(File f) {

BIN
image/screenshot.png


+ 1 - 1
model/gameState/MenuState.java

@@ -160,7 +160,7 @@ public class MenuState extends GameState {
 			}
 			if(e.getButton().getButtonID() == 1){
 				sh.close();
-				gsm.setState(control.GameStateManager.State.PLAY_STATE);
+				gsm.setState(control.GameStateManager.State.PRE_GAME_STATE);
 			}
 		}else{										//Screen for selecting song
 			if(e.getButton().getButtonID() == 1){

+ 75 - 0
model/gameState/PreGameState.java

@@ -0,0 +1,75 @@
+package model.gameState;
+
+import image.Images;
+
+import java.awt.Font;
+import java.awt.Graphics2D;
+import java.awt.image.BufferedImage;
+
+import model.SongHandler;
+import control.GameStateManager;
+import control.button.ButtonEvent;
+import control.joystick.JoystickEvent;
+
+public class PreGameState extends GameState {
+
+	double index2 = 2.25;
+	double index = 2.25;
+	double timer;
+	
+	BufferedImage screenshot;
+	
+	public PreGameState(GameStateManager gsm, SongHandler sh) {
+		super(gsm, sh);
+		screenshot = Images.getImage(Images.ImageType.screenshot);	
+	}
+
+	@Override
+	public void init() {
+		
+	}
+
+	@Override
+	public void update(float factor) {
+//		timer = timer +factor/1000;
+//		index -= timer;
+		index2 -= factor/1000;
+		index = (double) Math.round(index2*1000)/1000;
+		if(index <= 0){
+			gsm.setState(control.GameStateManager.State.PLAY_STATE);
+		}
+		
+	}
+
+	@Override
+	public void draw(Graphics2D g2) {
+		Font textFont = new Font("OCR A Extended", Font.BOLD,200);
+		g2.setFont(textFont);
+		g2.drawString("" + index,  325, 400);
+			
+		if(index < 0.75)
+			g2.drawString("GO!!!",325,600);
+		else if (index < 1.5)
+			g2.drawString("SET", 450,600);
+		else
+			g2.drawString("READY", 325, 600);
+		
+	}
+	
+
+	@Override
+	public void buttonPressed(ButtonEvent e) {
+		
+	}
+
+	@Override
+	public void buttonReleased(ButtonEvent e) {
+		
+	}
+
+	@Override
+	public void onJoystickMoved(JoystickEvent e) {
+		
+	}
+
+}