summaryrefslogtreecommitdiff
path: root/src/main/java/modele
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/modele')
-rw-r--r--src/main/java/modele/Aptitude.java14
-rw-r--r--src/main/java/modele/AptitudeArme.java20
-rw-r--r--src/main/java/modele/Arme.java91
-rw-r--r--src/main/java/modele/ArmeDist.java31
-rw-r--r--src/main/java/modele/ArmeMelee.java39
-rw-r--r--src/main/java/modele/Armee.java36
-rw-r--r--src/main/java/modele/ArmeeListe.java104
-rw-r--r--src/main/java/modele/Bouton.java31
-rw-r--r--src/main/java/modele/Calcul.java302
-rw-r--r--src/main/java/modele/Evenement.java48
-rw-r--r--src/main/java/modele/Faction.java19
-rw-r--r--src/main/java/modele/Figurine.java158
-rw-r--r--src/main/java/modele/Unit.java96
-rw-r--r--src/main/java/modele/User.java83
14 files changed, 1072 insertions, 0 deletions
diff --git a/src/main/java/modele/Aptitude.java b/src/main/java/modele/Aptitude.java
new file mode 100644
index 0000000..4ea1a9f
--- /dev/null
+++ b/src/main/java/modele/Aptitude.java
@@ -0,0 +1,14 @@
1package modele;
2
3public class Aptitude {
4
5 private String nom;
6
7 public Aptitude(String nom) {
8 this.nom = nom;
9 }
10
11 public String getName() {
12 return nom;
13 }
14}
diff --git a/src/main/java/modele/AptitudeArme.java b/src/main/java/modele/AptitudeArme.java
new file mode 100644
index 0000000..28e82dd
--- /dev/null
+++ b/src/main/java/modele/AptitudeArme.java
@@ -0,0 +1,20 @@
1package modele;
2
3public class AptitudeArme {
4
5 private String nomArme;
6 private int val;
7
8 public AptitudeArme(String nomArme, int val) {
9 this.nomArme = nomArme;
10 this.val = val;
11 }
12 public AptitudeArme(String nomArme) {
13 this.nomArme = nomArme;
14 }
15
16 public void ArmeAptitude() {
17
18 }
19
20}
diff --git a/src/main/java/modele/Arme.java b/src/main/java/modele/Arme.java
new file mode 100644
index 0000000..53db538
--- /dev/null
+++ b/src/main/java/modele/Arme.java
@@ -0,0 +1,91 @@
1package modele;
2
3import java.util.ArrayList;
4
5public abstract class Arme {
6
7 private String nom;
8 private ArrayList<AptitudeArme> aptitudes;
9 private String portee;
10 private String A;
11 private int F;
12 private int PA;
13 private String D;
14 public Arme(String nom, ArrayList<AptitudeArme> aptitudes,String portee, String a, int f, int pA, String d)
15 {
16 this.nom = nom;
17 this.aptitudes = aptitudes;
18 this.portee=portee;
19 this.setAptitudes(aptitudes);
20
21 A = a;
22 F = f;
23 PA = pA;
24 D = d;
25 }
26 public Arme(String nom, int F, int PA, String A, String D) {
27 this.nom = nom;
28 this.F = F;
29 this.PA = PA;
30 this.A=A;
31 this.D=D;
32 }
33 public ArrayList<Integer> statsAtk(){
34 ArrayList<Integer> liste = new ArrayList<Integer>();
35
36 liste.add(F);
37 liste.add(PA);
38
39 return liste;
40 }
41
42 //v2
43 public String getD() {
44 return D;
45 }
46 public void setD(String d) {
47 D = d;
48 }
49
50 public String getNom() {
51 return nom;
52 }
53 public void setNom(String nom) {
54 this.nom = nom;
55 }
56
57 public String getPortee() {
58 return portee;
59 }
60 public void setPortee(String portee) {
61 this.portee = portee;
62 }
63 public String getA() {
64 return A;
65 }
66 public void setA(String a) {
67 A = a;
68 }
69 public int getF() {
70 return F;
71 }
72 public void setF(int f) {
73 F = f;
74 }
75
76 public int getPA() {
77 return PA;
78 }
79 public void setPA(int pA) {
80 PA = pA;
81 }
82
83 public abstract int getC();
84
85 public ArrayList<AptitudeArme> getAptitudes() {
86 return aptitudes;
87 }
88 public void setAptitudes(ArrayList<AptitudeArme> aptitudes) {
89 this.aptitudes = aptitudes;
90 }
91} \ No newline at end of file
diff --git a/src/main/java/modele/ArmeDist.java b/src/main/java/modele/ArmeDist.java
new file mode 100644
index 0000000..1a43ad0
--- /dev/null
+++ b/src/main/java/modele/ArmeDist.java
@@ -0,0 +1,31 @@
1package modele;
2
3import java.util.ArrayList;
4
5public class ArmeDist extends Arme {
6 private int CT;
7 public ArmeDist(String nom, ArrayList<AptitudeArme> aptitudes,String portee, String a, int f, int pA, String d,int ct) {
8 super(nom, aptitudes,portee, a, f, pA, d);
9 this.CT=ct;
10 // TODO Auto-generated constructor stub
11 }
12 @Override
13 public ArrayList<Integer> statsAtk() {
14 // TODO Auto-generated method stub
15 ArrayList<Integer> liste = super.statsAtk();
16 liste.add(CT);
17 return liste;
18 }
19 public int getCT() {
20 return CT;
21 }
22
23 public void setCT(int cT) {
24 CT = cT;
25 }
26 public int getC() {
27 return CT;
28 }
29}
30
31
diff --git a/src/main/java/modele/ArmeMelee.java b/src/main/java/modele/ArmeMelee.java
new file mode 100644
index 0000000..6061c58
--- /dev/null
+++ b/src/main/java/modele/ArmeMelee.java
@@ -0,0 +1,39 @@
1package modele;
2
3import java.util.ArrayList;
4
5public class ArmeMelee extends Arme {
6 private int CC;
7
8 public ArmeMelee(String nom, ArrayList<AptitudeArme> aptitudes,String portee, String a, int f, int pA, String d,int cc) {
9 super(nom, aptitudes,portee, a, f, pA, d);
10 this.CC=cc;
11 // TODO Auto-generated constructor stub
12 }
13
14 public ArmeMelee(String nom,int F,int PA,String A,String D,int cc) {
15 super(nom,F,PA,A,D);
16 this.CC = cc;
17 }
18
19 @Override
20 public ArrayList<Integer> statsAtk() {
21 ArrayList<Integer> liste = super.statsAtk();
22 liste.add(CC);
23 return null;
24 }
25
26 public int getCC() {
27 return CC;
28 }
29
30 public void setCC(int cC) {
31 CC = cC;
32 }
33
34 @Override
35 public int getC() {
36 return CC;
37 }
38}
39
diff --git a/src/main/java/modele/Armee.java b/src/main/java/modele/Armee.java
new file mode 100644
index 0000000..132418b
--- /dev/null
+++ b/src/main/java/modele/Armee.java
@@ -0,0 +1,36 @@
1package modele;
2
3public class Armee {
4
5 private String nom;
6 private String logo;
7 private Faction faction;
8
9 public Armee(String nom, String logo) {
10 this.nom = nom;
11 this.logo = logo;
12 }
13
14 public Armee(String nom, String logo, Faction fact) {
15 this.nom = nom;
16 this.logo = logo;
17 this.faction = fact;
18 }
19
20 public String getName() {
21 return nom;
22 }
23
24 @Override
25 public String toString() {
26 return "" + nom + "";
27 }
28
29 public String getLogo() {
30 return logo;
31 }
32
33 public Faction getFaction() {
34 return faction;
35 }
36}
diff --git a/src/main/java/modele/ArmeeListe.java b/src/main/java/modele/ArmeeListe.java
new file mode 100644
index 0000000..7d3f866
--- /dev/null
+++ b/src/main/java/modele/ArmeeListe.java
@@ -0,0 +1,104 @@
1package modele;
2
3import java.util.ArrayList;
4
5public class ArmeeListe {
6 private int id;
7 private int idArmee;
8 private String nom;
9 private String description;
10 private String data;
11 private ArrayList<Unit> unites = new ArrayList<Unit>();
12 private ArrayList<String> unit_names = new ArrayList<String>();
13
14 private int idUtilisateur;
15
16
17
18 public ArmeeListe(String nom, String description, String data) {
19 this.nom = nom;
20 this.description = description;
21 this.data = data;
22 }
23 public ArmeeListe(ArrayList<Unit> unit_list, String nom, String description, String data) {
24 this.unites = unit_list;
25 this.nom = nom;
26 this.description = description;
27 this.data = data;
28 }
29
30 public ArmeeListe(int id, int idArmee, String nom, String description, String data, int idUtilisateur) {
31 this.id = id;
32 this.nom = nom;
33 this.description = description;
34 this.data= data;
35 this.idArmee = idArmee;
36 this.idUtilisateur = idUtilisateur;
37 }
38
39
40 public int getIdListe() { return id; }
41 public int getIdArmee() { return idArmee;}
42 public String getNomListe() { return nom; }
43 public String getDescriptionListe() { return description; }
44 public String getDataListe() { return data; }
45 public ArrayList<String> getUniteListe() { return unit_names; }
46
47 public void setUniteListe(ArrayList<String> unite) {
48 this.unit_names = unite;
49 }
50
51 // getters
52 public int getId() {
53 return id;
54 }
55 public String getName() {
56 return nom;
57 }
58 public void setName(String name) {
59 nom = name;
60 }
61 public String getDescription() {
62 return description;
63 }
64 public void setDescription(String desc) {
65 description = desc;
66 }
67 public String getData() {
68 return data;
69 }
70 public void setData(String data) {
71 this.data = data;
72 }
73 public int getIdUtilisateur() {
74 return idUtilisateur;
75 }
76
77 public ArrayList<Unit> getUnits() {
78 return unites;
79 }
80 public void setUnits(ArrayList<Unit> units) {
81 unites = units;
82 }
83 public String[] getUnitNames() {
84 String[] unit_names = new String[unites.size()];
85 for(int i = 0; i < unites.size(); i++) {
86 unit_names[i] = unites.get(i).getName();
87 }
88 return unit_names;
89 }
90 public void addUnit(Unit unit) {
91 unites.add(unit);
92 }
93 public void removeUnit(Unit unit) {
94 unites.remove(unit);
95 }
96 public void setNom(String nom) {
97 this.nom = nom;
98 }
99
100 public String toString() {
101 return "Liste ID: " + id + ", Nom: " + nom + ", Description: " + description +
102 ", Data: " + data + ", unite: " + unit_names;
103 }
104} \ No newline at end of file
diff --git a/src/main/java/modele/Bouton.java b/src/main/java/modele/Bouton.java
new file mode 100644
index 0000000..4d5c911
--- /dev/null
+++ b/src/main/java/modele/Bouton.java
@@ -0,0 +1,31 @@
1package modele;
2
3import javafx.event.ActionEvent;
4import javafx.event.EventHandler;
5import javafx.scene.Node;
6import javafx.scene.control.Button;
7
8public class Bouton extends Button{
9
10 public Bouton() {
11 super();
12 // TODO Auto-generated constructor stub
13 }
14
15 public Bouton(String text, Node graphic) {
16 super(text, graphic);
17 // TODO Auto-generated constructor stub
18 }
19
20 public Bouton(String text) {
21 super(text);
22 // TODO Auto-generated constructor stub
23 }
24
25
26 public Bouton setOnAction2(EventHandler<ActionEvent> value) {
27 super.setOnAction(value);
28 return this;
29
30 }
31}
diff --git a/src/main/java/modele/Calcul.java b/src/main/java/modele/Calcul.java
new file mode 100644
index 0000000..0ae1832
--- /dev/null
+++ b/src/main/java/modele/Calcul.java
@@ -0,0 +1,302 @@
1package modele;
2
3public class Calcul {
4 private int[] tabdegat1;
5 private float degat_moyen1;
6 private float mort_moyen1;
7 private int[] tabmort1;
8
9
10 public Calcul(int[] tabdegat1, float degat_moyen1, float mort_moyen1,int[] tabmort1) {
11 super();
12 this.tabdegat1 = tabdegat1;
13 this.degat_moyen1 = degat_moyen1;
14 this.mort_moyen1 = mort_moyen1;
15 this.tabmort1 = tabmort1;
16 }
17
18 // getter set setter
19 public int[] getTabdegat1() {
20 return tabdegat1;
21 }
22 public void setTabdegat1(int[] tabdegat1) {
23 this.tabdegat1 = tabdegat1;
24 }
25 public float getDegat_moyen1() {
26 return degat_moyen1;
27 }
28 public void setDegat_moyen1(float degat_moyen1) {
29 this.degat_moyen1 = degat_moyen1;
30 }
31 public float getMort_moyen1() {
32 return mort_moyen1;
33 }
34 public void setMort_moyen1(float mort_moyen1) {
35 this.mort_moyen1 = mort_moyen1;
36 }
37 public int[] getTabmort1() {
38 return tabmort1;
39 }
40 public void setTabmort1(int[] tabmort1) {
41 this.tabmort1 = tabmort1;
42 }
43
44 // 1er jet de dé : jet pour toucher une figurine , résultat en fonction de CC ou CT
45 public static boolean jet_de_touche(boolean jet,int C){
46 // simulation lancer de dé
47 int d1 = (int) ((Math.random() * (7 - 1)) + 1);
48 switch(d1){
49 // si 1 echec critique
50 case 1 :
51 jet=false;
52 break;
53 // si 6 reussite critique
54 case 6 :
55 jet=true;
56 break;
57 // comparaison du dé avec CC ou CT
58 default :
59 if( d1 >= C){
60 jet=true;
61 }
62 }
63 // return booléen pour continuer ou non attaque
64 return jet;
65 }
66
67 // 2eme jet de dé : jet pour blesser une figurine , résultat en fonction de force de fig attaquante et de endurance de figurine attaquée
68 public static boolean jet_de_blessure (boolean jet,int fo,int end){
69 // simulation lancer de dé
70 int d2 = (int) ((Math.random() * (7 - 1)) + 1);
71
72 switch(d2){
73 // si 1 echec critique
74 case 1 :
75 jet=false;
76 break;
77 // si 6 reussite critique
78 case 6 :
79 jet=true;
80 break;
81 default :
82 //Comparaison entre force et endurance pour savoir si attaque blesse
83 if(fo >2*end) {
84 if(d2>=2) {
85 jet = true;
86 }
87 }
88 if(fo>end && fo<2*end) {
89 if(d2>=3) {
90 jet = true;
91 }
92 }
93 if(fo==end) {
94 if(d2>=4) {
95 jet = true;
96 }
97 }
98 if(fo>0.5*end && fo<end) {
99 if(d2>=5) {
100 jet = true;
101 }
102 }
103 if(fo <=0.5*(float)end) {
104 if(d2>=6) {
105 jet = true;
106 }
107 }
108
109 }
110 // return booléen pour continuer ou non attaque
111 return jet;
112 }
113
114 // fonction pour determiner le nbr d'attaque d'une arme
115 public static int chgt_a (String a){
116 int attaque =0;
117 int d1 = (int) ((Math.random() * (7 - 1)) + 1);
118 int d2 = (int) ((Math.random() * (4 - 1)) + 1);
119 switch(a) {
120 case "D6":
121 attaque = d1;
122 break;
123 case "D6+1":
124 attaque = d1+1;
125 //System.out.println("test");
126 break;
127 case "D6+2":
128 attaque = d1+2;
129 break;
130 case "D6+3":
131 attaque = d1+3;
132 break;
133 case "D6+4":
134 attaque = d1+4;
135 break;
136 case "D3":
137 attaque = d2;
138 break;
139 default :
140 attaque = Integer.parseInt(a);
141 }
142 return attaque;
143 }
144
145 // fonction pour determiner le nbr de dégats d'une arme
146 public static int chgt_d (String d){
147 int degat =0;
148 int d1 = (int) ((Math.random() * (7 - 1)) + 1);
149 int d2 = (int) ((Math.random() * (4 - 1)) + 1);
150 int d3 = (int) ((Math.random() * (9 - 1)) + 1);
151 switch(d) {
152 case "D8":
153 degat = d3;
154 break;
155 case "D6":
156 degat = d1;
157 break;
158 case "D6+1":
159 degat = d1+1;
160 break;
161 case "D6+2":
162 degat = d1+2;
163 break;
164 case "D6+3":
165 degat = d1+3;
166 break;
167 case "D6+4":
168 degat = d1+4;
169 break;
170 case "D3":
171 degat = d2;
172 break;
173 default :
174 degat = Integer.parseInt(d);
175 }
176 return degat;
177 }
178
179 // 2eme jet de dé : jet de sauvegarde , pour savoir si l'armure d'une figurine la protège d'une blessure
180 public static boolean jet_de_sauvegarde (boolean block,int pa,int sv){
181 // simulation du jet de dé
182 int d3 = (int) ((Math.random() * (7 - 1)) + 1);
183 switch(d3) {
184 //echec critique la figurine adverse n'a pas réussie à se protéger
185 case 1:
186 block = false;
187 default :
188 //comparaison entre pénétration d'armure et sauvegarde
189 if ( d3 + pa < sv ){
190 block = false;
191 }
192 }
193 //// return booléen pour finaliser ou non attaque
194 return block;
195 }
196
197 // fonction simulant des battailes entre 2 unités
198 public static Calcul bataille(modele.Unit u1, modele.Unit u2){
199
200 // Déclaration des variables
201
202 int complet_degat = 0;
203 float degat_moyen;
204 float mort_moyen = 0;
205 boolean dflag = false;
206 int[] tabdegat = new int[50];
207 int[] tabmort = new int[50];
208
209 // boucle simulant 10 000 batailles
210 for (int k=0;k<10000;k++){
211
212 int sum_degat = 0;
213 int adv = 0;
214 int pvE=u2.getFigurines().get(adv).getHP();
215 int mort = 0;
216
217 // boucle parcourant les figurines d'une unité
218 for (int j=0; j<u1.getFigurines().size();j++){
219 // si figurine non morte
220 if(u1.getFigurines().get(j).getHP()>0) {
221 int attaque = chgt_a(u1.getFigurines().get(j).getSelectedWeapon().getA());
222
223 // Condition permettant d'attaquer une nouvelle figurine
224 while(pvE <=0 && adv+1<u2.getFigurines().size()) {
225 adv=adv+1;
226 pvE=u2.getFigurines().get(adv).getHP();
227
228 }
229
230 // boucle correspondant au nbr d'attaques par armes
231 for(int i=0 ;i<attaque;i++ ){
232 dflag = false;
233 boolean jet1=false;
234 boolean jet2=false;
235 boolean block=true;
236
237 // fonction pour jet de touche
238 jet1=jet_de_touche(jet1,(u1.getFigurines().get(j).getSelectedWeapon().getC()));
239
240 // si attaque touche
241 if(jet1==true){
242 // fonction pour jet de blessure
243 jet2=jet_de_blessure(jet2,u1.getFigurines().get(j).getSelectedWeapon().getF(),u2.getFigurines().get(adv).getE());
244 }
245
246 // si blessure
247 if(jet2==true){
248 block=jet_de_sauvegarde(block,u1.getFigurines().get(j).getSelectedWeapon().getPA(),u2.getFigurines().get(adv).getSV());
249
250 // si jet de sauvegarde echec et fig adverse à des HP
251 if(block==false && pvE >0){
252
253 int degat= chgt_d((u1.getFigurines().get(j).getSelectedWeapon().getD()));
254 pvE=pvE - degat ;
255
256 // Calcul des dégats effectués par une attaque
257 if(pvE<0) {
258 sum_degat = sum_degat + degat + pvE;
259 complet_degat = complet_degat +degat +pvE;
260 }
261 else {
262 sum_degat = sum_degat + degat;
263 complet_degat = degat+complet_degat;
264 }
265
266 // booléen pour indiquer une mort possible
267 dflag = true;
268 }
269
270 // compteur du nbr de mort
271 if(pvE <=0 && dflag == true ) {
272 mort = mort+1;
273 mort_moyen = mort_moyen+1;
274 }
275 }
276 }
277 }
278 // si fig mort changement de prochaine cible
279 if(pvE <=0 ) {
280 if (adv+1<u2.getFigurines().size()){
281 adv=adv+1;
282 pvE=u2.getFigurines().get(adv).getHP();
283
284 }
285 }
286 }
287 // compteurs des sommes des dégats et du nbr de mort par bataille
288 tabdegat[sum_degat] ++;
289 tabmort[mort] ++;
290 }
291
292 //calcul des degat et mort moyen
293 degat_moyen =(float)complet_degat/10000;
294 mort_moyen = (float)mort_moyen/10000;
295
296 // Instanciation de Calucl (données pour histogramme )
297 Calcul c1 = new Calcul(tabdegat,degat_moyen,mort_moyen,tabmort);
298 return c1;
299 }
300
301}
302
diff --git a/src/main/java/modele/Evenement.java b/src/main/java/modele/Evenement.java
new file mode 100644
index 0000000..a3dd8bd
--- /dev/null
+++ b/src/main/java/modele/Evenement.java
@@ -0,0 +1,48 @@
1package modele;
2
3public class Evenement{
4
5 private String nom_evenement;
6 private String nom_image;
7 private String descritption_evenement;
8 private String date_evenement;
9
10 public Evenement(String nom_evt, String nom_img,String desc, String date) {
11 this.nom_evenement = nom_evt;
12 this.nom_image = nom_img;
13 this.descritption_evenement = desc;
14 this.date_evenement = date;
15 }
16
17 public String getNom_evenement() {
18 return nom_evenement;
19 }
20
21 public String getNom_image() {
22 return nom_image;
23 }
24
25 public String getData_evenement() {
26 return date_evenement;
27 }
28
29 public void setNom_evenement(String nom_evenement) {
30 this.nom_evenement = nom_evenement;
31 }
32
33 public void setNom_image(String nom_image) {
34 this.nom_image = nom_image;
35 }
36
37 public void setDescritption_evenement(String descritption_evenement) {
38 this.descritption_evenement = descritption_evenement;
39 }
40
41 public void setDate_evenement(String date_evenement) {
42 this.date_evenement = date_evenement;
43 }
44
45 public String getDescritption_evenement() {
46 return descritption_evenement;
47 }
48} \ No newline at end of file
diff --git a/src/main/java/modele/Faction.java b/src/main/java/modele/Faction.java
new file mode 100644
index 0000000..04e2af8
--- /dev/null
+++ b/src/main/java/modele/Faction.java
@@ -0,0 +1,19 @@
1package modele;
2
3public class Faction {
4
5 private String nom;
6
7 public Faction(String nom) {
8 this.nom = nom;
9 }
10
11 public String getNom() {
12 return nom;
13 }
14
15 @Override
16 public String toString() {
17 return "" + nom + "";
18 }
19}
diff --git a/src/main/java/modele/Figurine.java b/src/main/java/modele/Figurine.java
new file mode 100644
index 0000000..1e517b8
--- /dev/null
+++ b/src/main/java/modele/Figurine.java
@@ -0,0 +1,158 @@
1package modele;
2
3import java.util.ArrayList;
4import java.util.HashMap;
5
6public class Figurine {
7 ArrayList<Arme> armes;
8 Arme selected_weapon;
9
10 ArrayList<Aptitude> aptitudes;
11 HashMap<String, Aptitude> selectedAptitudes = new HashMap<String, Aptitude>();
12
13 String nom;
14 String logoChemin;
15 String M;
16 int E;
17 int SV;
18 int HP;
19 int HP_max;
20 int CD;
21 int CO;
22
23 public Figurine(ArrayList<Arme> armes, ArrayList<Aptitude> aptitudes, String nom, String logoChemin, String m, int e, int sV, int hP, int cD, int cO) {
24 //super(); // inutile, Figurine n'a pas de parent
25
26 this.armes = armes;
27 if(armes.size() > 0) {
28 selected_weapon = armes.get(0); // arme par défaut
29 }
30 this.aptitudes = aptitudes;
31
32 this.nom = nom;
33 this.logoChemin = logoChemin;
34 M = m;
35 E = e;
36 SV = sV;
37 HP = hP;
38 HP_max = hP;
39 CD = cD;
40 CO = cO;
41 }
42
43 public Figurine(String nom_figurine, int E, int SV, int HP,ArrayList<Arme> l1) {
44 this.nom = nom_figurine;
45 this.E = E;
46 this.SV = SV;
47 this.HP = HP;
48 this.armes = l1;
49 }
50
51 //renvoi un dico avec en clé les noms des stats des armes et en valeurs une liste de valeur de toute les armes
52 public HashMap<String,ArrayList<Integer>> statAtk(){
53 HashMap<String,ArrayList<Integer>> liste = new HashMap<String, ArrayList<Integer>>();
54 ArrayList<Integer> stats = new ArrayList<Integer>();
55
56 ArrayList<Integer> A = new ArrayList<Integer>();
57 ArrayList<Integer> F = new ArrayList<Integer>();
58 ArrayList<Integer> PA = new ArrayList<Integer>();
59 ArrayList<Integer> D = new ArrayList<Integer>();
60
61 for (Arme arme : armes) {
62 stats = arme.statsAtk();
63 A.add(stats.get(0));
64 F.add(stats.get(1));
65 PA.add(stats.get(2));
66 D.add(stats.get(3));
67 }
68 liste.put("A", A);
69 liste.put("F", F);
70 liste.put("PA", PA);
71 liste.put("D", D);
72
73 return liste;
74 }
75// public void updateHP(int dommage) {
76// this.HP +=dommage;
77// }
78 public HashMap<String,Integer> defense(){
79 HashMap<String,Integer> liste = new HashMap<String,Integer>();
80 liste.put("E", E);
81 liste.put("SV", SV);
82 return liste;
83 }
84
85
86 public ArrayList<Arme> getArmes() {
87 return armes;
88 }
89 public Arme getWeaponByName(String name) {
90 for(Arme weapon : armes) {
91 if(weapon.getNom() == name) {
92 return weapon;
93 }
94 }
95 return armes.get(0); // arme par défaut si aucune ne correspond
96 }
97 public Arme getSelectedWeapon() {
98 return selected_weapon;
99 }
100 public void setWeapon(Arme weapon) {
101 selected_weapon = weapon;
102 }
103
104 public ArrayList<Aptitude> getAptitudes() {
105 return aptitudes;
106 }
107 public HashMap<String, Aptitude> getSelectedAptitudes() {
108 return selectedAptitudes;
109 }
110// public void setSelectedAptitudes(HashMap<String, Aptitude> aptitudes) {
111// selectedAptitudes = aptitudes;
112// }
113
114 public String getNom() {
115 return nom;
116 }
117
118 public String getLogoChemin() {
119 return logoChemin;
120 }
121
122 public String getM() {
123 return M;
124 }
125
126 public int getE() {
127 return E;
128 }
129
130 public int getSV() {
131 return SV;
132 }
133
134 public int getHP() {
135 return HP;
136 }
137 public int getHPMax() {
138 return HP_max;
139 }
140
141 public int getCD() {
142 return CD;
143 }
144
145 public int getCO() {
146 return CO;
147 }
148
149
150 public void setHP(int hP) {
151 HP = hP;
152 }
153
154 @Override
155 public String toString() {
156 return "" + nom + "";
157 }
158}
diff --git a/src/main/java/modele/Unit.java b/src/main/java/modele/Unit.java
new file mode 100644
index 0000000..11b51d9
--- /dev/null
+++ b/src/main/java/modele/Unit.java
@@ -0,0 +1,96 @@
1package modele;
2
3import java.util.ArrayList;
4import java.util.HashMap;
5
6
7
8public class Unit {
9
10 private ArrayList<Figurine> figurines;
11 private HashMap<String, ArrayList<Figurine>> identical_figs = new HashMap<String, ArrayList<Figurine>>();
12 private int id;
13 private String nom;
14 private int points;
15 private String logo;
16 private Armee armee;
17
18 public Unit(ArrayList<Figurine> figurines, String nom, int points, String logo, Armee armee) {
19 this.figurines = figurines;
20 this.makeIdenticalFigsGroups();
21 this.nom = nom;
22 this.points = points;
23 this.logo = logo;
24 this.armee = armee;
25 }
26 public Unit(ArrayList<Figurine> figurines,int id, String nom, int points,String logo, Armee armee) {
27 this.id = id;
28 this.figurines = figurines;
29 this.nom = nom;
30 this.logo = logo;
31 this.points = points;
32 this.armee = armee;
33 }
34
35 // bientôt inutile
36 public Unit(String nom_unit,ArrayList<Figurine> list_unit) {
37 this.nom = nom_unit;
38 this.figurines = list_unit;
39 }
40
41 // getters
42 public ArrayList<Figurine> getFigurines() {
43 return figurines;
44 }
45 public HashMap<String, ArrayList<Figurine>> getIdenticalFigsGroups(){
46 return identical_figs;
47 }
48
49 // est exécuté dès qu'on touche au slider
50 public int getAliveFigsOfAGroup(String group_name) {
51 int nb = 0;
52 for(Figurine fig : identical_figs.get(group_name))
53 {
54 if(fig.getHP() > 0) {
55 nb++;
56 }
57 }
58 return nb;
59 }
60
61 public int getId() {
62 return id;
63 }
64 public String getName() {
65 return nom;
66 }
67 public int getPoints() {
68 return points;
69 }
70 public String getLogo() {
71 return nom;
72 }
73 public Armee getArmee() {
74 return armee;
75 }
76
77 public void setFigurine(ArrayList<Figurine> liste) {
78 figurines = liste;
79 }
80
81 private void makeIdenticalFigsGroups() {
82 for(Figurine fig : figurines)
83 {
84 if(!identical_figs.containsKey(fig.getNom())) // si nouveau type de figurines
85 {
86 identical_figs.put(fig.getNom(), new ArrayList<Figurine>()); // création d'uné paire clé/liste dans la hashmap
87 }
88 identical_figs.get(fig.getNom()).add(fig); // récupérer la liste correspondante à la clé et ajouter la figurine
89 }
90 }
91
92 @Override
93 public String toString() {
94 return "" + nom + "";
95 }
96}
diff --git a/src/main/java/modele/User.java b/src/main/java/modele/User.java
new file mode 100644
index 0000000..a9a155d
--- /dev/null
+++ b/src/main/java/modele/User.java
@@ -0,0 +1,83 @@
1package modele;
2
3import java.util.ArrayList;
4
5public class User {
6
7 private ArrayList<ArmeeListe> listes = new ArrayList<ArmeeListe>();
8 private String nom;
9 private String mdp;
10 private String email;
11 private int id;
12 private String role;
13
14 public User( String nom, int id2, String role2) {
15 this.nom = nom;
16 this.id=id2;
17 this.role=role2;
18 }
19
20 public User(ArrayList<ArmeeListe> listes, String nom, String mdp, String email, int id,String role) {
21 this.listes = listes;
22 this.nom = nom;
23 this.mdp = mdp;
24 this.email = email;
25 this.id = id;
26 this.role=role;
27 }
28
29 public int getId() {
30 return id;
31 }
32 public void setId(int id) {
33 this.id = id;
34 }
35
36 public String getRole() {
37 return role;
38 }
39 public void setRole(String role) {
40 this.role = role;
41 }
42
43 public ArrayList<ArmeeListe> getListes() {
44 return listes;
45 }
46 public void setListes(ArrayList<ArmeeListe> listes) {
47 this.listes = listes;
48 }
49 public String[] getListNames() {
50 String[] list_names = new String[listes.size()];
51 for(int i = 0; i < listes.size(); i++)
52 {
53 list_names[i] = listes.get(i).getName();
54 }
55 return list_names;
56 }
57
58 public String getNom() {
59 return nom;
60 }
61 public void setNom(String nom) {
62 this.nom = nom;
63 }
64 public String getMdp() {
65 return mdp;
66 }
67 public void setMdp(String mdp) {
68 this.mdp = mdp;
69 }
70 public String getEmail() {
71 return email;
72 }
73 public void setEmail(String email) {
74 this.email = email;
75 }
76
77 public void addArmee(ArmeeListe armee) {
78 listes.add(armee);
79 }
80 public void removeArmee(ArmeeListe armee) {
81 listes.remove(armee);
82 }
83}