Modif structure

This commit is contained in:
Nicolas 2019-05-07 15:35:10 +02:00
parent 51722ab44e
commit ec34ad47b8
10 changed files with 237 additions and 106 deletions

View File

@ -6,21 +6,24 @@
"pVieMax":10, "pVieMax":10,
"pVie":10, "pVie":10,
"pAttaque":20, "pAttaque":20,
"arme":"", "arme":null,
"armure":"", "armure":null,
"bourse":100 "bourse":null
} }
], ],
"listeSalle":[ "listeSalle":[
{"positionX":0, {
"positionX":0,
"positionY":0, "positionY":0,
"sortie":false, "sortie":false,
"monstre":[{"nom":"premiermonstre", "listeEnnemie":[{"nom":"premiermonstre",
"pAttaque":5} "pAttaque":5}
], ],
"porte":[{"ouvert":true, "listePorte":[{"ouvert":true,
"position":"H"}] "orientation":"H"}]
} }
], ],
"listeArme":[ "listeArme":[
@ -31,6 +34,16 @@
"listeArmure":[ {"nom":"armure1", "listeArmure":[ {"nom":"armure1",
"prix":10, "prix":10,
"resistance":10, "resistance":10,
"pArmure":10}] "pArmure":10}],
"listePorte":[
{
"id":1,
"ouvert":false,
"orientation":"Z",
}
],
"listeMonstre":[{"nom":"premiermonstre",
"pAttaque":5}]
} }

View File

