Changement vendredi et debut json

nicolas
Nicolas 6 years ago
parent a159725229
commit 61fec1a10b

@ -9,4 +9,18 @@ public class Arme extends Objet {
private int pArme; private int pArme;
public int getpArme() {
return this.pArme;
}
public String getType() {
return "Arme";
}
public Arme(String nm, int valeur, int resistance, int attaque) {
super(nm, valeur, resistance);
this.pArme=attaque;
}
/* public void effectArme ? (poison, incinération, gel, saignement, paralysie,... */
} }

@ -11,4 +11,19 @@ public class Armure extends Objet {
private int pArmure; private int pArmure;
public int getpArmure() {
return this.pArmure;
}
public String getType () {
return "Armure";
}
public Armure(String nm, int valeur, int resistance,int efficacite) {
super(nm, valeur, resistance);
this.pArmure=efficacite;
}
/* public armureEffect(...) */
} }

@ -10,4 +10,31 @@ package modeles;
public class Bourse extends Objet { public class Bourse extends Objet {
private int valeur; private int valeur;
public Bourse(int somme) {
super("bourse",somme,99999999);
}
public int getValeur() {
return this.valeur;
}
public String getType() {
return "Bourse";
}
public int Achat(int cout) { //commande pour vérifier si la personne peut acheter un objet et pour faire le décompte de la thunasse
if (cout <= this.valeur) return (this.valeur=this.valeur-cout);
else {
int manque = cout-this.valeur;
System.out.println("L'achat est impossible, il vous manque : "+manque);
return manque;
}
}
public int fusionBourse(Bourse sacPiece) {
this.valeur += sacPiece.valeur;
return this.valeur;
}
} }

@ -0,0 +1,40 @@
package modeles;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Clavier {
private static Scanner scanner = new Scanner(System.in);
public static String entrerClavierString() {
String chaine="";
try {
chaine = scanner.next();
} catch (InputMismatchException e) {
System.out.println("La valeur lu au clavier n'est pas une chaine");
}
return chaine;
}
public static int entrerClavierInt() {
int entier=0;
try {
entier = scanner.nextInt();
} catch (InputMismatchException e) {
System.out.println("La valeur lu au clavier n'est pas un entier");
}
return entier;
}
public static boolean entrerClavierBoolean() {
boolean bool=true;
try {
bool = scanner.nextBoolean();
} catch (InputMismatchException e) {
System.out.println("La valeur lu au clavier n'est pas un bool<6F>en");
}
return bool;
}
}

@ -42,9 +42,6 @@ public class EtreVivant {
/** /**
* @param nom the nom to set * @param nom the nom to set
*/ */
public void setNom(String nom) {
this.nom = nom;
}
/** /**
* @return the pVieMax * @return the pVieMax
*/ */
@ -110,12 +107,4 @@ public class EtreVivant {
return this.pVieMax; return this.pVieMax;
} }
} }

@ -3,10 +3,21 @@
*/ */
package modeles; package modeles;
import java.util.*;
/** /**
* @author flavien * @author flavien
* *
*/ */
public class Labyrinthe { public class Labyrinthe {
protected List<Personnage> listePersonnage=new ArrayList<Personnage>();
protected List<Salle>listeSalle= new ArrayList<Salle>();
protected List<Arme> listeArme= new ArrayList<Arme>();
protected List<Armure> listeArmure=new ArrayList<Armure>();
public void generateLabyrinthe() {
}
} }

@ -18,6 +18,13 @@ public class Monstre extends EtreVivant {
super(nom, 5, pAttaque, salle); super(nom, 5, pAttaque, salle);
} }
public int attaquer(Personnage def) {
int pAttaqueLoc;
pAttaqueLoc=this.getpAttaque()-(def.getArmure().getpArmure());
def.pVie=pAttaqueLoc;
return pAttaqueLoc;
}

@ -1,15 +1,50 @@
/**
*
*/
package modeles; package modeles;
/** /**
* @author flavien * @author flavien
* *
*/ */
public class Objet { public abstract class Objet {
private String nom; private String nom;
private int prix; private int prix;
private int usure; private int usure;
private Personnage proprietaire;
public Objet(String nm, int valeur, int resistance) {
this.nom=nm;
this.prix=valeur;
this.usure=resistance;
}
public int getPrix() {
return this.prix;
}
public String getNom() {
return this.nom;
}
public int getUsure() {
return this.usure;
}
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 !");
}
public abstract String getType();
public Personnage getProprietaire() {
return this.proprietaire;
}
public void setProprietaire(Personnage perso) {
this.proprietaire=perso;
}
public void lacher() {
this.proprietaire=null;
}
} }

