Every WinConditions except Charles's one

This commit is contained in:
Paul Gross 2020-04-18 14:55:27 +02:00
parent ddda065775
commit 1d1519bb17
9 changed files with 69 additions and 22 deletions

View File

@ -19,13 +19,13 @@ public class Allie extends Unique{
Effet effet = new EffetSelf(action); Effet effet = new EffetSelf(action);
this.setEffet(effet); this.setEffet(effet);
Condition condition = new ConditionMultiple( Condition winCondition = new ConditionMultiple(
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.PLATEAU_PARTIE_FINIE, 1, ConditionStatistiques.EQUAL) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.PARTIE_FINIE, 1, ConditionStatistiques.EQUAL)
, new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 0, ConditionStatistiques.MORE) , new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 0, ConditionStatistiques.MORE)
); );
this.setCondition(condition); this.setCondition(winCondition);
} }
/** /**

View File

@ -0,0 +1,30 @@
package personnage;
import condition.Condition;
import condition.ConditionMultiple;
import condition.ConditionMultipleOR;
import condition.ConditionStatistiques;
import main.Joueur;
import main.Plateau;
public class Daniel extends CartePersonnage{
public Daniel(String nom, int pv, Joueur joueur) {
super(nom, pv, joueur);
int nbShadow = joueur.getPlateau().getStat(Plateau.NB_SHADOWS);
Condition winCondition = new ConditionMultipleOR(
// Mort en premier
new ConditionMultiple(
new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 0, ConditionStatistiques.LESS)
,new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS, 1, ConditionStatistiques.LESS)
)
// Shadows morts
,new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_SHADOW, nbShadow, ConditionStatistiques.MORE)
);
this.setCondition(winCondition);
}
}

View File

@ -1,15 +1,21 @@
package personnage; package personnage;
import condition.Condition; import condition.Condition;
import condition.ConditionStatistiques;
import main.Joueur; import main.Joueur;
import main.Plateau;
public class Emi extends CartePersonnage{ public class Emi extends CartePersonnage{
//constructeur //constructeur
public Emi(String nom, int hp, Joueur joueur, Condition condition) { public Emi(String nom, int hp, Joueur joueur) {
super(nom, hp, joueur, condition); super(nom, hp, joueur);
int nbShadow = joueur.getPlateau().getStat(Plateau.NB_SHADOWS);
Condition winCondition = new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_SHADOW, nbShadow, ConditionStatistiques.MORE);
this.setCondition(winCondition);
} }
//méthode //m<EFBFBD>thode
public void deplacer() { public void deplacer() {
} }

View File

@ -1,17 +1,22 @@
package personnage; package personnage;
import condition.Condition; import condition.Condition;
import condition.ConditionStatistiques;
import main.Joueur; import main.Joueur;
import main.Plateau;
public class Franklin extends Unique{ public class Franklin extends Unique{
//constructeur //constructeur
public Franklin(String nom, int hp, Joueur joueur, Condition condition,boolean capaciteUsed) { public Franklin(String nom, int hp, Joueur joueur) {
super(nom, hp, joueur, condition, capaciteUsed); super(nom, hp, joueur);
int nbShadow = joueur.getPlateau().getStat(Plateau.NB_SHADOWS);
Condition winCondition = new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_SHADOW, nbShadow, ConditionStatistiques.MORE);
this.setCondition(winCondition);
} }
//méthode //m<EFBFBD>thode
public void deplacer() { public void deplacer() {
} }

View File

@ -1,17 +1,23 @@
package personnage; package personnage;
import condition.Condition; import condition.Condition;
import condition.ConditionStatistiques;
import main.Joueur; import main.Joueur;
import main.Plateau;
public class Georges extends Unique{ public class Georges extends Unique{
//constructeur //constructeur
public Georges(String nom, int hp, Joueur joueur,Condition condition, boolean capaciteUsed) { public Georges(String nom, int hp, Joueur joueur) {
super(nom, hp, joueur, condition, capaciteUsed); super(nom, hp, joueur);
int nbShadow = joueur.getPlateau().getStat(Plateau.NB_SHADOWS);
Condition winCondition = new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_SHADOW, nbShadow, ConditionStatistiques.MORE);
this.setCondition(winCondition);
} }
//méthode //m<EFBFBD>thode
public void deplacer() { public void deplacer() {
} }

View File

@ -12,12 +12,12 @@ public class LoupGarou extends CartePersonnage {
super(nom, hp, joueur); super(nom, hp, joueur);
int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS); int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS);
Condition condition = new ConditionMultipleOR( Condition winCondition = new ConditionMultipleOR(
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE)
, ,
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE)
); );
this.setCondition(condition); this.setCondition(winCondition);
} }
//m<EFBFBD>thodes //m<EFBFBD>thodes

View File

@ -12,14 +12,13 @@ public class Metamorphe extends CartePersonnage{
super(nom, pv, joueur); super(nom, pv, joueur);
// WinCondition
int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS); int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS);
Condition condition = new ConditionMultipleOR( Condition winCondition = new ConditionMultipleOR(
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE)
, ,
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE)
); );
this.setCondition(condition); this.setCondition(winCondition);
} }
} }

View File

@ -1,17 +1,18 @@
package personnage; package personnage;
import condition.Condition;
import main.Joueur; import main.Joueur;
public class Unique extends CartePersonnage{ public class Unique extends CartePersonnage{
private boolean capaciteUsed; private boolean capaciteUsed;
public Unique(String nom, int hp, Joueur joueur,boolean capaciteUsed) { public Unique(String nom, int hp, Joueur joueur) {
super(nom, hp, joueur); super(nom, hp, joueur);
this.setCapaciteUsed(capaciteUsed);
} }
public boolean isCapaciteUsed() { public boolean isCapaciteUsed() {
return capaciteUsed; return capaciteUsed;
} }

View File

@ -20,12 +20,12 @@ public class Vampire extends CartePersonnage{
this.setEffet(effet); this.setEffet(effet);
int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS); int nbHunter = joueur.getPlateau().getStat(Plateau.NB_HUNTERS);
Condition condition = new ConditionMultipleOR( Condition winCondition = new ConditionMultipleOR(
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_HUNTER, nbHunter, ConditionStatistiques.MORE)
, ,
new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE) new ConditionStatistiques(ConditionStatistiques.PLATEAU, Plateau.NB_MORTS_NEUTRAL, 3, ConditionStatistiques.MORE)
); );
this.setCondition(condition); this.setCondition(winCondition);
} }
public void utiliser(Joueur j) public void utiliser(Joueur j)