This commit is contained in:
Paul Gross 2020-04-21 18:01:24 +02:00
parent 2098793895
commit 1e5828f763
16 changed files with 38 additions and 76 deletions

View File

@ -9,8 +9,6 @@ import main.Joueur;
public class CarteLieu extends CarteEffet{ public class CarteLieu extends CarteEffet{
private List<Joueur> listeJoueurs; private List<Joueur> listeJoueurs;
private Point coordinates; private Point coordinates;
private CarteLieu voisin; private CarteLieu voisin;

View File

@ -108,7 +108,6 @@ public class Joueur {
if(blessure > 0) if(blessure > 0)
{ {
j2.addToStat(PLAYER_HP, -blessure);
this.cartePersonnage.attaquer(j2, blessure); this.cartePersonnage.attaquer(j2, blessure);
} }
} }
@ -195,4 +194,9 @@ public class Joueur {
return this.carteLieu; return this.carteLieu;
} }
public void setRevele(boolean b) {
this.revele = true;
}
} }

View File

@ -40,16 +40,9 @@ public class Allie extends Unique{
*/ */
public void utiliser() { public void utiliser() {
if(!this.isCapaciteUsed()) { if(this.getJoueur().getRevele() && !this.isCapaciteUsed()) {
this.getEffet().utiliser(this.getJoueur()); this.getEffet().utiliser(this.getJoueur());
this.setCapaciteUsed(true); this.setCapaciteUsed(true);
} }
} }
@Override
public void attaquer(Joueur j, int blessure) {
}
} }

View File

@ -8,8 +8,8 @@ import main.Joueur;
public class Bob extends CartePersonnage{ public class Bob extends CartePersonnage{
public Bob(String nom, String desc ,int hp, Joueur joueur) throws Exception { public Bob(Joueur joueur){
super(nom,desc, hp, joueur); super("BOB","desc", 10, joueur);
Condition condition = new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_NB_EQUIPEMENTS, 5, ConditionStatistiques.MORE); Condition condition = new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_NB_EQUIPEMENTS, 5, ConditionStatistiques.MORE);
this.setCondition(condition); this.setCondition(condition);
@ -19,15 +19,17 @@ public class Bob extends CartePersonnage{
} }
@Override @Override
public void attaquer(Joueur j, int attaque) { public void attaquer(Joueur j, int blessure) {
if(attaque >= 2 && j.getRevele()) { if(blessure >= 2 && j.getRevele()) {
Joueur thisJoueur = this.getJoueur(); Joueur thisJoueur = this.getJoueur();
if(thisJoueur.choisir()) { if(thisJoueur.choisir()) {
((EffetTarget)this.getEffet()).setTarget(j); ((EffetTarget)this.getEffet()).setTarget(j);
utiliser(); utiliser();
}else {
super.attaquer(j, blessure);
} }
} }
} }
@ -37,7 +39,4 @@ public class Bob extends CartePersonnage{
Joueur j = this.getJoueur(); Joueur j = this.getJoueur();
this.getEffet().utiliser(j); this.getEffet().utiliser(j);
} }
} }

View File

@ -12,11 +12,14 @@ public abstract class CartePersonnage extends CarteCondition {
super(nom, description); super(nom, description);
this.pv = pv; this.pv = pv;
this.joueur = joueur; this.joueur = joueur;
joueur.setCartePersonnage(this);
} }
public abstract void utiliser(); public abstract void utiliser();
public abstract void attaquer(Joueur j, int blessure); public void attaquer(Joueur j, int blessure) {
j.addToStat(Joueur.PLAYER_HP, -blessure);
}
public boolean victoire(){ public boolean victoire(){
return this.getCondition().isTrue(this.joueur); return this.getCondition().isTrue(this.joueur);

View File

@ -18,11 +18,14 @@ public class Charles extends CartePersonnage{
} }
@Override
public void attaquer(Joueur j, int blessure) { public void attaquer(Joueur j, int blessure) {
if(this.getJoueur().getRevele()){ Joueur joueur = this.getJoueur();
super.attaquer(j, blessure);
if(joueur.getStat(Joueur.PLAYER_HP) > 2 && joueur.getRevele()){
// TODO Choisir effet
Plateau p = j.getPlateau(); Plateau p = j.getPlateau();
utiliser(); utiliser();
p.attaquer(this.getJoueur(), j); p.attaquer(this.getJoueur(), j);

View File

@ -34,13 +34,7 @@ public class Daniel extends CartePersonnage{
@Override @Override
public void utiliser() { public void utiliser() {
// TODO Listener mort this.getJoueur().setRevele(true);
} }
@Override
public void attaquer(Joueur j, int blessure) {
// TODO Auto-generated method stub
}
} }

View File

@ -11,7 +11,7 @@ public class Emi extends CartePersonnage{
this.setCondition(new WinConditionHunter()); this.setCondition(new WinConditionHunter());
} }
//m<EFBFBD>thode
public void deplacer() { public void deplacer() {
} }
@ -21,11 +21,4 @@ public class Emi extends CartePersonnage{
// TODO Auto-generated method stub // TODO Auto-generated method stub
} }
@Override
public void attaquer(Joueur j, int blessure) {
// TODO Auto-generated method stub
}
} }

View File

