diff --git a/JDR/nbproject/project.properties b/JDR/nbproject/project.properties
index 8e1ba9f..f433006 100644
--- a/JDR/nbproject/project.properties
+++ b/JDR/nbproject/project.properties
@@ -1,9 +1,10 @@
annotation.processing.enabled=true
annotation.processing.enabled.in.editor=false
-annotation.processing.processor.options=
annotation.processing.processors.list=
annotation.processing.run.all.processors=true
annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
+application.title=JDR
+application.vendor=steve.maingana
build.classes.dir=${build.dir}/classes
build.classes.excludes=**/*.java,**/*.form
# This directory is removed when the project is cleaned:
@@ -32,10 +33,12 @@ dist.jar=${dist.dir}/JDR.jar
dist.javadoc.dir=${dist.dir}/javadoc
dist.jlink.dir=${dist.dir}/jlink
dist.jlink.output=${dist.jlink.dir}/JDR
+endorsed.classpath=
excludes=
includes=**
jar.compress=false
-javac.classpath=
+javac.classpath=\
+ ${libs.absolutelayout.classpath}
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
@@ -71,7 +74,7 @@ jlink.additionalmodules=
jlink.additionalparam=
jlink.launcher=true
jlink.launcher.name=JDR
-main.class=jdr.JDR
+main.class=interfaces.jFFJDR
manifest.file=manifest.mf
meta.inf.dir=${src.dir}/META-INF
mkdist.disabled=false
diff --git a/JDR/src/interfaces/jFFJDR.form b/JDR/src/interfaces/jFFJDR.form
index 1403f75..93892ae 100644
--- a/JDR/src/interfaces/jFFJDR.form
+++ b/JDR/src/interfaces/jFFJDR.form
@@ -20,47 +20,292 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/JDR/src/interfaces/jFFJDR.java b/JDR/src/interfaces/jFFJDR.java
index 9dc477d..1dd858b 100644
--- a/JDR/src/interfaces/jFFJDR.java
+++ b/JDR/src/interfaces/jFFJDR.java
@@ -4,17 +4,41 @@
*/
package interfaces;
+import java.util.*;
+import javax.swing.*;
+import metier.*;
+
/**
*
* @author steve.maingana
*/
public class jFFJDR extends javax.swing.JFrame {
-
+ public Jeu jdr = new Jeu("JDR");
/**
* Creates new form jFFJDR
*/
public jFFJDR() {
initComponents();
+ actualiserInformations();
+
+ }
+
+
+ public void actualiserInformations() {
+ String str = "";
+ ArrayList lesPersonnages = this.jdr.getPersos();
+ str += "Jeu: "+jdr.getNomJeu()+"\n";
+ str += "*************\n";
+ for (Personnage unPerso : lesPersonnages) {
+ str += unPerso.resumerPersonnage();
+ str += "-----------------------\n";
+ }
+ jTAInfos.setText(str);
+
+ jCBPerso1.setModel(new DefaultComboBoxModel(jdr.getLesPersonnagesVivants()));
+ jCBPerso1.setSelectedIndex(0);
+ jCBPerso2.setModel(new DefaultComboBoxModel(jdr.getLesPersonnagesVivants()));
+ jCBPerso2.setSelectedIndex(0);
}
/**
@@ -27,39 +51,216 @@ public class jFFJDR extends javax.swing.JFrame {
private void initComponents() {
jPChoix = new javax.swing.JPanel();
+ jLabel1 = new javax.swing.JLabel();
+ jPanel1 = new javax.swing.JPanel();
+ jLabel3 = new javax.swing.JLabel();
+ jPanel2 = new javax.swing.JPanel();
+ jCBPerso1 = new javax.swing.JComboBox<>();
+ jPanel3 = new javax.swing.JPanel();
+ jPanel4 = new javax.swing.JPanel();
+ jCBPerso2 = new javax.swing.JComboBox<>();
jPInfos = new javax.swing.JPanel();
+ jLabel2 = new javax.swing.JLabel();
+ jScrollPane1 = new javax.swing.JScrollPane();
+ jTAInfos = new javax.swing.JTextArea();
+ jBtGo = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+ jPChoix.setBackground(new java.awt.Color(255, 255, 255));
+
+ jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/famille_1.jpg"))); // NOI18N
+
+ jLabel3.setFont(new java.awt.Font("Snap ITC", 0, 12)); // NOI18N
+ jLabel3.setText("Choix du personnage");
+
+ jCBPerso1.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jCBPerso1ActionPerformed(evt);
+ }
+ });
+
+ jPanel3.setBackground(new java.awt.Color(153, 0, 0));
+
+ javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
+ jPanel3.setLayout(jPanel3Layout);
+ jPanel3Layout.setHorizontalGroup(
+ jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGap(0, 163, Short.MAX_VALUE)
+ );
+ jPanel3Layout.setVerticalGroup(
+ jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGap(0, 0, Short.MAX_VALUE)
+ );
+
+ jPanel4.setBackground(new java.awt.Color(153, 0, 0));
+
+ javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
+ jPanel4.setLayout(jPanel4Layout);
+ jPanel4Layout.setHorizontalGroup(
+ jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGap(0, 163, Short.MAX_VALUE)
+ );
+ jPanel4Layout.setVerticalGroup(
+ jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGap(0, 172, Short.MAX_VALUE)
+ );
+
+ jCBPerso2.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jCBPerso2ActionPerformed(evt);
+ }
+ });
+
+ javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
+ jPanel2.setLayout(jPanel2Layout);
+ jPanel2Layout.setHorizontalGroup(
+ jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGap(47, 47, 47)
+ .addComponent(jCBPerso1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 113, Short.MAX_VALUE)
+ .addComponent(jCBPerso2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(44, 44, 44))
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGap(6, 6, 6)
+ .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ );
+ jPanel2Layout.setVerticalGroup(
+ jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(jCBPerso1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(jCBPerso2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGap(6, 6, 6)
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addContainerGap())
+ );
+
+ javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
+ jPanel1.setLayout(jPanel1Layout);
+ jPanel1Layout.setHorizontalGroup(
+ jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(jLabel3)
+ .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ );
+ jPanel1Layout.setVerticalGroup(
+ jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel1Layout.createSequentialGroup()
+ .addComponent(jLabel3)
+ .addGap(13, 13, 13)
+ .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ );
+
javax.swing.GroupLayout jPChoixLayout = new javax.swing.GroupLayout(jPChoix);
jPChoix.setLayout(jPChoixLayout);
jPChoixLayout.setHorizontalGroup(
jPChoixLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 400, Short.MAX_VALUE)
+ .addGroup(jPChoixLayout.createSequentialGroup()
+ .addGap(100, 100, 100)
+ .addComponent(jLabel1)
+ .addGap(73, 73, 73))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPChoixLayout.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addContainerGap())
);
jPChoixLayout.setVerticalGroup(
jPChoixLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 200, Short.MAX_VALUE)
+ .addGroup(jPChoixLayout.createSequentialGroup()
+ .addComponent(jLabel1)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
- getContentPane().add(jPChoix, java.awt.BorderLayout.CENTER);
+ jPInfos.setBackground(new java.awt.Color(51, 0, 0));
+
+ jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/adj_1.jpg"))); // NOI18N
+ jLabel2.setToolTipText("");
+
+ jTAInfos.setEditable(false);
+ jTAInfos.setBackground(new java.awt.Color(51, 0, 0));
+ jTAInfos.setColumns(20);
+ jTAInfos.setRows(5);
+ jScrollPane1.setViewportView(jTAInfos);
javax.swing.GroupLayout jPInfosLayout = new javax.swing.GroupLayout(jPInfos);
jPInfos.setLayout(jPInfosLayout);
jPInfosLayout.setHorizontalGroup(
jPInfosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 420, Short.MAX_VALUE)
+ .addGroup(jPInfosLayout.createSequentialGroup()
+ .addGap(30, 30, 30)
+ .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGroup(jPInfosLayout.createSequentialGroup()
+ .addGap(10, 10, 10)
+ .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 240, javax.swing.GroupLayout.PREFERRED_SIZE))
);
jPInfosLayout.setVerticalGroup(
jPInfosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 310, Short.MAX_VALUE)
+ .addGroup(jPInfosLayout.createSequentialGroup()
+ .addGap(10, 10, 10)
+ .addComponent(jLabel2)
+ .addGap(10, 10, 10)
+ .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 290, javax.swing.GroupLayout.PREFERRED_SIZE))
);
- getContentPane().add(jPInfos, java.awt.BorderLayout.EAST);
+ jBtGo.setText("GO");
+ jBtGo.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jBtGoActionPerformed(evt);
+ }
+ });
+
+ javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+ getContentPane().setLayout(layout);
+ layout.setHorizontalGroup(
+ layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(layout.createSequentialGroup()
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(layout.createSequentialGroup()
+ .addGap(140, 140, 140)
+ .addComponent(jBtGo))
+ .addGroup(layout.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(jPChoix, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(jPInfos, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(114, 114, 114))
+ );
+ layout.setVerticalGroup(
+ layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(layout.createSequentialGroup()
+ .addGap(10, 10, 10)
+ .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(layout.createSequentialGroup()
+ .addComponent(jPChoix, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(jBtGo))
+ .addComponent(jPInfos, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ );
pack();
}// //GEN-END:initComponents
+ private void jBtGoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtGoActionPerformed
+ // TODO add your handling code here:
+ }//GEN-LAST:event_jBtGoActionPerformed
+
+ private void jCBPerso2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCBPerso2ActionPerformed
+ // TODO add your handling code here:
+ }//GEN-LAST:event_jCBPerso2ActionPerformed
+
+ private void jCBPerso1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCBPerso1ActionPerformed
+ // TODO add your handling code here:
+ }//GEN-LAST:event_jCBPerso1ActionPerformed
+
/**
* @param args the command line arguments
*/
@@ -96,7 +297,19 @@ public class jFFJDR extends javax.swing.JFrame {
}
// Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton jBtGo;
+ private javax.swing.JComboBox jCBPerso1;
+ private javax.swing.JComboBox jCBPerso2;
+ private javax.swing.JLabel jLabel1;
+ private javax.swing.JLabel jLabel2;
+ private javax.swing.JLabel jLabel3;
private javax.swing.JPanel jPChoix;
private javax.swing.JPanel jPInfos;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JScrollPane jScrollPane1;
+ private javax.swing.JTextArea jTAInfos;
// End of variables declaration//GEN-END:variables
}
diff --git a/JDR/src/metier/Guerrier.java b/JDR/src/metier/Guerrier.java
index b4c8772..22c9f12 100644
--- a/JDR/src/metier/Guerrier.java
+++ b/JDR/src/metier/Guerrier.java
@@ -83,6 +83,21 @@ public class Guerrier extends Personnage{
this.arme = arme;
}
+ /**
+ * Résume les informations sur le personnage
+ * @return Informations du personnage
+ */
+ @Override
+ public String resumerPersonnage() {
+ String str = "";
+ str += "Nom "+this.getNom()+"\n";
+ str += "Énergie "+this.getEnergie()+"\n";
+ str += "Durée de vie "+this.getDureeVie()+"\n";
+ str += "Guerrier arme : "+this.getArme()+"\n";
+
+ return str;
+ }
+
/**
* Initie la rencontre avec un autre personnage
* @param unPerso un Personnage
diff --git a/JDR/src/metier/Jeu.java b/JDR/src/metier/Jeu.java
index aa3280f..b216da9 100644
--- a/JDR/src/metier/Jeu.java
+++ b/JDR/src/metier/Jeu.java
@@ -4,8 +4,8 @@
*/
package metier;
-import java.util.ArrayList;
-import javax.swing.JOptionPane;
+import java.util.*;
+import javax.swing.*;
/**
*
@@ -15,7 +15,7 @@ public class Jeu {
// Nom du jeu
private String nomJeu;
// Tableau de personnages
- private Personnage[] persos;
+ private ArrayList persos;
// Equipes de jeu
private ArrayList Equipe1;
private ArrayList Equipe2;
@@ -27,7 +27,7 @@ public class Jeu {
public Jeu(String nomJeu) {
this.setNomJeu(nomJeu);
this.chargerPersonnages();
- this.definirEquipes();
+ // this.definirEquipes();
}
/**
@@ -37,8 +37,8 @@ public class Jeu {
public String toString() {
String envoi = "";
envoi += "Jeu{" + "nomJeu=" + this.nomJeu + ",\n persos=";
- for (int i = 0; i < this.persos.length; i++) {
- envoi += this.persos[i].toString();
+ for (int i = 0; i < this.persos.size(); i++) {
+ envoi += this.persos.get(i).toString();
envoi += ",\n";
}
envoi += "}";
@@ -55,14 +55,22 @@ public class Jeu {
this.nomJeu = nomJeu;
}
+ public String getNomJeu() {
+ return nomJeu;
+ }
+
/**
* Défini le tableau de personnages
* @param persos Tableau de personnages
*/
- public void setPersos(Personnage[] persos) {
+ public void setPersos(ArrayList persos) {
this.persos = persos;
}
+ public ArrayList getPersos() {
+ return this.persos;
+ }
+
/**
* Initialise le tableau de personnages
*/
@@ -82,30 +90,44 @@ public class Jeu {
new Enigme("Un escargot est au fond d'un puits de 10 mètres. Chaque matin il monte de 3 mètres et chaque nuit il descend de 2 mètres. Combien de jours lui faudra-t-il pour sortir de ce puits ?","7")
};
- Personnage[] persos = {
- new Guerrier("Jayce", "Jayce.jpg", 5, 5, "Hache"),
- new Guerrier("Ambresa", "Ambresa.jpg", 8, 9, "Lance"),
- new Guerrier("Ekko", "Ekko.jpg", 5, 6, "Poignard"),
- new Sorcier("Mel", "Mel.jpg", 6, 7, "De laurier", enigmes1),
- new Sorcier("Viktor", "Viktor.jpg", 10, 5, "Hexcore", enigmes2),
- new Voleur("Jinx", "Jinx.jpg", 7, 6, "Marteau")
- };
+ ArrayList persos = new ArrayList();
+ persos.add(new Guerrier("Jayce", "Jayce.jpg", 5, 5, "Hache"));
+ persos.add(new Guerrier("Ambresa", "Ambresa.jpg", 8, 9, "Lance"));
+ persos.add(new Guerrier("Ekko", "Ekko.jpg", 5, 6, "Poignard"));
+ persos.add(new Sorcier("Mel", "Mel.jpg", 6, 7, "De laurier", enigmes1));
+ persos.add(new Sorcier("Viktor", "Viktor.jpg", 10, 5, "Hexcore", enigmes2));
+ persos.add(new Voleur("Jinx", "Jinx.jpg", 7, 6, "Marteau"));
this.setPersos(persos);
System.out.println("Personnages chargés !");
}
/**
- * Répartit les personnages en équipes de 3
+ * Obtenir la liste des personnages encore en vie
+ * @return Liste des personnages encore en vie
+ */
+ public Vector getLesPersonnagesVivants() {
+ Vector lesPersonnages = new Vector<>();
+ for (Personnage perso : this.persos) {
+ if (perso.getDureeVie() > 0) {
+ lesPersonnages.add(perso.getClass().getSimpleName()+":"+perso.getNom());
+ }
+ }
+
+ return lesPersonnages;
+ }
+
+ /**
+ * Répartit les personnages en équipes de 3
*/
private void definirEquipes() {
for (int i = 0; i < 6; i++) {
int rollEquipe = (int) (Math.random()*2)+1;
if (rollEquipe == 1) {
if (this.Equipe1.size() == 3) {
- this.Equipe2.add(this.persos[i]);
+ this.Equipe2.add(this.persos.get(i));
} else {
- this.Equipe1.add(this.persos[i]);
+ this.Equipe1.add(this.persos.get(i));
}
}
}
@@ -120,9 +142,9 @@ public class Jeu {
Personnage perso = null;
boolean trouve = false;
int i = 0;
- while (!trouve && i < this.persos.length) {
- if (this.persos[i].getNom().equals(nom)) {
- perso = this.persos[i];
+ while (!trouve && i < this.persos.size()) {
+ if (this.persos.get(i).getNom().equals(nom)) {
+ perso = this.persos.get(i);
trouve = true;
} else {
i++;
diff --git a/JDR/src/metier/Personnage.java b/JDR/src/metier/Personnage.java
index af230fe..6f67a17 100644
--- a/JDR/src/metier/Personnage.java
+++ b/JDR/src/metier/Personnage.java
@@ -156,6 +156,21 @@ public class Personnage {
this.nom = nom;
}
+ /**
+ * Résume les informations sur le personnage
+ * @return Informations du personnage
+ */
+ public String resumerPersonnage() {
+ String str = "";
+ str += "Nom "+this.getNom()+"\n";
+ str += "Énergie "+this.getEnergie()+"\n";
+ str += "Durée de vie "+this.getDureeVie()+"\n";
+ str += "Civil arme : Aucune\n";
+
+ return str;
+ }
+
+
/**
* Initie la rencontre avec un autre personnage
* @param unPerso un Personnage
diff --git a/JDR/src/metier/Sorcier.java b/JDR/src/metier/Sorcier.java
index a0043a0..19c9a1d 100644
--- a/JDR/src/metier/Sorcier.java
+++ b/JDR/src/metier/Sorcier.java
@@ -67,6 +67,21 @@ public class Sorcier extends Personnage {
return this.enigmes;
}
+ /**
+ * Résume les informations sur le personnage
+ * @return Informations du personnage
+ */
+ @Override
+ public String resumerPersonnage() {
+ String str = "";
+ str += "Nom "+this.getNom()+"\n";
+ str += "Énergie "+this.getEnergie()+"\n";
+ str += "Durée de vie "+this.getDureeVie()+"\n";
+ str += "Sorcier arme : "+this.getBaguette()+"\n";
+
+ return str;
+ }
+
public void ajouterEnigme(Enigme e) {
int tailleEnigmes = this.enigmes.length+1;
Enigme[] enigmes = new Enigme[tailleEnigmes];
diff --git a/JDR/src/metier/Voleur.java b/JDR/src/metier/Voleur.java
index 3980b52..4c6312d 100644
--- a/JDR/src/metier/Voleur.java
+++ b/JDR/src/metier/Voleur.java
@@ -103,6 +103,21 @@ public class Voleur extends Personnage{
}
}
+ /**
+ * Résume les informations sur le personnage
+ * @return Informations du personnage
+ */
+ @Override
+ public String resumerPersonnage() {
+ String str = "";
+ str += "Nom "+this.getNom()+"\n";
+ str += "Énergie "+this.getEnergie()+"\n";
+ str += "Durée de vie "+this.getDureeVie()+"\n";
+ str += "Voleur arme : "+this.getOutil()+"\n";
+
+ return str;
+ }
+
/**
* Initie la rencontre avec un autre personnage
* @param unPerso un Personnage