@ -7,7 +7,7 @@ public class Menu {
public void menuJeu ( ) {
public void menuJeu ( ) {
Labyrinthe lab = menuStartGame ( ) ;
Labyrinthe lab = menuStartGame ( ) ;
Marche marche = ( Marche ) lab . listePorte . get ( 0 ) . getSalle1 ( ) ;
Marche marche = ( Marche ) lab . listePorte . get ( 0 ) . getSalle1 ( ) ;
Personnage perso = menuSelection ( lab ) ;
Personnage perso = menuSelection ( lab ) ;
perso . setSalle ( lab . listePorte . get ( 0 ) . getSalle1 ( ) ) ;
perso . setSalle ( lab . listePorte . get ( 0 ) . getSalle1 ( ) ) ;
@ -20,7 +20,6 @@ public class Menu {
} while ( perso . isVivant ( ) & & ! perso . getSalle ( ) . estSortie ( ) ) ;
} while ( perso . isVivant ( ) & & ! perso . getSalle ( ) . estSortie ( ) ) ;
} catch ( Exception e ) {
} catch ( Exception e ) {
System . out . println ( e ) ;
System . out . println ( e ) ;
menuJeu ( ) ;
}
}
if ( perso . isVivant ( ) ) System . out . println ( "Felicitation vous avez vaincu le grand Neltharion ! Vous avez sauver Azeroth" ) ;
if ( perso . isVivant ( ) ) System . out . println ( "Felicitation vous avez vaincu le grand Neltharion ! Vous avez sauver Azeroth" ) ;
}
}
@ -28,7 +27,7 @@ public class Menu {
public String menuCombat ( Monstre mons , Personnage perso , Labyrinthe lab ) throws IOException {
public String menuCombat ( Monstre mons , Personnage perso , Labyrinthe lab ) throws IOException {
int degat ;
int degat ;
int reponse = 0 ;
int reponse = 0 ;
System . out . println ( "Un monstre du nom de " + mons . getNom ( ) + " se presente devant vous et il est tres en colere :") ;
System . out . println ( "Un monstre du nom de " + mons . getNom ( ) + " se presente devant vous et il est tres en colere \nIl lui reste : "+ mons . getpVie ( ) + "\nIl vous reste : " + perso . pVie + "\nVous avez " + perso . getPotion ( ) . size ( ) + " potion. ") ;
while ( true ) {
while ( true ) {
System . out . println ( "\t - 1 attaquer\n\t - 2 Potion \n\t- 3 Fuir" ) ;
System . out . println ( "\t - 1 attaquer\n\t - 2 Potion \n\t- 3 Fuir" ) ;
try {
try {
@ -39,7 +38,7 @@ public class Menu {
switch ( reponse ) {
switch ( reponse ) {
case 1 :
case 1 :
degat = perso . attaquer ( mons , lab ) ;
degat = perso . attaquer ( mons , lab ) ;
System . out . println ( "Vous infligez " + degat + " a votre adversaire.") ;
System . out . println ( "Vous infligez " + degat + " a votre adversaire.") ;
if ( ! mons . isVivant ( ) ) {
if ( ! mons . isVivant ( ) ) {
perso . setpVie ( perso . getpVieMax ( ) + 1 ) ;
perso . setpVie ( perso . getpVieMax ( ) + 1 ) ;
perso . soin ( ) ;
perso . soin ( ) ;
@ -52,7 +51,7 @@ public class Menu {
if ( ! perso . isVivant ( ) ) {
if ( ! perso . isVivant ( ) ) {
return "C'est ainsi que vous trepassez sous les coups des tenebres. Reposez vous heros... Vous avez l'eternite." ;
return "C'est ainsi que vous trepassez sous les coups des tenebres. Reposez vous heros... Vous avez l'eternite." ;
}
}
else System . out . println ( "votre ennemie n'est pas encore a bout, achevez le !") ;
else System . out . println ( "votre ennemie n'est pas encore a bout, achevez le ! \nIl lui reste :"+ mons . getpVie ( ) + "\nIl vous reste :" + perso . pVie + "\nVous avez " + perso . getPotion ( ) . size ( ) + " potion. ") ;
}
}
break ;
break ;
@ -65,13 +64,13 @@ public class Menu {
}
}
break ;
break ;
case 3 :
case 3 :
System . out . println ( "Vous tentez de fuir." ) ;
System . out . println ( "Vous tentez de fuir." ) ;
Random rd = new Random ( ) ;
Random rd = new Random ( ) ;
if ( rd . nextInt ( 100 ) < 50 ) {
if ( rd . nextInt ( 100 ) < 50 ) {
perso . soin ( ) ;
perso . soin ( ) ;
return "Vous avez fuit." ;
return "Vous avez fuit." ;
} else {
} else {
System . out . println ( "Ce fut un echec !" ) ;
System . out . println ( "Ce fut un echec !" ) ;
}
}
}
}
@ -80,9 +79,9 @@ public class Menu {
}
}
public Labyrinthe menuStartGame ( ) {
public Labyrinthe menuStartGame ( ) {
System . out . println ( "L'Aventure vous appelle ! Le choix s'offre a vous, une histoire peut s'ecrire une autre peut continuer :\n1) Nouvelle Partie\n2) Continuer votre progression") ;
System . out . println ( "L'Aventure vous appelle ! Le choix s'offre a vous, une histoire peut s'ecrire une autre peut continuer :\n1) Nouvelle Partie\n2) Continuer votre progression") ;
switch ( Clavier . entrerClavierInt ( ) ) {
switch ( Clavier . entrerClavierInt ( ) ) {
case 1 :
case 1 :
return new Labyrinthe ( ) ;
return new Labyrinthe ( ) ;
case 2 :
case 2 :
Generateur ge = new Generateur ( ) ;
Generateur ge = new Generateur ( ) ;
@ -104,7 +103,7 @@ public class Menu {
pers = lab . listePersonnage . get ( Clavier . entrerClavierInt ( ) ) ;
pers = lab . listePersonnage . get ( Clavier . entrerClavierInt ( ) ) ;
}
}
catch ( Exception e ) {
catch ( Exception e ) {
System . out . println ( "Le personnage dont vous me parlez n'existe pas." ) ;
System . out . println ( "Le personnage dont vous me parlez n'existe pas." ) ;
return null ;
return null ;
}
}
System . out . println ( "Enchante de vous rencontrer " + pers . getNom ( ) + "." ) ;
System . out . println ( "Enchante de vous rencontrer " + pers . getNom ( ) + "." ) ;
@ -114,6 +113,7 @@ public class Menu {
public void Menudeplacement ( Personnage perso , Salle salle , Labyrinthe lab ) throws IOException {
public void Menudeplacement ( Personnage perso , Salle salle , Labyrinthe lab ) throws IOException {
System . out . println ( "Choisissez une direction:\n Z) Haut\n S) Bas\n D) Droite\n Q) Gauche" ) ;
System . out . println ( "Choisissez une direction:\n Z) Haut\n S) Bas\n D) Droite\n Q) Gauche" ) ;
Salle s ;
Salle s ;
Monstre mons ;
Pair < Integer , Integer > next ;
Pair < Integer , Integer > next ;
String csb = "" ;
String csb = "" ;
switch ( Clavier . entrerClavierString ( ) ) {
switch ( Clavier . entrerClavierString ( ) ) {
@ -122,14 +122,14 @@ public class Menu {
if ( ( s = salle . findNextSalle ( next , lab ) ) = = null ) {
if ( ( s = salle . findNextSalle ( next , lab ) ) = = null ) {
System . out . println ( "Je ne connais pas cette salle" ) ;
System . out . println ( "Je ne connais pas cette salle" ) ;
Menudeplacement ( perso , salle , lab ) ;
Menudeplacement ( perso , salle , lab ) ;
break ;
} // problème pour cette boucle
}
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & csb . contentEquals ( "Vous avez fuit." ) ) {
mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
Monstre mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
csb = menuCombat ( mons , perso , lab ) ;
csb = menuCombat ( mons , perso , lab ) ;
System . out . println ( csb ) ;
}
}
if ( perso . isVivant ( ) ) {
if ( perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
System . out . println ( "vous vous d é placez") ;
System . out . println ( "vous vous d e placez") ;
perso . seDeplacer ( s ) ;
perso . seDeplacer ( s ) ;
}
}
break ;
break ;
@ -140,12 +140,13 @@ public class Menu {
Menudeplacement ( perso , salle , lab ) ;
Menudeplacement ( perso , salle , lab ) ;
break ;
break ;
}
}
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & csb . contentEquals ( "Vous avez fuit." ) ) {
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
Monstre mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
csb = menuCombat ( mons , perso , lab ) ;
csb = menuCombat ( mons , perso , lab ) ;
System . out . println ( csb ) ;
}
}
if ( perso . isVivant ( ) ) {
if ( perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
System . out . println ( "vous vous d é placez") ;
System . out . println ( "vous vous d e placez") ;
perso . seDeplacer ( s ) ;
perso . seDeplacer ( s ) ;
}
}
break ;
break ;
@ -156,12 +157,13 @@ public class Menu {
Menudeplacement ( perso , salle , lab ) ;
Menudeplacement ( perso , salle , lab ) ;
break ;
break ;
}
}
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & csb . contentEquals ( "Vous avez fuit." ) ) {
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
Monstre mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
csb = menuCombat ( mons , perso , lab ) ;
csb = menuCombat ( mons , perso , lab ) ;
System . out . println ( csb ) ;
}
}
if ( perso . isVivant ( ) ) {
if ( perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
System . out . println ( "vous vous d é placez") ;
System . out . println ( "vous vous d e placez") ;
perso . seDeplacer ( s ) ;
perso . seDeplacer ( s ) ;
}
}
break ;
break ;
@ -172,19 +174,20 @@ public class Menu {
Menudeplacement ( perso , salle , lab ) ;
Menudeplacement ( perso , salle , lab ) ;
break ;
break ;
}
}
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & csb . contentEquals ( "Vous avez fuit." ) ) {
while ( ! s . estVide ( ) & & perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
Monstre mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
mons = lab . listeMonstre . get ( s . getListeEnnemie ( ) . remove ( 0 ) ) ;
csb = menuCombat ( mons , perso , lab ) ;
csb = menuCombat ( mons , perso , lab ) ;
System . out . println ( csb ) ;
}
}
if ( perso . isVivant ( ) ) {
if ( perso . isVivant ( ) & & ! csb . contentEquals ( "Vous avez fuit." ) ) {
System . out . println ( "vous vous d é placez") ;
System . out . println ( "vous vous d e placez") ;
perso . seDeplacer ( s ) ;
perso . seDeplacer ( s ) ;
}
}
break ;
break ;
default :
default :
System . out . println ( "erreur de lecture" ) ;
System . out . println ( "erreur de lecture" ) ;
}
}
System . out . println ( "Vous etes à la salle de coordonnes "+ perso . getSalle ( ) . getCoordonnes ( ) . getKey ( ) + " " + perso . getSalle ( ) . getCoordonnes ( ) . getValue ( ) + "." ) ;
System . out . println ( "Vous etes a la salle de coordonnes "+ perso . getSalle ( ) . getCoordonnes ( ) . getKey ( ) + " " + perso . getSalle ( ) . getCoordonnes ( ) . getValue ( ) + "." ) ;
}
}
public void MenuMarche ( Personnage perso , Labyrinthe lab ) {
public void MenuMarche ( Personnage perso , Labyrinthe lab ) {
@ -193,15 +196,15 @@ public class Menu {
case "1" :
case "1" :
System . out . println ( Marche . creerObjetsAVendre ( lab ) + "\nVoulez-vous acheter une arme ? (oui/non)" ) ;
System . out . println ( Marche . creerObjetsAVendre ( lab ) + "\nVoulez-vous acheter une arme ? (oui/non)" ) ;
String selection = Clavier . entrerClavierString ( ) ;
String selection = Clavier . entrerClavierString ( ) ;
if ( selection . co mpareTo( "oui" ) > 0 ) {
if ( selection . co ntentEquals( "oui" ) ) {
System . out . println ( "Quel num é ro pour l'arme ?") ;
System . out . println ( "Quel num e ro pour l'arme ?") ;
int valeur = Clavier . entrerClavierInt ( ) ;
int valeur = Clavier . entrerClavierInt ( ) ;
if ( perso . getBourse ( ) . Achat ( lab . listeArme . get ( valeur ) ) > = 0 ) perso . equiper ( lab . listeArme . get ( valeur ) , lab ) ;
if ( perso . getBourse ( ) . Achat ( lab . listeArme . get ( valeur ) ) > = 0 ) perso . equiper ( lab . listeArme . get ( valeur ) , lab ) ;
} else {
} else {
System . out . println ( "Pourquoi Pas une armure alors ? (oui/non)" ) ;
System . out . println ( "Pourquoi Pas une armure alors ? (oui/non)" ) ;
selection = Clavier . entrerClavierString ( ) ;
selection = Clavier . entrerClavierString ( ) ;
if ( selection . compareTo ( "oui" ) > 0 ) {
if ( selection . compareTo ( "oui" ) > 0 ) {
System . out . println ( "Quel num é ro pour l'armure ?") ;
System . out . println ( "Quel num e ro pour l'armure ?") ;
int valeur = Clavier . entrerClavierInt ( ) ;
int valeur = Clavier . entrerClavierInt ( ) ;
if ( perso . getBourse ( ) . Achat ( lab . listeArmure . get ( valeur ) ) > = 0 ) perso . equiper ( lab . listeArmure . get ( valeur ) , lab ) ;
if ( perso . getBourse ( ) . Achat ( lab . listeArmure . get ( valeur ) ) > = 0 ) perso . equiper ( lab . listeArmure . get ( valeur ) , lab ) ;
}
}
@ -213,4 +216,3 @@ public class Menu {
}
}
}
}
}
}