diff --git a/src/states/Object.java b/src/states/Object.java index 75fd922cbb946c26ab3172e6932a22fcacec70a1..abbe682c9abef9c9b4a641853103a471add24be8 100644 --- a/src/states/Object.java +++ b/src/states/Object.java @@ -10,7 +10,7 @@ import javafx.scene.shape.Rectangle; public abstract class Object { - private double posX; + protected double posX; protected double posY; private double height; private double width; diff --git a/src/states/PlayState.java b/src/states/PlayState.java index 27b7955c1d7c452c69eab4fd19eb74e101518b11..a8c487989c0235df057ee29af8500890902c24e0 100644 --- a/src/states/PlayState.java +++ b/src/states/PlayState.java @@ -48,17 +48,13 @@ public class PlayState extends GameState { private Enemy enemy; private boolean collided = false; private boolean up = false; - private boolean down = false; private boolean gameOver = false; - private MenuState menu; private HighScore score = new HighScore(); - private int clearedEnemies; private String scoreText; private ExtraLifePowerUp extraLife; private FlyingEnemy flyingEnemy; // private double tempy; private Random engen; - private String slidingPlayer; private int movingSpeed = 10; private Bomb bomb; private boolean isFlyingEnemyActive = false; @@ -96,7 +92,6 @@ public class PlayState extends GameState { public void mode1() { player = new Player(Constants.playerImg); - slidingPlayer = Constants.slidingPlayerImg; enemy = new Enemy(Constants.enemyImg, -100.00, 270.00, Constants.enemyHeight, Constants.enemyWidth); extraLife = new ExtraLifePowerUp(Constants.lifeImg, 800.00, 170, Constants.powerHeight, Constants.powerWidth); speedUp = new SpeedPowerUp(Constants.powerImg, 800.00, 265.00, Constants.powerHeight, Constants.powerWidth); @@ -110,7 +105,6 @@ public class PlayState extends GameState { public void mode2() { player = new Player(Constants.playerImg2); - slidingPlayer = Constants.slidingPlayerImg2; enemy = new Enemy(Constants.enemyImg, -100.00, 270.00, Constants.enemyHeight, Constants.enemyWidth); extraLife = new ExtraLifePowerUp(Constants.lifeImg, 800.00, 270, Constants.powerHeight, Constants.powerWidth); flyingEnemy = new FlyingEnemy(Constants.flyingEnemyImg, -200.00, 20.00, Constants.enemyHeight, Constants.enemyWidth); @@ -160,7 +154,7 @@ public class PlayState extends GameState { drawEnemy(g); - + drawPowerUps(g); @@ -170,8 +164,8 @@ public class PlayState extends GameState { private void drawPowerUps(GraphicsContext g) { g.drawImage(speedUp.getImage(), speedUp.getX(), speedUp.getY(), Constants.powerWidth, Constants.powerHeight); -// g.drawImage(extraLife.getImage(), extraLife.getX(), extraLife.getY(), Constants.powerWidth, Constants.powerHeight); - + g.drawImage(extraLife.getImage(), extraLife.getX(), extraLife.getY(), Constants.powerWidth, Constants.powerHeight); + } public void drawEnemy(GraphicsContext g) { @@ -229,8 +223,8 @@ public class PlayState extends GameState { public int getSpeed() { return movingSpeed; } - - + + public void setSpeed(int s) { movingSpeed = s; } @@ -258,20 +252,7 @@ public class PlayState extends GameState { case UP: // Om spelaren duckar kan den inte hoppa, då ställer sig spelaren upp istället - if (down) { - player.standUp(); - down = false; - } else { - up = true; - } - break; - - case DOWN: - // Spelaren kan inte ducka om den är mitt i ett hopp - if (!up) { - down = true; - - } + up = true; break; case LEFT: @@ -297,10 +278,10 @@ public class PlayState extends GameState { public void update() { speedUp.setX(speedUp.getX() - movingSpeed); - speedUp.handle(player, this); - -// extraLife.setX(extraLife.getX() - movingSpeed); -// extraLife.checkCollision(player); +// speedUp.handle(player, this); + + extraLife.setX(extraLife.getX() - movingSpeed); +// extraLife.checkCollision(player, this); if (isFlyingEnemyActive) { @@ -368,7 +349,7 @@ public class PlayState extends GameState { up = false; } - + } diff --git a/src/states/Player.java b/src/states/Player.java index d5b24e289486a6f490db66fe932f73fd2288b2e5..4f0c845a0a49728b5643f1a1fd088a75ec2bda2f 100644 --- a/src/states/Player.java +++ b/src/states/Player.java @@ -1,17 +1,10 @@ package states; import java.io.FileInputStream; - - import java.io.FileNotFoundException; - import constants.Constants; -import javafx.geometry.Bounds; import javafx.scene.image.Image; -import javafx.scene.image.ImageView; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.scene.shape.Rectangle; + public class Player { @@ -19,13 +12,10 @@ public class Player { private double playerX = (Constants.screenWidth - Constants.playerWidth) / 2; private double playerY = 265.00; - private int score = 0; private int lives = 3; private Image image; private boolean down = false; - private boolean up = false; - private Image currImage = null; private int passes = 0; private boolean livesLocked = false; @@ -43,7 +33,7 @@ public class Player { e.printStackTrace(); } - currImage = image; + } @@ -63,7 +53,7 @@ public class Player { public Image getImage() { - return currImage; + return image; } @@ -145,14 +135,6 @@ public class Player { } - public void standUp() { - currImage = image; - - - } - - - public void moveLeft(int movingSpeed) { diff --git a/src/states/PowerUp.java b/src/states/PowerUp.java index 11ad1bb5a42402e5ad02f08c3dc1a51489a5de4d..04d4f7590621f65971eaef516363f8bf0bc734c8 100644 --- a/src/states/PowerUp.java +++ b/src/states/PowerUp.java @@ -7,12 +7,20 @@ public abstract class PowerUp extends Object{ private Boolean active = false; private int scoreSinceActive = 0; private Random random = new Random(); + private int maxH = 110; + private int minH = 265; public PowerUp(String image, double x, double y, double h, double w) { super(image, x, y, h, w); - // TODO Auto-generated constructor stub + this.posY = spawn(); } + + public double spawn() { + int x = random.nextInt(minH - maxH + 1) + maxH; + return (double) x; + } + protected int getScoreSinceActive() { return scoreSinceActive; } @@ -24,6 +32,7 @@ public abstract class PowerUp extends Object{ } } + public abstract void use(Player player, PlayState playState); -} + }