@ -13,7 +13,7 @@ public class main {
Generateur gene = new Generateur(); Generateur gene = new Generateur();
Labyrinthe lab = gene.labyrithe(); Labyrinthe lab = gene.labyrithe();
//lab.getListeSalle(); //lab.getListeSalle();
Monstre monstre =new Monstre("test",5);
Arme arme = new Arme("arme1", 10, 10, 10); Arme arme = new Arme("arme1", 10, 10, 10);
System.out.println(""); System.out.println("");

View File

@ -14,7 +14,7 @@ public class EtreVivant {
protected int pVieMax; protected int pVieMax;
protected int pVie; protected int pVie;
private int pAttaque; private int pAttaque;
//protected Salle salle; protected Salle salle;
private boolean vivant; private boolean vivant;
/** /**
* @param nom * @param nom
@ -27,13 +27,13 @@ public class EtreVivant {
public EtreVivant() { public EtreVivant() {
} }
public EtreVivant(String nom, int pVieMax, int pAttaque) { public EtreVivant(String nom, int pVieMax, int pAttaque,Salle salle) {
super(); super();
this.nom = nom; this.nom = nom;
this.pVieMax = pVieMax; this.pVieMax = pVieMax;
this.pVie = pVieMax; this.pVie = pVieMax;
this.pAttaque = pAttaque; this.pAttaque = pAttaque;
this.salle=salle;
this.vivant = true; this.vivant = true;
} }
/** /**

View File

@ -11,13 +11,50 @@ import java.util.*;
*/ */
public class Labyrinthe { public class Labyrinthe {
protected List<Personnage> listePersonnage=new ArrayList<Personnage>(); protected List<Personnage> listePersonnage=new ArrayList<Personnage>();
protected List<Salle>listeSalle= new ArrayList<Salle>();
protected List<Arme> listeArme= new ArrayList<Arme>(); protected List<Arme> listeArme= new ArrayList<Arme>();
protected List<Armure> listeArmure=new ArrayList<Armure>(); protected List<Armure> listeArmure=new ArrayList<Armure>();
protected List<Porte> listePorte=new ArrayList<Porte>();
protected List<Monstre> listeMonstre=new ArrayList<Monstre>();
public void generateLabyrinthe() {
public void generateLabyrinthe(int nInstance) {
/*switch (nInstance)
case 1 :
return Labyrinthe1();
break;
}*/
labyrinthe1();
} }
public void labyrinthe1() {
Arme arme=new Arme("épée en bois",5,10,2);
listeArme.add(arme);
Arme arme1=new Arme("épée en acier",15,10,4);
listeArme.add(arme1);
Arme arme2=new Arme("épée en acier solide",25,20,4);
listeArme.add(arme2);
Arme arme3=new Arme("épée de cristal",30,5,7);
listeArme.add(arme3);
Arme arme4=new Arme("Lame Blanche",200,30,10);
listeArme.add(arme4);
Armure armure1=new Armure("armure de cuir",10,10,5);
listeArmure.add(armure1);
Armure armure=new Armure("armure en papier",5,5,2);
listeArmure.add(armure);
Armure armure2=new Armure("armure de fer",30,10,5);
listeArmure.add(armure2);
Armure armure3=new Armure("Le kevlar",150,15,8);
listeArmure.add(armure3);
Personnage perso=new Personnage("Aramis",10,1,null);
listePersonnage.add(perso);
Personnage perso2=new Personnage("Boromis",8,2,null);
listePersonnage.add(perso2);
Marche marche = new Marche();
}
} }

View File

@ -0,0 +1,56 @@
/**
*
*/
package modeles;
/**
* @author nicolas
*
*/
public class Menu {
public String menuCombat(Monstre mons, Personnage perso) {
int degat;
int reponse = 0;
System.out.println("Un monstre du nom de "+mons.getNom()+" se présente devant vous et il est très en colère :");
while (true){
System.out.println("\t - 1° attaquer\n\t - 2° Potion \n\t- 3° Fuir");
reponse=Clavier.entrerClavierInt();
switch (reponse) {
case 1:
degat = perso.attaquer(mons);
System.out.println("Vous avez infligé "+degat+" à votre adversaire.");
if (!mons.isVivant()) {
perso.salle.cle();
return "Votre ennemie trépasse et vous obtenez la clé des portes de la salle.";
} else {
System.out.println("Au tour de votre adversaire. Il attaque préparez vous ! ");
System.out.println("il vous inflige "+ mons.attaquer(perso)+".");
if (!perso.isVivant()) {
return "C'est ainsi que vous trépassez sous les coups des ténèbres. Reposez vous héros... Vous avez l'éternité.";
}
else System.out.println("votre ennemie n'est pas encore à bout achever le !");
}
break;
case 2 :
if (!perso.getPotion().isEmpty()) {
perso.utiliser(perso.getPotion().remove(0));
System.out.println("Vous avez utilisé une potion. Votre vie est maintenant au maximum.");
} else {
System.out.println("Il ne vous reste plus de potion. Désolé.");
}
break;
case 3 :
System.out.println("Vous tentez de fuir.");
Random rd = new Random();
if (rd.nextInt(100)<50) {
return "Vous avez fuit.";
} else {
System.out.println("Ce fut un échec !");
}
}
}
}s
}

View File

@ -21,13 +21,14 @@ public class Monstre extends EtreVivant {
public Monstre() { public Monstre() {
} }
/*
public int attaquer(Personnage def) { public int attaquer(Personnage def) {
int pAttaqueLoc; int pAttaqueLoc;
pAttaqueLoc=this.getpAttaque()-(def.getArmure().getpArmure()); pAttaqueLoc=this.getpAttaque()-(def.getArmure().getpArmure());
def.pVie=pAttaqueLoc; def.pVie=pAttaqueLoc;
return pAttaqueLoc; return pAttaqueLoc;
} }*/

View File

@ -10,7 +10,7 @@ public abstract class Objet {
private int usure; private int usure;
private Personnage proprietaire; private Personnage proprietaire;
public Objet() {}
public Objet(String nm, int valeur, int resistance) { public Objet(String nm, int valeur, int resistance) {
this.nom=nm; this.nom=nm;
this.prix=valeur; this.prix=valeur;
@ -29,9 +29,9 @@ public abstract class Objet {
return this.usure; return this.usure;
} }
public void utilisation() { // diminue la résistance de l'objet public void utilisation() { // diminue la r<EFBFBD>sistance de l'objet
this.usure--; this.usure--;
if (this.usure == 0) System.out.println(this.nom+"s'est cassée !"); if (this.usure == 0) System.out.println(this.nom+"s'est cass<EFBFBD>e !");
} }
public abstract String getType(); public abstract String getType();

View File

@ -1,20 +1,20 @@
package modeles; package modeles;
/** import java.util.ArrayList;
* @author Nicolas import java.util.List;
*
*/
public class Personnage extends EtreVivant { public class Personnage extends EtreVivant {
private Arme arme; private Arme arme;
private Armure armure; private Armure armure;
private Bourse bourse; private Bourse bourse;
public Personnage(){} private List<Potion> listepotion= new ArrayList<Potion>();
public Personnage(String nom, int pVieMax,int pAttaque) {
super(nom, pVieMax, pAttaque); public Personnage(String nom, int pVieMax,int pAttaque, Salle salle) {
super(nom, pVieMax, pAttaque, salle);
} }
public void equiper(Arme arme) { public void equiper(Arme arme) {
arme.setProprietaire(this); arme.setProprietaire(this);
this.arme=arme; this.arme=arme;
} }
@ -24,29 +24,41 @@ public void equiper(Armure armure) {
} }
public void utiliser(Potion potion) { public void utiliser(Potion potion) {
soin();
System.out.println("Pv au maximum");
potion.utilisation();
} }
/*
public void seDeplacer(Salle salle) { public void seDeplacer(Salle salle) {
this.salle=salle; this.salle=salle;
} }
*/
public void allerMarche(Salle marche){
this.salle=marche;
}
public List<Potion> getPotion() {
return this.listepotion;
}
public void gagnerUnePotion() {
Potion potion=new Potion(100);
listepotion.add(potion);
}
public void soin() {
this.pVie=this.pVieMax;
}
public int attaquer(Monstre monstre) { public int attaquer(Monstre monstre) {
int pAttaqueLoc;
if(arme!=null) { if(arme!=null) {
pAttaqueLoc=monstre.pVie-(arme.getpArme()+this.getpAttaque()); monstre.pVie=monstre.pVie-(arme.getpArme()+getpAttaque());
monstre.pVie=pAttaqueLoc; return arme.getpArme()+getpAttaque();
} }
else { else {
pAttaqueLoc=this.getpAttaque(); monstre.pVie=monstre.pVie=getpAttaque();
monstre.pVie=pAttaqueLoc; return getpAttaque();
} }
return pAttaqueLoc;
} }
public Bourse getBourse() { public Bourse getBourse() {
return this.bourse; return this.bourse;
} }
@ -54,15 +66,13 @@ public void equiper(Armure armure) {
public void getValeurBourse() { public void getValeurBourse() {
System.out.println(this.getBourse().getValeur()); System.out.println(this.getBourse().getValeur());
} }
/** /* @return the arme
* @return the arme
*/ */
public Arme getArme() { public Arme getArme() {
return arme; return arme;
} }
/** /* @return the armure
* @return the armure
*/ */
public Armure getArmure() { public Armure getArmure() {
return armure; return armure;

View File

@ -3,30 +3,36 @@
*/ */
package modeles; package modeles;
import java.util.ArrayList;
/** /**
* @author flavien * @author flavien
* *
*/ */
public class Porte { public class Porte {
private int id;
private boolean ouvert; private boolean ouvert;
private char orientation; private Salle salle1;
private Salle salle2;
public Porte() { public Porte() {
} }
public Porte(boolean ouvert, char orientation) { public Porte(int id,boolean ouvert, Salle salle,Salle salle2) {
super(); super();
this.ouvert = ouvert; this.ouvert = ouvert;
this.orientation = orientation; this.salle1 = salle;
this.salle2 = salle2;
this.id=id;
} }
public boolean estOuverte() { public boolean estOuverte() {
return ouvert; return ouvert;
} }
public char getOrientation() { public int getId(){
return orientation; return this.id;
} }
/** /**

View File

@ -18,21 +18,29 @@ public class Salle {
* @param listePorte * @param listePorte
*/ */
public Salle(int positionX, int positionY, boolean sortie, List listeEnnemie, List<Porte> listePorte) { public Salle(int positionX, int positionY, boolean sortie, List<Integer> listeEnnemie) {
this.positionX=positionX; this.positionX=positionX;
this.positionY = positionY; this.positionY = positionY;
this.sortie = sortie; this.sortie = sortie;
this.listeEnnemie = listeEnnemie; this.listeEnnemie = listeEnnemie;
this.listePorte = listePorte;
} }
public Salle(int positionX, int positionY, boolean sortie, List<Integer> listeEnnemie, Porte sal) {
this.positionX = positionX;
this.positionY = positionY;
this.sortie = sortie;
this.listeEnnemie = listeEnnemie;
this.listePorte.add(sal.getId());
}
public Salle() { public Salle() {
} }
private static int positionY; private static int positionY;
private static boolean sortie; private static boolean sortie;
private static List<Monstre> listeEnnemie= new ArrayList<Monstre>(); private static List<Integer> listeEnnemie= new ArrayList<Integer>();
private static List<Porte> listePorte = new ArrayList<Porte>(); private static List<Integer> listePorte = new ArrayList<Integer>();
public String getType(){ public String getType(){
return "salle"; return "salle";