@ -6,7 +6,6 @@ import main.Plateau;
public class Franklin extends Unique{ public class Franklin extends Unique{
//constructeur
public Franklin(String nom, int hp, Joueur joueur) { public Franklin(String nom, int hp, Joueur joueur) {
super(nom, nom, hp, joueur); super(nom, nom, hp, joueur);
this.setCondition(new WinConditionHunter()); this.setCondition(new WinConditionHunter());
@ -22,13 +21,13 @@ public class Franklin extends Unique{
public void utiliser() { public void utiliser() {
Joueur joueur = this.getJoueur(); Joueur joueur = this.getJoueur();
if(this.isCapaciteUsed() && joueur.getRevele()) { if(!this.isCapaciteUsed() && joueur.getRevele()) {
Plateau p = joueur.getPlateau(); Plateau p = joueur.getPlateau();
int roll = p.roll6(); int roll = p.roll6();
Joueur joueur2 = joueur.choisirTous(); Joueur joueur2 = joueur.choisirTous();
joueur2.addToStat(Joueur.PLAYER_HP, -roll); super.attaquer(joueur2, roll);
} }
} }

View File

@ -21,13 +21,13 @@ public class Georges extends Unique{
public void utiliser() { public void utiliser() {
Joueur joueur = this.getJoueur(); Joueur joueur = this.getJoueur();
if(this.isCapaciteUsed() && joueur.getRevele()) { if(!this.isCapaciteUsed() && joueur.getRevele()) {
Plateau p = joueur.getPlateau(); Plateau p = joueur.getPlateau();
int roll = p.roll4(); int roll = p.roll4();
Joueur joueur2 = joueur.choisirTous(); Joueur joueur2 = joueur.choisirTous();
joueur2.addToStat(Joueur.PLAYER_HP, -roll); super.attaquer(joueur2, roll);
} }
} }

View File

@ -4,27 +4,16 @@ import condition.WinConditionShadow;
import main.Joueur; import main.Joueur;
public class LoupGarou extends CartePersonnage { public class LoupGarou extends CartePersonnage {
//constructeur
public LoupGarou(String nom, String desc ,int hp, Joueur joueur) { public LoupGarou(String nom, String desc ,int hp, Joueur joueur) {
super(nom,desc, hp, joueur); super(nom,desc, hp, joueur);
this.setCondition(new WinConditionShadow()); this.setCondition(new WinConditionShadow());
} }
//m<EFBFBD>thodes
public void contreAttaquer(Joueur j) {
}
@Override @Override
public void utiliser() { public void utiliser() {
// TODO Auto-generated method stub // TODO Auto-generated method stub
} }
@Override
public void attaquer(Joueur j, int blessure) {
// TODO Auto-generated method stub
}
} }

View File

@ -15,11 +15,4 @@ public class Metamorphe extends CartePersonnage{
// TODO Auto-generated method stub // TODO Auto-generated method stub
} }
@Override
public void attaquer(Joueur j, int blessure) {
// TODO Auto-generated method stub
}
} }

View File

@ -11,8 +11,6 @@ public abstract class Unique extends CartePersonnage{
} }
public boolean isCapaciteUsed() { public boolean isCapaciteUsed() {
return capaciteUsed; return capaciteUsed;
} }
@ -20,11 +18,4 @@ public abstract class Unique extends CartePersonnage{
public void setCapaciteUsed(boolean capaciteUsed) { public void setCapaciteUsed(boolean capaciteUsed) {
this.capaciteUsed = capaciteUsed; this.capaciteUsed = capaciteUsed;
} }
@Override
public void utiliser() {
// TODO Auto-generated method stub
}
} }

View File

@ -33,6 +33,7 @@ public class Vampire extends CartePersonnage{
*/ */
public void attaquer(Joueur j, int blessure) { public void attaquer(Joueur j, int blessure) {
super.attaquer(j, blessure);
if(this.getJoueur().getRevele()) if(this.getJoueur().getRevele())
{ {
utiliser(this.getJoueur()); utiliser(this.getJoueur());

View File

@ -36,7 +36,7 @@ class ConditionClassPersonnageTest {
assertTrue(cc.isTrue(j)); assertTrue(cc.isTrue(j));
CartePersonnage cp2 = new Bob(null, null, 0, j); CartePersonnage cp2 = new Bob(j);
// Le personnage ne fait pas partie des classes // Le personnage ne fait pas partie des classes
j.setCartePersonnage(cp2); j.setCartePersonnage(cp2);
assertFalse(cc.isTrue(j)); assertFalse(cc.isTrue(j));

View File

@ -4,13 +4,13 @@ import static org.junit.Assert.assertTrue;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Random;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import main.Joueur; import main.Joueur;
import main.Plateau; import main.Plateau;
import personnage.Allie;
class ActionAttaquerTest { class ActionAttaquerTest {
@ -25,6 +25,9 @@ class ActionAttaquerTest {
j1 = new Joueur("Michel"); j1 = new Joueur("Michel");
j2 = new Joueur("Gérard"); j2 = new Joueur("Gérard");
Allie allie1 = new Allie(j1);
Allie allie2 = new Allie(j2);
joueurs.add(j1); joueurs.add(j1);
joueurs.add(j2); joueurs.add(j2);
@ -67,5 +70,4 @@ class ActionAttaquerTest {
assertTrue(Math.abs(countNb-80) <= error); assertTrue(Math.abs(countNb-80) <= error);
} }
} }
} }