Skip to content
Snippets Groups Projects
Commit 983d314d authored by Kellian Mirey's avatar Kellian Mirey
Browse files

First patch for display main

parent 060ec1ff
No related branches found
No related tags found
No related merge requests found
________________________________________________________________________________________________________________________
...@@ -13,7 +13,7 @@ ________________________________________________________________________________ ...@@ -13,7 +13,7 @@ ________________________________________________________________________________
Commandes : Commandes :
a - Attaquer a - Action
q - Quitter q - Quitter
________________________________________________________________________________________________________________________ ________________________________________________________________________________________________________________________
\ No newline at end of file
...@@ -31,20 +31,27 @@ public class Display { ...@@ -31,20 +31,27 @@ public class Display {
} }
public static void goToDialogBox(){ public static void goToDialogBox(){
setCursorPos(row+7,0); setCursorPos(1,0);
//System.out.flush();
} }
public static void clearDialogBox() throws IOException{ public static void clearDialogBox(){
clearScreen(); clearScreen();
setCursorPos(row, 0); setCursorPos(row, 0);
printDialogBox(); printDialogBox();
goToDialogBox(); goToDialogBox();
} }
public static void printDialogBox() throws IOException{ public static void printDialogBox(){
setCursorPos(50, 0); setCursorPos(100, 0);
String dialogBox = loadTextFile("assets/DialogBox.text"); String dialogBox = "";
try {
dialogBox = loadTextFile("assets/DialogBox.text");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(dialogBox); System.out.println(dialogBox);
} }
...@@ -52,7 +59,7 @@ public class Display { ...@@ -52,7 +59,7 @@ public class Display {
setCursorPos(50, 0); setCursorPos(50, 0);
} }
public static void newPrintln(String text) throws IOException{ public static void newPrintln(String text){
clearDialogBox(); clearDialogBox();
System.out.println(text); System.out.println(text);
goToUserInput(); goToUserInput();
......
...@@ -37,11 +37,7 @@ public class Input { ...@@ -37,11 +37,7 @@ public class Input {
e.printStackTrace(); e.printStackTrace();
} }
} catch (InvalidInputException e) { } catch (InvalidInputException e) {
try { Display.newPrintln(e.getMessage());
Display.newPrintln(e.getMessage());
} catch (IOException e1) {
e1.printStackTrace();
}
} }
} }
while (!validInput()); while (!validInput());
......
...@@ -59,13 +59,16 @@ public class Level{ ...@@ -59,13 +59,16 @@ public class Level{
// annonce un nouvel ennemi // annonce un nouvel ennemi
public void ennemyShowing() { public void ennemyShowing() {
System.out.println("An ennemy just appeared : " + this.ennemy.toString()); System.out.println("An ennemy just appeared : " + this.ennemy.toString());
System.out.println();
} }
public void ennemyFaster(Attack attack) { public void ennemyFaster(Attack attack) {
Display.clearDialogBox();
System.out.println("The ennemy attacks before you can !"); System.out.println("The ennemy attacks before you can !");
player.setCurrentHealth(player.getCurrentHealth() - attack.getDamage() * this.ennemy.getAttackMultiplier()); //Récupère une attaque aléatoire dans l'enum player.setCurrentHealth(player.getCurrentHealth() - attack.getDamage() * this.ennemy.getAttackMultiplier()); //Récupère une attaque aléatoire dans l'enum
System.out.println(attack.getName() + "!! You're getting " + (int) attack.getDamage() * this.ennemy.getAttackMultiplier() + " of damage!"); System.out.println(attack.getName() + "!! You're getting " + (int) attack.getDamage() * this.ennemy.getAttackMultiplier() + " of damage!");
System.out.println(this.player.getName() + "'s life' : " + this.displayPlayerHealth()); System.out.println(this.player.getName() + "'s life' : " + this.displayPlayerHealth());
Display.goToUserInput();
} }
// affiche la jauge de vie de l'ennemi // affiche la jauge de vie de l'ennemi
...@@ -109,14 +112,18 @@ public class Level{ ...@@ -109,14 +112,18 @@ public class Level{
// méthodes de combats // méthodes de combats
// liste des attaques et défenses possibles pour le joueur // liste des attaques et défenses possibles pour le joueur
public void possibleActions() { public void possibleActions() {
Display.clearDialogBox();
System.out.println("Possible attacks are : \n \t punch, kick, double kick, supermanpunch. \""); System.out.println("Possible attacks are : \n \t punch, kick, double kick, supermanpunch. \"");
System.out.println("Possible defenses are : \n \t lowblock, highblock\""); System.out.println("Possible defenses are : \n \t lowblock, highblock\"");
Display.goToUserInput();
} }
// quand l'utilisateur choisit une action qui n'existe pas // quand l'utilisateur choisit une action qui n'existe pas
public void invalidActionChoice() { public void invalidActionChoice() {
Display.clearDialogBox();
System.out.println("This action is not available."); System.out.println("This action is not available.");
possibleActions(); possibleActions();
Display.goToUserInput();
} }
// méthodes de paramètrages // méthodes de paramètrages
......
...@@ -46,9 +46,11 @@ class Main { ...@@ -46,9 +46,11 @@ class Main {
Display.goToDialogBox(); Display.goToDialogBox();
Display.newPrintln(Terminal.RED_BACKGROUND + "ATTAQUEZ" + Terminal.RESET + " ou " + Terminal.PURPLE_BACKGROUND + "QUITTEZ" + Terminal.RESET); // arrivée de l'ennemi
level.ennemyShowing();
level.displayGameRules(); Display.newPrintln(enemy.toString());
Display.newPrintln(Terminal.RED_BACKGROUND + "ATTAQUEZ" + Terminal.RESET + " ou " + Terminal.PURPLE_BACKGROUND + "QUITTEZ" + Terminal.RESET);
Display.goToUserInput(); Display.goToUserInput();
...@@ -68,15 +70,13 @@ class Main { ...@@ -68,15 +70,13 @@ class Main {
if (input.getInput().equals("a")) { if (input.getInput().equals("a")) {
while (!input.getInput().equals("q") && !enemy.isDead() && !player.isDead()) { while (!input.getInput().equals("q") && !enemy.isDead() && !player.isDead()) {
//A garder au début de la boucle, mesure le temps que le joueur à pris d'écrire //A garder au début de la boucle, mesure le temps que le joueur à pris d'écrire
LocalDateTime timeBeforeAttack = LocalDateTime.now(); LocalDateTime timeBeforeAttack = LocalDateTime.now();
int attackTime = 5 - (int)(5 * rand.nextDouble()); int attackTime = 5 - (int)(5 * rand.nextDouble());
// arrivée de l'ennemi if (input.getInput().equals("a")) {
level.ennemyShowing();
level.possibleActions(); level.possibleActions();
input.newInput(); input.newInput();
...@@ -94,9 +94,7 @@ class Main { ...@@ -94,9 +94,7 @@ class Main {
if (!actionNames.contains(input.getInput())){ if (!actionNames.contains(input.getInput())){
Display.clearDialogBox(); Display.clearDialogBox();
level.invalidActionChoice(); level.invalidActionChoice();
input.newInput(); input.newInput(in.readLine());
System.out.println(actionNames.toString());
System.out.println(input.getInput());
} }
} }
...@@ -112,7 +110,9 @@ class Main { ...@@ -112,7 +110,9 @@ class Main {
Display.newPrintln(enemy.toString()); Display.newPrintln(enemy.toString());
//Display.clearDialogBox(); //Display.clearDialogBox();
input.newInput(in.readLine());
if (enemy.isDead()){ if (enemy.isDead()){
level.ennemyDying(); level.ennemyDying();
player.revive(); player.revive();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment