diff --git a/src/main/java/bitFight/Attack.java b/src/main/java/bitFight/Attack.java index 1d881f8ce3256af0220357eba67e2e20c3f0733a..b223b5183a8668b6a90271ab7a4b6c69b7c984e4 100644 --- a/src/main/java/bitFight/Attack.java +++ b/src/main/java/bitFight/Attack.java @@ -2,7 +2,6 @@ package bitFight; import java.time.Duration; import java.time.LocalDateTime; -import java.util.ArrayList; public enum Attack implements Action { PUNCH(10, "punch", ActionHeight.HIGH, 10), diff --git a/src/main/java/bitFight/Display.java b/src/main/java/bitFight/Display.java index 5d47f5c96155f82bd4434c39f6a31042d05225ce..c5ff29bbdb829846119944919cba7211be465368 100644 --- a/src/main/java/bitFight/Display.java +++ b/src/main/java/bitFight/Display.java @@ -7,8 +7,13 @@ import java.io.InputStreamReader; public class Display { + public static Level level; public static int row = 1; + public Display(Level l){ + this.level = l; + } + public static void clearScreen() { System.out.print("\033[H\033[2J"); } @@ -31,15 +36,16 @@ public class Display { } public static void goToDialogBox(){ - setCursorPos(1,0); + setCursorPos(row+6,0); //System.out.flush(); } public static void clearDialogBox(){ clearScreen(); - setCursorPos(row, 0); printDialogBox(); + setCursorPos(row,0); + level.displayLifePoints(); goToDialogBox(); } @@ -50,7 +56,7 @@ public class Display { dialogBox = loadTextFile("assets/DialogBox.text"); } catch (IOException e) { // TODO Auto-generated catch block - e.printStackTrace(); + e.getMessage(); } System.out.println(dialogBox); } diff --git a/src/main/java/bitFight/Level.java b/src/main/java/bitFight/Level.java index e8a6cc868c11f15ccb478a6064f9db2a156e7db2..2c8f4732a742b6858e863e4bcfb606d599dcb4cf 100644 --- a/src/main/java/bitFight/Level.java +++ b/src/main/java/bitFight/Level.java @@ -75,12 +75,18 @@ public class Level{ // affiche la jauge de vie - public void displayLifePoints (){ + public void displayLifePoints (){ System.err.println(); - System.out.println("\t \t " +this.player.getName()); + System.out.println("Player " + this.player.getName()); + System.out.println(); System.out.print(Terminal.GREEN+" \t current health "+Terminal.RESET); - for (int indice = 0; indice < ((this.player.getCurrentHealth()/this.player.getMaxHealth())*100)/2; indice ++){ - System.out.print(Terminal.GREEN+ "▬"+ Terminal.RESET); + double pourcentage = (this.player.getCurrentHealth()/this.player.getMaxHealth())*100; + for (int indice = 0; indice < pourcentage/2; indice ++){ + if (pourcentage<=50){ + System.out.print(Terminal.RED+"▬"); + }else{ + System.out.print(Terminal.GREEN+ "▬"+Terminal.RESET); + } } System.out.print(" "); System.err.println( (int) this.player.getCurrentHealth() + "/" + (int) this.player.getMaxHealth()); @@ -112,7 +118,7 @@ public class Level{ public void playerHasEnergy(Attack attack) { this.ennemy.damage(attack.getDamage() * player.getAttackMultiplier()); player.exhaust(attack.getEnergyCost()); - System.out.println("You're using " + attack.getName() + "! You lose " + attack.getEnergyCost() + " energy points"); + System.out.println("You're using " + attack.getName() + "! You lose " + (int) attack.getEnergyCost() + " energy points"); } // affiche les règles du jeu diff --git a/src/main/java/bitFight/Main.java b/src/main/java/bitFight/Main.java index 9f3da34cbad933b8e7617062fd9171bf5adbf66d..bff4507c41078382791de978bcdd7384b2c9a5c4 100644 --- a/src/main/java/bitFight/Main.java +++ b/src/main/java/bitFight/Main.java @@ -20,6 +20,8 @@ class Main { Level level = new Level(1, player, enemy); GameData gamedata = Save.loadObject("res/gamedata"); + Display display = new Display(level); + if (gamedata != null) { player = gamedata.getPlayer(); level = gamedata.getLevelReached(); @@ -64,13 +66,13 @@ class Main { Random rand = new Random(); + // arrivée de l'ennemi + level.ennemyShowing(); Input input = new Input(); input.newInput(); Display.goToDialogBox(); - // arrivée de l'ennemi - level.ennemyShowing(); if (input.getInput().equals("a")) { @@ -137,6 +139,11 @@ class Main { level.displayEndOfLevel(); } + if (player.isDead()) { + level.playerDying(); + level.gameOver(); + } + } } diff --git a/src/test/java/bitFight/MenuTest.java b/src/test/java/bitFight/MenuTest.java index f596246cd92ce21358e3ea9c04d2355fa08f5cc3..2d3ff10f273338709151ed5f174fa8495d5147c3 100644 --- a/src/test/java/bitFight/MenuTest.java +++ b/src/test/java/bitFight/MenuTest.java @@ -1,3 +1,4 @@ + package bitFight; import java.io.IOException;