WinCondition Loup-Garou, Métamorphe, Vampire
This commit is contained in:
parent
ff0e8121e1
commit
ddda065775
@ -5,6 +5,10 @@ import main.Joueur;
|
|||||||
public class ConditionMultipleOR extends ConditionMultiple{
|
public class ConditionMultipleOR extends ConditionMultiple{
|
||||||
|
|
||||||
|
|
||||||
|
public ConditionMultipleOR(Condition ...conditions) {
|
||||||
|
super(conditions);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Vérifie qu'au moins une des conditions soit vérifiée.
|
* Vérifie qu'au moins une des conditions soit vérifiée.
|
||||||
* @param joueur Le joueur sur lequel on vérifie les conditions.
|
* @param joueur Le joueur sur lequel on vérifie les conditions.
|
||||||
|
@ -12,11 +12,14 @@ public class Plateau {
|
|||||||
private List<CarteLieu> lieux;
|
private List<CarteLieu> lieux;
|
||||||
|
|
||||||
|
|
||||||
public static final String PLATEAU_NB_MORTS = "nb_morts";
|
public static final String NB_HUNTERS = "nb_hunters";
|
||||||
public static final String PLATEAU_NB_MORTS_NEUTRAL = "nb_morts_neutral";
|
public static final String NB_SHADOWS = "nb_shadows";
|
||||||
public static final String PLATEAU_NB_MORTS_HUNTER = "nb_morts_hunter";
|
public static final String NB_NEUTRES = "nb_neutres";
|
||||||
public static final String PLATEAU_NB_MORTS_SHADOW = "nb_morts_shadow";
|
public static final String NB_MORTS = "nb_morts";
|
||||||
public static final String PLATEAU_PARTIE_FINIE = "partie_finie";
|
public static final String NB_MORTS_NEUTRAL = "nb_morts_neutral";
|
||||||
|
public static final String NB_MORTS_HUNTER = "nb_morts_hunter";
|
||||||
|
public static final String NB_MORTS_SHADOW = "nb_morts_shadow";
|
||||||
|
public static final String PARTIE_FINIE = "partie_finie";
|
||||||
|
|
||||||
private Map<String, Integer> stats;
|
private Map<String, Integer> stats;
|
||||||
|
|
||||||
@ -34,11 +37,14 @@ public class Plateau {
|
|||||||
stats = new HashMap<>();
|
stats = new HashMap<>();
|
||||||
|
|
||||||
// Initialisation plateau
|
// Initialisation plateau
|
||||||
stats.put(PLATEAU_NB_MORTS, 0);
|
stats.put(NB_HUNTERS, 0);
|
||||||
stats.put(PLATEAU_NB_MORTS_NEUTRAL, 0);
|
stats.put(NB_SHADOWS, 0);
|
||||||
stats.put(PLATEAU_NB_MORTS_HUNTER, 0);
|
stats.put(NB_NEUTRES, 0);
|
||||||
stats.put(PLATEAU_NB_MORTS_SHADOW, 0);
|
stats.put(NB_MORTS, 0);
|
||||||
stats.put(PLATEAU_PARTIE_FINIE, 0);
|
stats.put(NB_MORTS_NEUTRAL, 0);
|
||||||
|
stats.put(NB_MORTS_HUNTER, 0);
|
||||||
|
stats.put(NB_MORTS_SHADOW, 0);
|
||||||
|
stats.put(PARTIE_FINIE, 0);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,15 +1,26 @@
|
|||||||
package personnage;
|
package personnage;
|
||||||
|
|
||||||
import condition.Condition;
|
import condition.Condition;
|
||||||
|
import condition.ConditionMultipleOR;
|
||||||
|
import condition.ConditionStatistiques;
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
|
import main.Plateau;
|
||||||
|
|
||||||
public class LoupGarou extends CartePersonnage {
|
public class LoupGarou extends CartePersonnage {
|
||||||
//constructeur
|
//constructeur
|
||||||
public LoupGarou(String nom, int hp, Joueur joueur, Condition condition) {
|
public LoupGarou(String nom, int hp, Joueur joueur) {
|
||||||
super(nom, hp, joueur, condition);
|
super(nom, hp, joueur);
|
||||||
|
|
||||||
|
int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS);
|
||||||
|
Condition condition = new ConditionMultipleOR(
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE)
|
||||||
|
,
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE)
|
||||||
|
);
|
||||||
|
this.setCondition(condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
//méthodes
|
//m<EFBFBD>thodes
|
||||||
public void contreAttaquer(Joueur j) {
|
public void contreAttaquer(Joueur j) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
25
src/personnage/Metamorphe.java
Normal file
25
src/personnage/Metamorphe.java
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
package personnage;
|
||||||
|
|
||||||
|
import condition.Condition;
|
||||||
|
import condition.ConditionMultipleOR;
|
||||||
|
import condition.ConditionStatistiques;
|
||||||
|
import main.Joueur;
|
||||||
|
import main.Plateau;
|
||||||
|
|
||||||
|
public class Metamorphe extends CartePersonnage{
|
||||||
|
|
||||||
|
public Metamorphe(String nom, int pv, Joueur joueur) {
|
||||||
|
super(nom, pv, joueur);
|
||||||
|
|
||||||
|
|
||||||
|
// WinCondition
|
||||||
|
int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS);
|
||||||
|
Condition condition = new ConditionMultipleOR(
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE)
|
||||||
|
,
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE)
|
||||||
|
);
|
||||||
|
this.setCondition(condition);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,21 +1,31 @@
|
|||||||
package personnage;
|
package personnage;
|
||||||
|
|
||||||
import condition.Condition;
|
import condition.Condition;
|
||||||
|
import condition.ConditionMultipleOR;
|
||||||
|
import condition.ConditionStatistiques;
|
||||||
import effet.Action;
|
import effet.Action;
|
||||||
import effet.ActionAltererStatistiquesJoueur;
|
import effet.ActionAltererStatistiquesJoueur;
|
||||||
import effet.Effet;
|
import effet.Effet;
|
||||||
import effet.EffetSelf;
|
import effet.EffetSelf;
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
|
import main.Plateau;
|
||||||
|
|
||||||
public class Vampire extends CartePersonnage{
|
public class Vampire extends CartePersonnage{
|
||||||
|
|
||||||
public Vampire(String nom, int hp, Joueur joueur, Condition condition) {
|
public Vampire(String nom, int hp, Joueur joueur) {
|
||||||
super(nom, hp, joueur, condition);
|
super(nom, hp, joueur);
|
||||||
|
|
||||||
Action action = new ActionAltererStatistiquesJoueur("HP",2,true);
|
Action action = new ActionAltererStatistiquesJoueur("HP",2,true);
|
||||||
Effet effet = new EffetSelf(action);
|
Effet effet = new EffetSelf(action);
|
||||||
this.setEffet(effet);
|
this.setEffet(effet);
|
||||||
|
|
||||||
|
int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS);
|
||||||
|
Condition condition = new ConditionMultipleOR(
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE)
|
||||||
|
,
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE)
|
||||||
|
);
|
||||||
|
this.setCondition(condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void utiliser(Joueur j)
|
public void utiliser(Joueur j)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user