@ -23,32 +23,34 @@ public void equiper(Armure armure) {
} }
public void utiliser(Potion potion) { public void utiliser(Potion potion) {
soin();
System.out.println("Pv au maximum");
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 int attaquer(Monstre monstre) {
public void soin() { int pAttaqueLoc;
this.pVie=this.pVieMax;
}
public void attaquer(Monstre monstre) {
if(arme!=null) { if(arme!=null) {
monstre.pVie=monstre.pVie-(arme.getpArme()+getpAttaque()); pAttaqueLoc=monstre.pVie-(arme.getpArme()+this.getpAttaque());
monstre.pVie=pAttaqueLoc;
} }
else { else {
monstre.pVie=monstre.pVie=getpAttaque(); pAttaqueLoc=this.getpAttaque();
monstre.pVie=pAttaqueLoc;
} }
return pAttaqueLoc;
} }
public void getBourse() { public Bourse getBourse() {
System.out.println(this.getBourse();); return this.bourse;
} }
public void getValeurBourse() {
System.out.println(this.getBourse().getValeur());
}
/** /**
* @return the arme * @return the arme
*/ */
@ -63,4 +65,8 @@ public void equiper(Armure armure) {
return armure; return armure;
} }
public void soin(int heal) {
if (pVie+heal > pVieMax)pVie=pVieMax;
else pVie+=heal;
}
} }

@ -11,6 +11,12 @@ public class Porte {
private boolean ouvert; private boolean ouvert;
private char orientation; private char orientation;
public Porte(boolean ouvert, char orientation) {
super();
this.ouvert = ouvert;
this.orientation = orientation;
}
public boolean estOuverte() { public boolean estOuverte() {
return ouvert; return ouvert;
} }
@ -19,4 +25,10 @@ public class Porte {
return orientation; return orientation;
} }
/**
* @param ouvert
* @param orientation
*/
} }

@ -8,5 +8,18 @@ package modeles;
* *
*/ */
public class Potion extends Objet { public class Potion extends Objet {
public String getType() {
return "Potion";
}
public Potion(int valeur) {
super("potion", valeur, 1);
}
public void utilisation() {
super.utilisation();
this.getProprietaire().soin(this.getProprietaire().getpVieMax());
}
} }

@ -3,17 +3,53 @@
*/ */
package modeles; package modeles;
import java.util.ArrayList;
import java.util.List;
/** /**
* @author flavien * @author flavien
* *
*/ */
public class Salle { public class Salle {
private int positionX; private int positionX;
/**
* @param positionX
* @param positionY
* @param sortie
* @param listeEnnemie
* @param listePorte
*/
public Salle(int positionX, int positionY, boolean sortie, List<Monstre> listeEnnemie, List<Porte> listePorte) {
this.positionX = positionX;
this.positionY = positionY;
this.sortie = sortie;
this.listeEnnemie = listeEnnemie;
this.listePorte = listePorte;
}
private int positionY; private int positionY;
private boolean sortie; private boolean sortie;
private List<Monstre> listeEnnemie= new ArrayList<Monstre>();
private List<Porte> listePorte = new ArrayList<Porte>();
public String getType(){ public String getType(){
return"type"; return "salle";
}
public int getPositionX() {
return this.positionX;
} }
public int getPositionY() {
return this.positionY;
} }
public boolean estSortie() {
return sortie;
}
public boolean estVide() {
return listeEnnemie.isEmpty();
}
}

@ -0,0 +1,7 @@
package modeles;
public class Snippet {
public static void main(String[] args) {
org.json }
}

@ -0,0 +1,17 @@
package modeles;
import java.io.FileReader;
import java.util.Iterator;
import java.util.Map;
import org.json.*;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.*;
import jdk.nashorn.internal.parser.JSONParser;
import jdk.nashorn.internal.runtime.JSONListAdapter;
public class parseurJson {
Object obj = new JSONParser().parse(new FileReader("map.json"));
JSONObject = jo = (JSONObject) obj;
}

@ -0,0 +1,42 @@
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<lab.listePersonnage.size();i++) {
fw.write("{\n\t \"nom\" : \""+lab.listePersonnage.get(i).getNom()+"\" ,"
+ "\n\t \"pVieMax\" : \""+lab.listePersonnage.get(i).getPvMax()
+"\" ,\n\t \"pVie\" : \""+lab.listePersonnage.get(i).getpVie()
+"\" ,\n\t \"pAttaque\" : \""+lab.listePersonnage.get(i).getpAttaque()
+"\" ,\n\t \"salle\" : \""+lab.listePersonnage.get(i).getSalle().getPositionX()+" "+lab.listePersonnage.get(i).getSalle().getPositionY() /*attention pour la récupération de sauvegarde*/
+"\" ,\n\t \"vivant\" : \""+lab.listePersonnage.get(i).isVivant() +"\n\t \"arme\" : \""+lab.listePersonnage.get(i).getArme().getNom()
+"\" ,\n\t \"armure\" : \""+lab.listePersonnage.get(i).getArmure().getNom() +"\n\t \"bourse\" : \""+lab.listePersonnage.get(i).getBourse().getValeur()+"\n}"); /* attention pour la récupération de donnée */
}
fw.flush();
fw.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
/*
public void enregistrerLabyrinthe(Labyrinthe lab) { // à faire
try {
File f = new File ("./labyrinthe.json");
f.createNewFile();
FileWriter fw= new FileWriter(f,true);
for(int i = 0; i<lab.listeSalle.size();i++) {
fw.write("{\n\t [ \n\t{\n\t ");
}
}
}
*/
}
Loading…
Cancel
Save