From bab5ad12fc39a6d250a7efb615e91b6615efe9da Mon Sep 17 00:00:00 2001 From: Oscar Wiberg <oscarwiberg@oscars-air-3.students.netlogon.liu.se> Date: Thu, 23 Nov 2023 16:23:10 +0100 Subject: [PATCH] =?UTF-8?q?cleanup=20+=20kommentarer=20f=C3=B6r=20collisio?= =?UTF-8?q?ns?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/GameFrame.java | 1 + src/states/Enemy.java | 11 +++++++++++ src/states/PlayState.java | 21 ++++++--------------- src/states/Player.java | 26 ++++++++++++++++++-------- 4 files changed, 36 insertions(+), 23 deletions(-) diff --git a/src/main/GameFrame.java b/src/main/GameFrame.java index 1e7ca79..cd07d05 100644 --- a/src/main/GameFrame.java +++ b/src/main/GameFrame.java @@ -1,6 +1,7 @@ package main; import javafx.scene.layout.HBox; +import javafx.scene.layout.VBox; import states.GameModel; /** diff --git a/src/states/Enemy.java b/src/states/Enemy.java index 915dc60..4de1167 100644 --- a/src/states/Enemy.java +++ b/src/states/Enemy.java @@ -5,17 +5,24 @@ import java.io.FileNotFoundException; import constants.Constants; import javafx.scene.image.Image; +import javafx.scene.image.ImageView; public class Enemy { private double enemyX = -100.00; private double enemyY = 250.00; private Image image; + private ImageView enemyView; public Enemy(String enemyImg) { try { image = new Image(new FileInputStream(enemyImg)); + enemyView = new ImageView(image); + enemyView.setX(enemyX); + enemyView.setY(enemyY); + enemyView.setFitHeight(Constants.enemyHeight); + enemyView.setFitWidth(Constants.enemyWidth); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -36,6 +43,10 @@ public class Enemy { return enemyX; } + public ImageView getEnemyView() { + return enemyView; + } + public double getEnemyY() { return enemyY; } diff --git a/src/states/PlayState.java b/src/states/PlayState.java index cfe3c88..5b6d6bf 100644 --- a/src/states/PlayState.java +++ b/src/states/PlayState.java @@ -57,15 +57,6 @@ public class PlayState extends GameState { player = new Player(Constants.playerImg); enemy = new Enemy(Constants.enemyImg); - - try { - obstacle = new Image(new FileInputStream(Constants.enemyImg)); - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - } /** @@ -83,17 +74,15 @@ public class PlayState extends GameState { g.setLineDashes(2); g.strokeLine(Constants.screenWidth, 350, 0, 350); -// if (enemyPosX < 0 - Constants.enemyWidth) { -// enemyPosX = Constants.screenWidth; -// } if (enemy.getEnemyX() < 0 - Constants.enemyWidth) { enemy.setEnemyX(Constants.screenWidth); } g.drawImage(player.getImage(), player.getPlayerX(), player.getPlayerY(), Constants.playerWidth, Constants.playerHeight); -// g.drawImage(obstacle, enemyPosX, enemyPosY, Constants.enemyWidth, Constants.enemyHeight); g.drawImage(enemy.getImage(), enemy.getEnemyX(), enemy.getEnemyY(), Constants.enemyWidth, Constants.enemyHeight); + + } @Override @@ -114,11 +103,10 @@ public class PlayState extends GameState { @Override public void update() { -// enemyPosX -= 10; + checkCollision(); enemy.setEnemyX(enemy.getEnemyX()-10); - if (up) { @@ -133,6 +121,9 @@ public class PlayState extends GameState { public void checkCollision() { + // rita upp från player samt enemy x och y kordinater + eller - höjd och bredd, då får vi spannen som enemy och player bilderna befinner sig i + // nästlade if satser, först kolla om enemy befinner sig i mitten av skärmen på players x position, sen kollar vi om players y är större än enemy + } diff --git a/src/states/Player.java b/src/states/Player.java index 2ab0a60..a7dedc6 100644 --- a/src/states/Player.java +++ b/src/states/Player.java @@ -6,8 +6,10 @@ import java.io.FileNotFoundException; import constants.Constants; 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 { @@ -18,16 +20,30 @@ public class Player { private Image image; private boolean down = false; private boolean up = false; + private Rectangle rekt; + private ImageView playerView; public Player(String playerImg) { try { image = new Image(new FileInputStream(playerImg)); + playerView = new ImageView(image); + playerView.setX(playerX); + playerView.setY(playerY); + playerView.setFitHeight(Constants.playerHeight); + playerView.setFitWidth(Constants.playerWidth); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } + + + } + + + public ImageView getPlayerView() { + return playerView; } @@ -57,17 +73,11 @@ public class Player { - public void move(KeyEvent key) { - - if (key.getCode() == KeyCode.UP) { - this.jump(); - up = true; - } - - } + public void jump() { + if (!down) { -- GitLab