From b0ce0bb6f89826c34abb76215bea2c81961fee4e Mon Sep 17 00:00:00 2001 From: Kenneth van Ewijk Date: Sat, 13 Jun 2015 19:35:02 +0200 Subject: [PATCH] Added playdata SQL call. Bugfixes --- model/gameState/PlayState.java | 37 ++++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/model/gameState/PlayState.java b/model/gameState/PlayState.java index 57bbc07..385ab2d 100644 --- a/model/gameState/PlayState.java +++ b/model/gameState/PlayState.java @@ -37,6 +37,11 @@ public class PlayState extends GameState { public static int comboScore = 0; public static double lifePoints = 100; + private int enemies_hit = 0; + private int enemies_missed = 0; + private int buttons_pressed = 0; + private int joystick_moved = 0; + private boolean init = false; private long oldProgress = 0; @@ -56,7 +61,12 @@ public class PlayState extends GameState { lifePoints = 100; currentScore = 0; comboScore = 0; - oldProgress = 0 ; + oldProgress = 0; + + enemies_hit = 0; + enemies_missed = 0; + buttons_pressed = 0; + joystick_moved = 0; for(Path p : area.paths) { @@ -93,7 +103,7 @@ public class PlayState extends GameState { if(progress > sh.getCurrentSongInstance().getEndTime() + Enemy.secondsToEnd*1000*2) - gsm.setState(State.GAMEOVER_STATE); + endGame(); // System.out.println(progress - oldProgress + " / " + area.paths.get(player.getIndex()).getEnemysInPath().size()); @@ -113,6 +123,7 @@ public class PlayState extends GameState { enemyIterator.remove(); lifePoints -= 5; comboScore /= 2; + enemies_missed++; } if(closedEnemy == null){ closedEnemy = e; @@ -126,15 +137,19 @@ public class PlayState extends GameState { lifePoints -= 0.002 * factor; + infoPanel.updateIPanel(); + if(lifePoints <= 0) - gsm.setState(State.GAMEOVER_STATE); + { + endGame(); + } if(comboScore >= 100) { comboScore = 0; currentScore += 500; } - infoPanel.updateIPanel(); + area.count(); if(closedEnemy == null){ area.pathPainted(-1, null); @@ -143,6 +158,11 @@ public class PlayState extends GameState { } } + private void endGame() { + gsm.setState(State.GAMEOVER_STATE); + sql.addPlaydata(sh.getCurrentSong(), sh.getCurrentSongInstance(), sh.getProgress()/1000, enemies_missed, enemies_hit, buttons_pressed, joystick_moved); + } + @Override public void draw(Graphics2D g2) { try { @@ -169,9 +189,6 @@ public class PlayState extends GameState { @Override public void buttonPressed(ButtonEvent e) { - if(e.getButton().getButtonID() == 0){ - lifePoints = 0; - } boolean notHit = true; Iterator enemysInPath = area.paths.get(player.getIndex()).getEnemysInPath().iterator(); while (enemysInPath.hasNext()) { @@ -183,6 +200,7 @@ public class PlayState extends GameState { lifePoints = Math.min(lifePoints+10, 100); area.setHitAreaColor(enemy.getColor()); area.hit(); + enemies_hit++; enemysInPath.remove(); notHit = false; break; @@ -203,8 +221,10 @@ public class PlayState extends GameState { if(e.getButton().getButtonID() == 0) { - gsm.setState(State.GAMEOVER_STATE); + endGame(); } + else + buttons_pressed++; } @Override @@ -243,6 +263,7 @@ public class PlayState extends GameState { default: break; } + joystick_moved++; } public void addEnemy(int pathID, Color color) {