diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Clavier.java b/JAVA/PROJET-PMT_STRI1A/src/fonctionnement/Clavier.java similarity index 92% rename from JAVA/PROJET-PMT_STRI1A/src/modeles/Clavier.java rename to JAVA/PROJET-PMT_STRI1A/src/fonctionnement/Clavier.java index 0a3d448..c294e81 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Clavier.java +++ b/JAVA/PROJET-PMT_STRI1A/src/fonctionnement/Clavier.java @@ -1,4 +1,4 @@ -package modeles; +package fonctionnement; import java.util.InputMismatchException; import java.util.Scanner; @@ -17,7 +17,7 @@ public class Clavier { return chaine; } - static int entrerClavierInt() { + public static int entrerClavierInt() { int entier=0; try { entier = scanner.nextInt(); diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Menu.java b/JAVA/PROJET-PMT_STRI1A/src/fonctionnement/Menu.java similarity index 77% rename from JAVA/PROJET-PMT_STRI1A/src/modeles/Menu.java rename to JAVA/PROJET-PMT_STRI1A/src/fonctionnement/Menu.java index a738eea..8a256bf 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Menu.java +++ b/JAVA/PROJET-PMT_STRI1A/src/fonctionnement/Menu.java @@ -1,17 +1,19 @@ -package modeles; +package fonctionnement; +import labyrinthe.*; +import modeles.*; import javafx.util.*; import java.io.IOException; import java.util.Random; public class Menu { - + public void menuJeu() { Labyrinthe lab=menuStartGame(); - Marche marche= (Marche) lab.listePorte.get(0).getSalle1(); + Marche marche= (Marche) lab.getListePorte().get(0).getSalle1(); Personnage perso = menuSelection(lab); boolean jeu=true; - perso.setSalle(lab.listePorte.get(0).getSalle1()); + perso.setSalle(lab.getListePorte().get(0).getSalle1()); try { do { jeu=Menudeplacement(perso, perso.getSalle(),lab); @@ -29,7 +31,7 @@ public class Menu { public String menuCombat(Monstre mons, Personnage perso, Labyrinthe lab) throws IOException { int degat; int reponse = 0; - 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."); + 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.getpVie()+"\nVous avez "+perso.getPotion().size()+" potion."); while (true){ System.out.println("\t - 1 attaquer\n\t - 2 Potion \n\t- 3 Fuir"); try{ @@ -44,16 +46,16 @@ public class Menu { if (!mons.isVivant()) { perso.setpVieMax(perso.getpVieMax()+1); perso.soin(); - perso.getSalle().cle(lab); + mons.soin(); System.out.println(perso.remplirBourse()); - return "Votre ennemie trepasse et vous obtenez la cle des portes de la salle."; + return "Votre ennemie trepasse."; } else { System.out.println("Au tour de votre adversaire. Il attaque preparez vous ! "); System.out.println("il vous inflige "+ mons.attaquer(perso,lab)+"."); if (!perso.isVivant()) { 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 ! \nIl lui reste :"+mons.getpVie()+"\nIl vous reste :"+perso.pVie+"\nVous avez "+perso.getPotion().size()+" potion."); + else System.out.println("votre ennemie n'est pas encore a bout, achevez le ! \nIl lui reste :"+mons.getpVie()+"\nIl vous reste :"+perso.getpVie()+"\nVous avez "+perso.getPotion().size()+" potion."); } break; @@ -79,7 +81,7 @@ public class Menu { if (!perso.isVivant()) { 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 ! \nIl lui reste :"+mons.getpVie()+"\nIl vous reste :"+perso.pVie+"\nVous avez "+perso.getPotion().size()+" potion."); + else System.out.println("votre ennemie n'est pas encore a bout, achevez le ! \nIl lui reste :"+mons.getpVie()+"\nIl vous reste :"+perso.getpVie()+"\nVous avez "+perso.getPotion().size()+" potion."); } } @@ -102,13 +104,13 @@ public class Menu { public Personnage menuSelection(Labyrinthe lab) { System.out.println("Bonjour Etranger, je suis le narrateur de votre histoire. Comment dois-je vous appeler ? "); int i = 0; - for (Personnage per : lab.listePersonnage) { + for (Personnage per : lab.getListePersonnage()) { System.out.println(i++ + ") "+per.getNom()); } Personnage pers; try{ - pers =lab.listePersonnage.get(Clavier.entrerClavierInt()); + pers =lab.getListePersonnage().get(Clavier.entrerClavierInt()); } catch(Exception e) { System.out.println("Le personnage dont vous me parlez n'existe pas."); @@ -133,16 +135,19 @@ public class Menu { Menudeplacement(perso, salle, lab); } while (!s.estVide() && perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - mons=lab.listeMonstre.get(s.getListeEnnemie().get(0)); + mons=lab.getListeMonstre().get(s.getListeEnnemie().get(0)); csb=menuCombat(mons, perso, lab); - if (csb.contentEquals("Votre ennemie trepasse et vous obtenez la cle des portes de la salle.")) { + if (csb.contentEquals("Votre ennemie trepasse.")) { s.getListeEnnemie().remove(0); } System.out.println(csb); } if (perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - System.out.println("vous vous deplacez"); perso.seDeplacer(s); + if (!csb.isEmpty()) { + System.out.println("Un objet traine sur le sol... c'est la cle de la salle ! Desormais vous pouvez vous deplacer dans les salles alentours."); + perso.getSalle().cle(lab); + } } break; case "S": @@ -153,17 +158,19 @@ public class Menu { break; } while (!s.estVide() && perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - mons =lab.listeMonstre.get(s.getListeEnnemie().get(0)); + mons =lab.getListeMonstre().get(s.getListeEnnemie().get(0)); csb=menuCombat(mons, perso, lab); - if (csb.contentEquals("Votre ennemie trepasse et vous obtenez la cle des portes de la salle.")) { + if (csb.contentEquals("Votre ennemie trepasse.")) { s.getListeEnnemie().remove(0); } System.out.println(csb); } if (perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - System.out.println("vous vous deplacez"); perso.seDeplacer(s); - } + if (!csb.isEmpty()) { + System.out.println("Un objet traine sur le sol... c'est la cle de la salle ! Desormais vous pouvez vous deplacer dans les salles alentours."); + perso.getSalle().cle(lab); + } } break; case "D": next=new Pair(salle.getCoordonnes().getKey()+1,salle.getCoordonnes().getValue()); @@ -173,17 +180,19 @@ public class Menu { break; } while (!s.estVide() && perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - mons =lab.listeMonstre.get(s.getListeEnnemie().get(0)); + mons =lab.getListeMonstre().get(s.getListeEnnemie().get(0)); csb=menuCombat(mons, perso, lab); - if (csb.contentEquals("Votre ennemie trepasse et vous obtenez la cle des portes de la salle.")) { + if (csb.contentEquals("Votre ennemie trepasse.")) { s.getListeEnnemie().remove(0); } System.out.println(csb); } if (perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - System.out.println("vous vous deplacez"); perso.seDeplacer(s); - } + if (!csb.isEmpty()) { + System.out.println("Un objet traine sur le sol... c'est la cle de la salle ! Desormais vous pouvez vous deplacer dans les salles alentours."); + perso.getSalle().cle(lab); + } } break; case "Q": next=new Pair(salle.getCoordonnes().getKey()-1,salle.getCoordonnes().getValue()); @@ -193,24 +202,28 @@ public class Menu { break; } while (!s.estVide() && perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - mons =lab.listeMonstre.get(s.getListeEnnemie().get(0)); + mons =lab.getListeMonstre().get(s.getListeEnnemie().get(0)); csb=menuCombat(mons, perso, lab); - if (csb.contentEquals("Votre ennemie trepasse et vous obtenez la cle des portes de la salle.")) { + if (csb.contentEquals("Votre ennemie trepasse.")) { s.getListeEnnemie().remove(0); } System.out.println(csb); } if (perso.isVivant() && !csb.contentEquals("Vous avez fuit.")) { - System.out.println("vous vous deplacez"); + perso.seDeplacer(s); + if (!csb.isEmpty()) { + System.out.println("Un objet traine sur le sol... c'est la cle de la salle ! Desormais vous pouvez vous deplacer dans les salles alentours."); + perso.getSalle().cle(lab); + } } break; case "X" : try { gene.save(lab); - }catch(Exception e) { - System.out.println(e); - } + }catch(Exception e) { + System.out.println(e); + } return false; default : System.out.println("erreur de lecture"); @@ -228,14 +241,14 @@ public class Menu { if(selection.contentEquals("oui")) { System.out.println("Quel numero pour l'arme ?"); 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.getListeArme().get(valeur))>=0) perso.equiper(lab.getListeArme().get(valeur),lab); } else { System.out.println("Pourquoi Pas une armure alors ? (oui/non)"); selection=Clavier.entrerClavierString(); if(selection.contentEquals("oui")) { System.out.println("Quel numero pour l'armure ?"); 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.getListeArmure().get(valeur))>=0) perso.equiper(lab.getListeArmure().get(valeur),lab); } } break; diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/main.java b/JAVA/PROJET-PMT_STRI1A/src/fonctionnement/main.java similarity index 87% rename from JAVA/PROJET-PMT_STRI1A/src/modeles/main.java rename to JAVA/PROJET-PMT_STRI1A/src/fonctionnement/main.java index 81e3c9b..a1199e8 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/main.java +++ b/JAVA/PROJET-PMT_STRI1A/src/fonctionnement/main.java @@ -1,4 +1,4 @@ -package modeles; +package fonctionnement; import java.io.IOException; diff --git a/JAVA/PROJET-PMT_STRI1A/src/json/Generateur.java b/JAVA/PROJET-PMT_STRI1A/src/json/Generateur.java index b1b5447..76a81e6 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/json/Generateur.java +++ b/JAVA/PROJET-PMT_STRI1A/src/json/Generateur.java @@ -6,7 +6,7 @@ import java.io.FileNotFoundException; import java.io.FileReader; import com.google.gson.Gson; - +import labyrinthe.*; import modeles.*; public class Generateur { diff --git a/JAVA/PROJET-PMT_STRI1A/src/json/gsonGenerator.java b/JAVA/PROJET-PMT_STRI1A/src/json/gsonGenerator.java index ba7f88a..a9f1b94 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/json/gsonGenerator.java +++ b/JAVA/PROJET-PMT_STRI1A/src/json/gsonGenerator.java @@ -1,5 +1,5 @@ package json; -import modeles.Salle; +import labyrinthe.Salle; import com.google.gson.Gson; public class gsonGenerator { diff --git a/JAVA/PROJET-PMT_STRI1A/src/json/main.java b/JAVA/PROJET-PMT_STRI1A/src/json/main.java index d49868f..c39cdaa 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/json/main.java +++ b/JAVA/PROJET-PMT_STRI1A/src/json/main.java @@ -2,7 +2,7 @@ package json; import modeles.Arme; -import modeles.Labyrinthe; +import labyrinthe.*; import modeles.Monstre; public class main { diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Generateur.java b/JAVA/PROJET-PMT_STRI1A/src/labyrinthe/Generateur.java similarity index 98% rename from JAVA/PROJET-PMT_STRI1A/src/modeles/Generateur.java rename to JAVA/PROJET-PMT_STRI1A/src/labyrinthe/Generateur.java index b499748..7ff185c 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Generateur.java +++ b/JAVA/PROJET-PMT_STRI1A/src/labyrinthe/Generateur.java @@ -1,4 +1,4 @@ -package modeles; +package labyrinthe; import java.io.BufferedReader; diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java b/JAVA/PROJET-PMT_STRI1A/src/labyrinthe/Labyrinthe.java similarity index 91% rename from JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java rename to JAVA/PROJET-PMT_STRI1A/src/labyrinthe/Labyrinthe.java index b9f9a79..836592d 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Labyrinthe.java +++ b/JAVA/PROJET-PMT_STRI1A/src/labyrinthe/Labyrinthe.java @@ -1,8 +1,8 @@ /** * */ -package modeles; - +package labyrinthe; +import modeles.*; import java.util.*; public class Labyrinthe { @@ -13,12 +13,22 @@ public class Labyrinthe { protected List listeMonstre=new ArrayList(); public Labyrinthe() { - /*switch (nInstance) - case 1 : - return Labyrinthe1(); - break; - }*/ - labyrinthe1(); + test(17); + } + public List getListeMonstre() { + return listeMonstre; + } + public List getListePersonnage() { + return listePersonnage; + } + public List getListeArme() { + return listeArme; + } + public List getListeArmure() { + return listeArmure; + } + public List getListePorte() { + return listePorte; } public void labyrinthe1() { Arme arme=new Arme("Epee en bois",25,10,2); @@ -137,7 +147,7 @@ public class Labyrinthe { Monstre mons = new Monstre("pantin en bois",5, 1); this.listeMonstre.add(mons); - mons=new Monstre("araignee geante agressive",7, 2); + mons=new Monstre("araignee geante",7, 2); this.listeMonstre.add(mons); mons=new Monstre("Golem de Sable",20, 3); this.listeMonstre.add(mons); @@ -170,17 +180,18 @@ public class Labyrinthe { table= new ArrayList(); table.add(0); table.add(1); - salle=new Salle(0,1,false,table); - ListSalle.add(salle); - porte=new Porte(true,marche,salle); - listePorte.add(porte); + Salle salle1=new Salle(0,1,false,table); + ListSalle.add(salle1); + Porte porte1=new Porte(true,marche,salle1); + listePorte.add(porte1); salle=new Salle(0,-1,false,table); ListSalle.add(salle); porte= new Porte(true, marche, salle); listePorte.add(porte); - salle=new Salle(1,0,false,table); - ListSalle.add(salle); - listePorte.add(porte); + Salle salle2=new Salle(1,0,false,table); + ListSalle.add(salle2); + Porte port2=new Porte(true,marche,salle2); + listePorte.add(port2); for (int i = 0; i < nbSalle-4;i++) { table= new ArrayList(); for (int j = 0; j getListePorte() { diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java index f2acbc0..919c068 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/EtreVivant.java @@ -1,5 +1,5 @@ package modeles; - +import labyrinthe.*; /** * @author Nicolas * @@ -20,6 +20,11 @@ public class EtreVivant { * @param salle * @param vivant */ + + public void soin() { + this.pVie=this.pVieMax; + } + public EtreVivant(String nom, int pVieMax, int pAttaque) { super(); this.nom = nom; diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java index af4c263..782bc36 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Monstre.java @@ -2,7 +2,7 @@ * */ package modeles; - +import labyrinthe.*; /** * @author Nicolas * @@ -20,7 +20,7 @@ public class Monstre extends EtreVivant { public int attaquer(Personnage def,Labyrinthe lab) { int pAttaqueLoc; - if (def.getArmure()>=0) pAttaqueLoc=this.getpAttaque()-(lab.listeArmure.get(def.getArmure()).getpArmure()); + if (def.getArmure()>=0) pAttaqueLoc=this.getpAttaque()-(lab.getListeArmure().get(def.getArmure()).getpArmure()); else pAttaqueLoc=this.getpAttaque(); def.pVie-=pAttaqueLoc; if (def.pVie<=0)def.setVivant(false); diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java index 86f8624..9af7aa7 100644 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java +++ b/JAVA/PROJET-PMT_STRI1A/src/modeles/Personnage.java @@ -1,6 +1,6 @@ package modeles; - +import labyrinthe.*; import java.util.ArrayList; import java.util.List; import java.util.Random; @@ -18,10 +18,10 @@ public class Personnage extends EtreVivant { } public void equiper(Arme arme,Labyrinthe lab) { - this.arme=lab.listeArme.indexOf(arme); + this.arme=lab.getListeArme().indexOf(arme); } public void equiper(Armure armure,Labyrinthe lab) { - this.armure=lab.listeArmure.indexOf(armure); + this.armure=lab.getListeArmure().indexOf(armure); } public void utiliser(Potion potion) { @@ -45,15 +45,11 @@ public class Personnage extends EtreVivant { listepotion.add(potion); } - public void soin() { - this.pVie=this.pVieMax; - } - public int attaquer(Monstre monstre,Labyrinthe lab) { if(arme>=0) { - monstre.pVie=monstre.pVie-(lab.listeArme.get(arme).getpArme()+getpAttaque()); + monstre.pVie=monstre.pVie-(lab.getListeArme().get(arme).getpArme()+getpAttaque()); if (monstre.pVie<=0)monstre.setVivant(false); - return lab.listeArme.get(arme).getpArme()+getpAttaque(); + return lab.getListeArme().get(arme).getpArme()+getpAttaque(); } else { monstre.pVie=monstre.pVie-getpAttaque(); diff --git a/JAVA/PROJET-PMT_STRI1A/src/modeles/sauvegarde.java b/JAVA/PROJET-PMT_STRI1A/src/modeles/sauvegarde.java deleted file mode 100644 index 9848510..0000000 --- a/JAVA/PROJET-PMT_STRI1A/src/modeles/sauvegarde.java +++ /dev/null @@ -1,42 +0,0 @@ -package modeles; - -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; - - -public class sauvegarde { - - public void enregistrerPersonnage(Labyrinthe lab) { - try { - File f= new File("./personnage.json"); - f.createNewFile(); - FileWriter fw= new FileWriter(f,true); - for (int i =0; i