diff --git a/S1.02/Jeu/classes/Labyrinthe.class b/S1.02/Jeu/classes/Labyrinthe.class index bb1d804d06369a1691cf94215cc3450092e2c066..abd0cb2977698becac491c4a007903001f699889 100644 Binary files a/S1.02/Jeu/classes/Labyrinthe.class and b/S1.02/Jeu/classes/Labyrinthe.class differ diff --git a/S1.02/Jeu/ressources/img/Score.txt b/S1.02/Jeu/ressources/img/Score.txt index 2725b4d37330901568aa279bb60439bd6a793b61..cbbdfc9432762c8962d0bc3789a50d4e5296c146 100644 --- a/S1.02/Jeu/ressources/img/Score.txt +++ b/S1.02/Jeu/ressources/img/Score.txt @@ -1,6 +1,6 @@ ################################################################################ -####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#### -####@ ____ @#### +################################################################################ +#### ____ #### #### / ___| ___ ___ _ __ ___ #### #### \___ \ / __/ _ \| '__/ _ \ #### #### ___) | (_| (_) | | | __/ #### @@ -9,5 +9,4 @@ #### #### #### #### #### Pseudo : Score : #### -#### #### - \ No newline at end of file +#### #### \ No newline at end of file diff --git a/S1.02/Jeu/ressources/img/fermeScore.txt b/S1.02/Jeu/ressources/img/fermeScore.txt new file mode 100644 index 0000000000000000000000000000000000000000..6a7d946e480b0d2e5c22c2d6b22ac48be9a0d960 --- /dev/null +++ b/S1.02/Jeu/ressources/img/fermeScore.txt @@ -0,0 +1,4 @@ +#### #### +#### #### +################################################################################ +################################################################################ \ No newline at end of file diff --git a/S1.02/Jeu/ressources/score.csv b/S1.02/Jeu/ressources/score.csv index 3c1fa638a682645b1eb32b010a31c884d2390afc..4ada94c231b1189bc06c452e701c504d2d281e0f 100644 --- a/S1.02/Jeu/ressources/score.csv +++ b/S1.02/Jeu/ressources/score.csv @@ -1,7 +1,7 @@ Pseudo,Score -j,91 -Hydro,38 -Alex,37 -Bob,37 -Testeur,34 -Test,32 +J1,32 +J2,5 +J3,4 +J4,3 +J5,2 +J6,1 diff --git a/S1.02/Jeu/src/Labyrinthe.java b/S1.02/Jeu/src/Labyrinthe.java index 0fb47bceaeb09a1ffc8495ad5e23a69dbd3f92c3..c27167286f80938da1855e064ee6923d1f216c82 100644 --- a/S1.02/Jeu/src/Labyrinthe.java +++ b/S1.02/Jeu/src/Labyrinthe.java @@ -253,23 +253,14 @@ class Labyrinthe extends Program{ afficheQuestion(q, true); if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre Lab[positionL-1][positionC] = '.'; - j.score += 1; - j.aJouee = true; + addScoreMonstre(j); } else { - j.vie -= 10; - j.aJouee = true; + perteHP(j); } } else if(Lab[positionL-1][positionC] == 'B' && !j.aJouee){ //Si Monstre, affiche la question. Question q = questionRandom(listeBoss, 0); afficheQuestion(q, true); - if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre - j.bossVaincu = true; - j.score += 30; - j.aJouee = true; - } else { - j.vie -= 10; - j.aJouee = true; - } + updateBoss(q, j); } else if(Lab[positionL-1][positionC] == 'S'){ Lab[positionL][positionC] = '.'; return changeSalle(Lab, positionL-1, positionC, indiceSalle); @@ -286,23 +277,14 @@ class Labyrinthe extends Program{ afficheQuestion(q, true); if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre Lab[positionL+1][positionC] = '.'; - j.score += 1; - j.aJouee = true; + addScoreMonstre(j); } else { - j.vie -= 10; - j.aJouee = true; + perteHP(j); } } else if(Lab[positionL+1][positionC] == 'B' && !j.aJouee){ //Si Monstre, affiche la question. Question q = questionRandom(listeBoss, 0); afficheQuestion(q, true); - if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre - j.bossVaincu = true; - j.score += 30; - j.aJouee = true; - } else { - j.vie -= 10; - j.aJouee = true; - } + updateBoss(q, j); } else if (Lab[positionL+1][positionC] == 'S'){ Lab[positionL][positionC] = '.'; return changeSalle(Lab, positionL+1, positionC, indiceSalle); @@ -319,23 +301,14 @@ class Labyrinthe extends Program{ afficheQuestion(q, true); if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre Lab[positionL][positionC-1] = '.'; - j.score += 1; - j.aJouee = true; + addScoreMonstre(j); } else { - j.vie -= 10; - j.aJouee = true; + perteHP(j); } } else if(Lab[positionL][positionC-1] == 'B' && !j.aJouee){ //Si Monstre, affiche la question. Question q = questionRandom(listeBoss, 0); afficheQuestion(q, true); - if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre - j.bossVaincu = true; - j.score += 30; - j.aJouee = true; - } else { - j.vie -= 10; - j.aJouee = true; - } + updateBoss(q, j); } else if (Lab[positionL][positionC-1] == 'S'){ Lab[positionL][positionC] = '.'; return changeSalle(Lab, positionL, positionC-1, indiceSalle); @@ -352,23 +325,14 @@ class Labyrinthe extends Program{ afficheQuestion(q, true); if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre Lab[positionL][positionC+1] = '.'; - j.score += 1; - j.aJouee = true; + addScoreMonstre(j); } else { - j.aJouee = true; - j.vie -= 10; + perteHP(j); } } else if(Lab[positionL][positionC+1] == 'B' && !j.aJouee){ //Si Monstre, affiche la question. Question q = questionRandom(listeBoss, 0); afficheQuestion(q, true); - if(questionCorrect(q)){ //En cas de bonne réponse efface le monstre - j.aJouee = true; - j.bossVaincu = true; - j.score += 30; - } else { - j.aJouee = true; - j.vie -= 10; - } + updateBoss(q, j); } else if (Lab[positionL][positionC+1] == 'S'){ Lab[positionL][positionC] = '.'; return changeSalle(Lab, positionL, positionC+1, indiceSalle); @@ -378,6 +342,26 @@ class Labyrinthe extends Program{ return new int[]{positionL, positionC}; } + void updateBoss(Question q, Joueur j){ + if(questionCorrect(q)){ //En cas de bonne réponse ajoute 30 au score et indique que le boss est vaincu + j.aJouee = true; + j.bossVaincu = true; + j.score += 30; + } else { + perteHP(j); + } + } + + void perteHP(Joueur j){ + j.vie -= 10; + j.aJouee = true; + } + + void addScoreMonstre(Joueur j){ + j.score += 1; + j.aJouee = true; + } + String formatIntituler(String intituler, int tailleTotal, int tailleLigne){ //prend une chaine de caractère et la renvoie sous le format donné String res = ""; int format = 0; @@ -499,7 +483,7 @@ class Labyrinthe extends Program{ } println("#### " + file[i][0] + vide + file[i][1] + " ####"); } - println(readFile("ressources/img/fermeEntete.txt", true)); + println(readFile("ressources/img/fermeScore.txt", true)); } Question[] listeQuestion(String cheminFichier){ //Charge le csv des question et renvoie un tableau de question qui possède une Question par case