diff --git a/JAVA/PROJET-PMT_STRI1A/src/json/lab.json b/JAVA/PROJET-PMT_STRI1A/src/json/lab.json index 6844518..0387f65 100755 --- a/JAVA/PROJET-PMT_STRI1A/src/json/lab.json +++ b/JAVA/PROJET-PMT_STRI1A/src/json/lab.json @@ -6,22 +6,25 @@ "pVieMax":10, "pVie":10, "pAttaque":20, - "arme":"", - "armure":"", - "bourse":100 + "arme":null, + "armure":null, + "bourse":null + } ], "listeSalle":[ - {"positionX":0, + { + "positionX":0, "positionY":0, "sortie":false, - "monstre":[{"nom":"premiermonstre", + "listeEnnemie":[{"nom":"premiermonstre", "pAttaque":5} ], - "porte":[{"ouvert":true, - "position":"H"}] - } + "listePorte":[{"ouvert":true, + "orientation":"H"}] + + } ], "listeArme":[ {"nom":"arme1", @@ -31,6 +34,16 @@ "listeArmure":[ {"nom":"armure1", "prix":10, "resistance":10, - "pArmure":10}] + "pArmure":10}], + +"listePorte":[ + { + "id":1, + "ouvert":false, + "orientation":"Z", + } +], +"listeMonstre":[{"nom":"premiermonstre", + "pAttaque":5}] } diff --git a/JAVA/PROJET-PMT_STRI1A/src/json/main.java b/JAVA/PROJET-PMT_STRI1A/src/json/main.java index 1c4235b..40dbd82 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/json/main.java +++ b/JAVA/PROJET-PMT_STRI1A/src/json/main.java @@ -13,7 +13,7 @@ public class main { Generateur gene = new Generateur(); Labyrinthe lab = gene.labyrithe(); //lab.getListeSalle(); - + Monstre monstre =new Monstre("test",5); Arme arme = new Arme("arme1", 10, 10, 10); System.out.println(""); diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java index 419932c..d832d99 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java @@ -14,7 +14,7 @@ public class EtreVivant { protected int pVieMax; protected int pVie; private int pAttaque; - //protected Salle salle; + protected Salle salle; private boolean vivant; /** * @param nom @@ -27,13 +27,13 @@ public class EtreVivant { public EtreVivant() { } - public EtreVivant(String nom, int pVieMax, int pAttaque) { + public EtreVivant(String nom, int pVieMax, int pAttaque,Salle salle) { super(); this.nom = nom; this.pVieMax = pVieMax; this.pVie = pVieMax; this.pAttaque = pAttaque; - + this.salle=salle; this.vivant = true; } /** diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java index 544c663..df59ec1 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java @@ -11,13 +11,50 @@ import java.util.*; */ public class Labyrinthe { protected List listePersonnage=new ArrayList(); - protected ListlisteSalle= new ArrayList(); protected List listeArme= new ArrayList(); protected List listeArmure=new ArrayList(); + protected List listePorte=new ArrayList(); + protected List listeMonstre=new ArrayList(); - 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(); + + } } diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Menu.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Menu.java new file mode 100644 index 0000000..f46ea88 --- /dev/null +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Menu.java @@ -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 +} diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java index 53ca121..3215d57 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java @@ -21,13 +21,14 @@ public class Monstre extends EtreVivant { public Monstre() { } + /* public int attaquer(Personnage def) { int pAttaqueLoc; pAttaqueLoc=this.getpAttaque()-(def.getArmure().getpArmure()); def.pVie=pAttaqueLoc; return pAttaqueLoc; -} +}*/ diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Objet.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Objet.java index 9e59ae0..02861e0 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Objet.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Objet.java @@ -10,7 +10,7 @@ public abstract class Objet { private int usure; private Personnage proprietaire; - + public Objet() {} public Objet(String nm, int valeur, int resistance) { this.nom=nm; this.prix=valeur; @@ -29,9 +29,9 @@ public abstract class Objet { return this.usure; } - public void utilisation() { // diminue la résistance de l'objet + public void utilisation() { // diminue la r�sistance de l'objet 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�e !"); } public abstract String getType(); diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java index 1921550..afabc47 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java @@ -1,75 +1,85 @@ -package modeles; - -/** - * @author Nicolas - * - */ -public class Personnage extends EtreVivant { - private Arme arme; - private Armure armure; - private Bourse bourse; - public Personnage(){} - public Personnage(String nom, int pVieMax,int pAttaque) { - super(nom, pVieMax, pAttaque); - } - - public void equiper(Arme arme) { - - arme.setProprietaire(this); - this.arme=arme; - } -public void equiper(Armure armure) { - armure.setProprietaire(this); - this.armure=armure; - } - - public void utiliser(Potion potion) { - - System.out.println("Pv au maximum"); - potion.utilisation(); - } - /* - public void seDeplacer(Salle salle) { - this.salle=salle; - } - */ - - - public int attaquer(Monstre monstre) { - int pAttaqueLoc; - if(arme!=null) { - pAttaqueLoc=monstre.pVie-(arme.getpArme()+this.getpAttaque()); - monstre.pVie=pAttaqueLoc; - } - else { - pAttaqueLoc=this.getpAttaque(); - monstre.pVie=pAttaqueLoc; - } - return pAttaqueLoc; -} - public Bourse getBourse() { - return this.bourse; - } - - public void getValeurBourse() { - System.out.println(this.getBourse().getValeur()); - } - /** - * @return the arme - */ - public Arme getArme() { - return arme; - } - - /** - * @return the armure - */ - public Armure getArmure() { - return armure; - } - - public void soin(int heal) { - if (pVie+heal > pVieMax)pVie=pVieMax; - else pVie+=heal; - } -} +package modeles; + +import java.util.ArrayList; +import java.util.List; + +public class Personnage extends EtreVivant { + + private Arme arme; + private Armure armure; + private Bourse bourse; + private List listepotion= new ArrayList(); + + public Personnage(String nom, int pVieMax,int pAttaque, Salle salle) { + super(nom, pVieMax, pAttaque, salle); + } + + public void equiper(Arme arme) { + arme.setProprietaire(this); + this.arme=arme; + } +public void equiper(Armure armure) { + armure.setProprietaire(this); + this.armure=armure; + } + + public void utiliser(Potion potion) { + soin(); + } + + public void seDeplacer(Salle salle) { + this.salle=salle; + } + + public void allerMarche(Salle marche){ + this.salle=marche; + } + + public List 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) { + if(arme!=null) { + monstre.pVie=monstre.pVie-(arme.getpArme()+getpAttaque()); + return arme.getpArme()+getpAttaque(); + } + else { + monstre.pVie=monstre.pVie=getpAttaque(); + return getpAttaque(); + } + } + + public Bourse getBourse() { + return this.bourse; + } + + public void getValeurBourse() { + System.out.println(this.getBourse().getValeur()); + } + /* @return the arme + */ + public Arme getArme() { + return arme; + } + + /* @return the armure + */ + public Armure getArmure() { + return armure; + } + + public void soin(int heal) { + if (pVie+heal > pVieMax)pVie=pVieMax; + else pVie+=heal; + } +} \ No newline at end of file diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Porte.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Porte.java index ca4fd90..091e78e 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Porte.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Porte.java @@ -3,32 +3,38 @@ */ package modeles; +import java.util.ArrayList; + /** * @author flavien * */ public class Porte { + private int id; private boolean ouvert; - private char orientation; + private Salle salle1; + private Salle salle2; public Porte() { } - public Porte(boolean ouvert, char orientation) { + public Porte(int id,boolean ouvert, Salle salle,Salle salle2) { super(); this.ouvert = ouvert; - this.orientation = orientation; + this.salle1 = salle; + this.salle2 = salle2; + this.id=id; } public boolean estOuverte() { return ouvert; } - public char getOrientation() { - return orientation; + public int getId(){ + return this.id; } - + /** * @param ouvert * @param orientation diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Salle.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Salle.java index f4d3e40..1e6faf7 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Salle.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Salle.java @@ -18,21 +18,29 @@ public class Salle { * @param listePorte */ - public Salle(int positionX, int positionY, boolean sortie, List listeEnnemie, List listePorte) { + public Salle(int positionX, int positionY, boolean sortie, List listeEnnemie) { + this.positionX=positionX; + this.positionY = positionY; + this.sortie = sortie; + this.listeEnnemie = listeEnnemie; + } + + public Salle(int positionX, int positionY, boolean sortie, List listeEnnemie, Porte sal) { this.positionX = positionX; this.positionY = positionY; this.sortie = sortie; this.listeEnnemie = listeEnnemie; - this.listePorte = listePorte; + this.listePorte.add(sal.getId()); } + public Salle() { } private static int positionY; private static boolean sortie; - private static List listeEnnemie= new ArrayList(); - private static List listePorte = new ArrayList(); + private static List listeEnnemie= new ArrayList(); + private static List listePorte = new ArrayList(); public String getType(){ return "salle";