-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCase.java
More file actions
138 lines (128 loc) · 2.85 KB
/
Case.java
File metadata and controls
138 lines (128 loc) · 2.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/**
* <b> Sae partie 2 </b> : Case()
*
* @version 2
* @author Nassim EL HADDAD & Katia AUXILIEN
**/
public class Case {
protected int valeur;
protected boolean visible;
/**
* Constructeur d'une Case, caractérisée par sa valeur.
*
**/
public Case()
{
this.valeur = 0;
}
/**
* Getter de la case pour l'utilisation d'un JLabel.
*
*
* @return retourne une chaine de caractères. ("vide" car Case() est une
* superclasse).
**/
public String getLabel()
{
return "";
}
/**
* Getter de la case getLabelPV pour l'utilisation d'un JLabel.
*
*
* @return retourne la chaine de caractères correspondant à ses pv (0 car c'est
* une superclasse).
**/
public String getLabelPv()
{
return "";
}
/**
* Getter, obtenir les pv's d'un monstre.
*
*
* @return retourne les pv's du monstre.
*/
public int getIntPv() {
return 0;
}
/**
* Getter de la case getValeur.
*
*
* @return retourne sa valeur (0 car c'est une superclasse).
*
**/
public int getValeur()
{
return this.valeur;
}
/**
* Setter de la visibilité d'une case, utilisee lors des combats contre
* Gloculaire
*
* @param v, booleen determinant si oui ou non la case est visible.
* @return void
**/
public void setVisibilite(boolean nvVisib)
{
this.visible = nvVisib;
}
/**
* Getter de la visibilite d'une case
*
*
* @return boolean la variable visible.
*
**/
public boolean getVisibilite()
{
return visible;
}
/**
* Getter de la description d'une case
*
*
* @return String chaine de caractere
*
**/
public String getDescription()
{
return "Une case simple.";
}
/**
* Genere une nouvelle "Case", d'une classe enfant, aléatoirement.
*
* @param niveau variable issue du choix de l'utilisateur dans le menu des options
* @return Case Une case, d'un type de classe enfant, en fonction du reel rand selon
* des probabilites determinees
* à l'avance pour générer des types de monstres, des types d'arme et
* des types de soin.
*
**/
public static Case newRandomCase(float niveau)
{
double rand = Math.random();
if (rand < 0.04) {
return new ChefDesAbysses(niveau);
} else if (rand < 0.14) {
return new Gloculaire(niveau);
} else if (rand < 0.24) {
return new Gobelin(niveau);
} else if (rand < 0.40) {
return new Squelette(niveau);
} else if (rand < 0.60) {
return new Or(niveau);
} else if (rand < 0.63) {
return new EpeeLegendaire(niveau);
} else if (rand < 0.69) {
return new Hache(niveau);
} else if (rand < 0.77) {
return new Dague(niveau);
} else if (rand < 0.92) {
return new Potion(niveau);
} else {
return new FeuCamp();
}
}
}