Merge branch 'development' of https://github.com/PTE-SH/ShadowHunterGame into development
This commit is contained in:
commit
36991016ba
@ -13,12 +13,19 @@ public abstract class CarteCondition extends CarteEffet implements Serializable{
|
|||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = 903022795821166067L;
|
private static final long serialVersionUID = 903022795821166067L;
|
||||||
|
|
||||||
|
public CarteCondition() {
|
||||||
|
super("","");
|
||||||
|
this.condition = new Condition();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public CarteCondition(String nom, String description) {
|
public CarteCondition(String nom, String description) {
|
||||||
super(nom, description);
|
super(nom, description);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private Condition condition;
|
private Condition condition;
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,11 +14,14 @@ public abstract class CarteEffet extends Carte implements Serializable{
|
|||||||
private static final long serialVersionUID = -5248405395465365805L;
|
private static final long serialVersionUID = -5248405395465365805L;
|
||||||
private Effet effet;
|
private Effet effet;
|
||||||
|
|
||||||
|
|
||||||
public CarteEffet(String nom, String description) {
|
public CarteEffet(String nom, String description) {
|
||||||
super(nom, description);
|
super(nom, description);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @param j Appel la méthode utiliser de effet sur le joueur j
|
* @param j Appel la méthode utiliser de effet sur le joueur j
|
||||||
*/
|
*/
|
||||||
|
@ -4,10 +4,14 @@ import main.Joueur;
|
|||||||
import main.Type;
|
import main.Type;
|
||||||
|
|
||||||
|
|
||||||
public abstract class Equipement extends CartePiochable<Type>{
|
public abstract class CarteEquipement<T extends Type> extends CartePiochable<Type>{
|
||||||
|
|
||||||
|
/**
|
||||||
public Equipement(String nom, String description) {
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 7537771209935892801L;
|
||||||
|
|
||||||
|
public CarteEquipement(String nom, String description) {
|
||||||
super(nom, description);
|
super(nom, description);
|
||||||
// TODO Auto-generated constructor stub
|
// TODO Auto-generated constructor stub
|
||||||
}
|
}
|
23
src/carte/CarteEquipementEffet.java
Normal file
23
src/carte/CarteEquipementEffet.java
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
package carte;
|
||||||
|
|
||||||
|
import main.Joueur;
|
||||||
|
import main.Type;
|
||||||
|
|
||||||
|
public class CarteEquipementEffet<T extends Type> extends CarteEquipement<Type> {
|
||||||
|
|
||||||
|
public CarteEquipementEffet(String nom, String description) {
|
||||||
|
super(nom, description);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -7036514419711836673L;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void reverse(Joueur j) {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
37
src/carte/CarteEquipementStat.java
Normal file
37
src/carte/CarteEquipementStat.java
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
package carte;
|
||||||
|
|
||||||
|
import condition.Condition;
|
||||||
|
import effet.Effet;
|
||||||
|
import effet.action.ActionAltererStatistiquesJoueur;
|
||||||
|
import main.Joueur;
|
||||||
|
import main.Type;
|
||||||
|
|
||||||
|
public class CarteEquipementStat<T extends Type> extends CarteEquipement<Type>{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 1602387056611454284L;
|
||||||
|
|
||||||
|
public CarteEquipementStat(String nom, String description) {
|
||||||
|
super(nom, description);
|
||||||
|
}
|
||||||
|
|
||||||
|
public CarteEquipementStat(Effet effet, Condition condition) {
|
||||||
|
super("","");
|
||||||
|
this.setEffet(effet);
|
||||||
|
this.setCondition(condition);
|
||||||
|
}
|
||||||
|
|
||||||
|
public CarteEquipementStat(Effet effet) {
|
||||||
|
super("","");
|
||||||
|
this.setEffet(effet);
|
||||||
|
this.setCondition(new Condition());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void reverse(Joueur j) {
|
||||||
|
ActionAltererStatistiquesJoueur action = ((ActionAltererStatistiquesJoueur) this.getEffet().getAction()).getReverseAction();
|
||||||
|
action.affecte(j, j);
|
||||||
|
}
|
||||||
|
}
|
@ -4,6 +4,8 @@ import java.io.Serializable;
|
|||||||
|
|
||||||
import condition.Condition;
|
import condition.Condition;
|
||||||
import effet.Effet;
|
import effet.Effet;
|
||||||
|
import effet.EffetChoisirCible;
|
||||||
|
import effet.EffetSelf;
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
import main.Type;
|
import main.Type;
|
||||||
|
|
||||||
@ -17,11 +19,17 @@ public class CartePiochable<T extends Type> extends CarteCondition implements Se
|
|||||||
}
|
}
|
||||||
|
|
||||||
public CartePiochable(Effet e, Condition c) {
|
public CartePiochable(Effet e, Condition c) {
|
||||||
super("","");
|
super();
|
||||||
this.setEffet(e);
|
this.setEffet(e);
|
||||||
this.setCondition(c);
|
this.setCondition(c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public CartePiochable(Effet effet) {
|
||||||
|
super();
|
||||||
|
this.setEffet(effet);
|
||||||
|
this.setCondition(new Condition());
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @param j Appel la méthode utiliser de effet sur le joueur j
|
* @param j Appel la méthode utiliser de effet sur le joueur j
|
||||||
*/
|
*/
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
package carte;
|
|
||||||
|
|
||||||
import effet.action.ActionAltererStatistiquesJoueur;
|
|
||||||
import main.Joueur;
|
|
||||||
|
|
||||||
public class EquipementStat extends Equipement{
|
|
||||||
|
|
||||||
public EquipementStat(String nom, String description) {
|
|
||||||
super(nom, description);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void reverse(Joueur j) {
|
|
||||||
ActionAltererStatistiquesJoueur action = ((ActionAltererStatistiquesJoueur) this.getEffet().getAction()).getReverseAction();
|
|
||||||
action.affecte(j, j);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,6 +1,7 @@
|
|||||||
package condition;
|
package condition;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
@ -9,6 +10,10 @@ import personnage.CartePersonnage;
|
|||||||
|
|
||||||
public class ConditionClassPersonnage extends Condition{
|
public class ConditionClassPersonnage extends Condition{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -2298344287059138254L;
|
||||||
private List<Class<? extends CartePersonnage>> classes;
|
private List<Class<? extends CartePersonnage>> classes;
|
||||||
|
|
||||||
|
|
||||||
@ -21,7 +26,6 @@ public class ConditionClassPersonnage extends Condition{
|
|||||||
* @param classes Les Class des différents Personnage's.
|
* @param classes Les Class des différents Personnage's.
|
||||||
*/
|
*/
|
||||||
public ConditionClassPersonnage(List<Class<? extends CartePersonnage>> classes){
|
public ConditionClassPersonnage(List<Class<? extends CartePersonnage>> classes){
|
||||||
|
|
||||||
this.classes = new ArrayList<Class<? extends CartePersonnage>>();
|
this.classes = new ArrayList<Class<? extends CartePersonnage>>();
|
||||||
this.classes.addAll(classes);
|
this.classes.addAll(classes);
|
||||||
}
|
}
|
||||||
@ -29,6 +33,14 @@ public class ConditionClassPersonnage extends Condition{
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public ConditionClassPersonnage(Class<? extends CartePersonnage>...classes) {
|
||||||
|
this.classes = new ArrayList<Class<? extends CartePersonnage>>();
|
||||||
|
this.classes.addAll(Arrays.asList(classes));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Vérifie qu'il existe au moins une classe qui correspond au Personnage du Joueur.
|
* Vérifie qu'il existe au moins une classe qui correspond au Personnage du Joueur.
|
||||||
* <br><br>
|
* <br><br>
|
||||||
|
@ -1,17 +1,32 @@
|
|||||||
package condition;
|
package condition;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
import personnage.CartePersonnage;
|
import personnage.CartePersonnage;
|
||||||
|
import personnage.CartePersonnage.Equipe;
|
||||||
|
|
||||||
|
|
||||||
public class ConditionType extends Condition{
|
public class ConditionEquipe extends Condition{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 8261153600401164649L;
|
||||||
private List<CartePersonnage.Equipe> equipes;
|
private List<CartePersonnage.Equipe> equipes;
|
||||||
|
|
||||||
public ConditionType(List<CartePersonnage.Equipe> equipes){
|
public ConditionEquipe(Equipe e) {
|
||||||
|
this.equipes = new ArrayList<CartePersonnage.Equipe>();
|
||||||
|
this.equipes.add(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ConditionEquipe(Equipe...equipes) {
|
||||||
|
this.equipes = Arrays.asList(equipes);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ConditionEquipe(List<CartePersonnage.Equipe> equipes){
|
||||||
|
|
||||||
this.equipes = new ArrayList<CartePersonnage.Equipe>();
|
this.equipes = new ArrayList<CartePersonnage.Equipe>();
|
||||||
this.equipes.addAll(equipes);
|
this.equipes.addAll(equipes);
|
||||||
@ -20,6 +35,11 @@ public class ConditionType extends Condition{
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Vérifie qu'il existe au moins une classe qui correspond à l'équipe du Joueur.
|
* Vérifie qu'il existe au moins une classe qui correspond à l'équipe du Joueur.
|
||||||
* <br><br>
|
* <br><br>
|
@ -1,6 +1,7 @@
|
|||||||
package condition;
|
package condition;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
@ -15,6 +16,11 @@ public class ConditionMultiple extends Condition {
|
|||||||
this.conditions.addAll(conditions);
|
this.conditions.addAll(conditions);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ConditionMultiple(Condition...conditions) {
|
||||||
|
this.conditions = new ArrayList<Condition>();
|
||||||
|
this.conditions.addAll(Arrays.asList(conditions));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Vérifie que toutes les conditions soient vraies
|
* Vérifie que toutes les conditions soient vraies
|
||||||
* @param joueur Le joueur sur lequel on vérifie les conditions.
|
* @param joueur Le joueur sur lequel on vérifie les conditions.
|
||||||
|
16
src/condition/ConditionReveal.java
Normal file
16
src/condition/ConditionReveal.java
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
package condition;
|
||||||
|
|
||||||
|
import main.Joueur;
|
||||||
|
|
||||||
|
public class ConditionReveal extends Condition {
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -7476657033160343165L;
|
||||||
|
|
||||||
|
|
||||||
|
public boolean isTrue(Joueur joueur) {
|
||||||
|
return joueur.getRevele();
|
||||||
|
}
|
||||||
|
}
|
233
src/database/CreatingCardsTest.java
Normal file
233
src/database/CreatingCardsTest.java
Normal file
@ -0,0 +1,233 @@
|
|||||||
|
package database;
|
||||||
|
|
||||||
|
import carte.CarteEquipementStat;
|
||||||
|
import carte.CartePiochable;
|
||||||
|
import condition.ConditionClassPersonnage;
|
||||||
|
import condition.ConditionEquipe;
|
||||||
|
import condition.ConditionMultiple;
|
||||||
|
import condition.ConditionReveal;
|
||||||
|
import condition.ConditionStatistiques;
|
||||||
|
import effet.EffetChoisirCible;
|
||||||
|
import effet.EffetChoisirEffet;
|
||||||
|
import effet.EffetCiblerTous;
|
||||||
|
import effet.EffetMultiple;
|
||||||
|
import effet.EffetSelf;
|
||||||
|
import effet.action.ActionAltererStatistiquesJoueur;
|
||||||
|
import effet.action.ActionAltererStatistiquesJoueurRoll;
|
||||||
|
import effet.action.ActionMultiple;
|
||||||
|
import effet.action.ActionReveal;
|
||||||
|
import effet.action.ActionVoler;
|
||||||
|
import main.Joueur;
|
||||||
|
import main.TypeLumiere;
|
||||||
|
import main.TypeTenebre;
|
||||||
|
import main.TypeVision;
|
||||||
|
import personnage.Allie;
|
||||||
|
import personnage.CartePersonnage;
|
||||||
|
import personnage.Emi;
|
||||||
|
import personnage.LoupGarou;
|
||||||
|
import personnage.Metamorphe;
|
||||||
|
import personnage.Vampire;
|
||||||
|
|
||||||
|
public class CreatingCardsTest {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
// Lumière
|
||||||
|
|
||||||
|
//Ange gardien
|
||||||
|
insert(2,new CartePiochable<TypeLumiere>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_IMMUNITY, 1, true))));
|
||||||
|
|
||||||
|
|
||||||
|
//Avénement suprême
|
||||||
|
insert(3,new CartePiochable<TypeLumiere>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 20, true))
|
||||||
|
,new ConditionMultiple(new ConditionEquipe(CartePersonnage.Equipe.HUNTER), new ConditionReveal())
|
||||||
|
));
|
||||||
|
|
||||||
|
//Barre de chocolat
|
||||||
|
|
||||||
|
insert(4,new CartePiochable<TypeLumiere>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 20, true))
|
||||||
|
,new ConditionMultiple(new ConditionClassPersonnage(Allie.class,Emi.class,Metamorphe.class), new ConditionReveal())
|
||||||
|
));
|
||||||
|
|
||||||
|
//Bénédiction
|
||||||
|
|
||||||
|
insert(5,new CartePiochable<TypeLumiere>(new EffetChoisirCible(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,6, true))));
|
||||||
|
|
||||||
|
|
||||||
|
// BOUSSOLE mystique
|
||||||
|
|
||||||
|
// 6
|
||||||
|
|
||||||
|
// 7
|
||||||
|
|
||||||
|
// 8
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Eau bénite
|
||||||
|
insert(9,new CartePiochable<TypeLumiere>(new EffetSelf(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,2, true))));
|
||||||
|
insert(10,new CartePiochable<TypeLumiere>(new EffetSelf(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,2, true))));
|
||||||
|
|
||||||
|
// Eclair purificateur
|
||||||
|
|
||||||
|
insert(11,new CartePiochable<TypeLumiere>(new EffetCiblerTous(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP, -2, true))));
|
||||||
|
|
||||||
|
// Lance de longinus
|
||||||
|
|
||||||
|
insert(12,new CarteEquipementStat<TypeLumiere>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 2, true))
|
||||||
|
,new ConditionMultiple(new ConditionEquipe(CartePersonnage.Equipe.HUNTER), new ConditionReveal())
|
||||||
|
));
|
||||||
|
|
||||||
|
// Miroir divin
|
||||||
|
|
||||||
|
insert(13,new CartePiochable<TypeLumiere>(new EffetSelf(new ActionReveal()),new ConditionClassPersonnage(Vampire.class,LoupGarou.class)));
|
||||||
|
|
||||||
|
|
||||||
|
// Premiers secours
|
||||||
|
|
||||||
|
insert(14, new CartePiochable<TypeLumiere>(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 7, false))));
|
||||||
|
|
||||||
|
|
||||||
|
//Savoir ancestral
|
||||||
|
|
||||||
|
insert(15, new CartePiochable<TypeLumiere>(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_TURN, 1, true))));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//Toge sainte
|
||||||
|
|
||||||
|
insert(16, new CartePiochable<TypeLumiere>(new EffetSelf(new ActionMultiple(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_RESISTANCE, 1, true),new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, -1, true)))));
|
||||||
|
|
||||||
|
|
||||||
|
// Ténèbre
|
||||||
|
|
||||||
|
// Araignée Sanguinaire
|
||||||
|
|
||||||
|
insert(17, new CartePiochable<TypeTenebre>(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)),
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)))));
|
||||||
|
|
||||||
|
|
||||||
|
// Chauve - souris vampire
|
||||||
|
|
||||||
|
insert(18, new CartePiochable<TypeTenebre>(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)),
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 1, true)))));
|
||||||
|
|
||||||
|
insert(19, new CartePiochable<TypeTenebre>(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)),
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 1, true)))));
|
||||||
|
|
||||||
|
insert(20, new CartePiochable<TypeTenebre>(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)),
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 1, true)))));
|
||||||
|
|
||||||
|
// Dynamite
|
||||||
|
|
||||||
|
// 21
|
||||||
|
|
||||||
|
|
||||||
|
// Hache tueuse
|
||||||
|
insert(22,new CarteEquipementStat<TypeTenebre>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 1, true))));
|
||||||
|
|
||||||
|
// Hachoir maudit
|
||||||
|
insert(23,new CarteEquipementStat<TypeTenebre>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 1, true))));
|
||||||
|
|
||||||
|
|
||||||
|
// Mitrailleuse funeste
|
||||||
|
// 24
|
||||||
|
|
||||||
|
// Peau de banane
|
||||||
|
// 25
|
||||||
|
|
||||||
|
// Poupé démoniaque
|
||||||
|
// 26
|
||||||
|
|
||||||
|
insert(28,new CartePiochable<TypeTenebre>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 20, true))
|
||||||
|
,new ConditionMultiple(new ConditionEquipe(CartePersonnage.Equipe.SHADOW), new ConditionReveal())
|
||||||
|
));
|
||||||
|
|
||||||
|
// 29
|
||||||
|
|
||||||
|
insert(30,new CartePiochable<TypeTenebre>(
|
||||||
|
new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER))));
|
||||||
|
|
||||||
|
insert(31,new CartePiochable<TypeTenebre>(
|
||||||
|
new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER))));
|
||||||
|
|
||||||
|
insert(32,new CarteEquipementStat<TypeTenebre>(
|
||||||
|
new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 1, true))));
|
||||||
|
|
||||||
|
|
||||||
|
// Vision clairvoyante
|
||||||
|
insert(33, new CartePiochable<TypeVision>(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -1, true)),
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 11, ConditionStatistiques.LESS)));
|
||||||
|
|
||||||
|
// Vision cupide
|
||||||
|
|
||||||
|
insert(34,new CartePiochable<TypeVision>(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.NEUTRE,CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
insert(35,new CartePiochable<TypeVision>(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.NEUTRE,CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
|
||||||
|
// Vision destructrice
|
||||||
|
|
||||||
|
insert(36, new CartePiochable<TypeVision>(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)),
|
||||||
|
new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 12, ConditionStatistiques.MORE)));
|
||||||
|
|
||||||
|
|
||||||
|
// Vision divine
|
||||||
|
|
||||||
|
// Vision enivrante
|
||||||
|
|
||||||
|
insert(38,new CartePiochable<TypeVision>(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.NEUTRE,CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
insert(39,new CartePiochable<TypeVision>(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.NEUTRE,CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
// Vision Foudroyante
|
||||||
|
|
||||||
|
insert(40,new CartePiochable<TypeVision>(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
|
||||||
|
// Vision furtive
|
||||||
|
|
||||||
|
insert(41,new CartePiochable<TypeVision>(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.HUNTER,CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
insert(42,new CartePiochable<TypeVision>(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.HUNTER,CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
// Vision Mortifère
|
||||||
|
|
||||||
|
insert(43,new CartePiochable<TypeVision>(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
insert(44,new CartePiochable<TypeVision>(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
|
||||||
|
// Vision lugubre
|
||||||
|
|
||||||
|
insert(46,new CartePiochable<TypeVision>(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-2,true)),
|
||||||
|
new ConditionEquipe(CartePersonnage.Equipe.SHADOW)));
|
||||||
|
|
||||||
|
// Vision réconfortante
|
||||||
|
|
||||||
|
// Vision suprême
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void insert(int row, Object obj) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -20,13 +20,11 @@ import effet.action.ActionAltererStatistiquesJoueur;
|
|||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
|
|
||||||
public class TestAddingCard {
|
public class TestAddingCard {
|
||||||
|
|
||||||
|
|
||||||
private final static String url = "jdbc:postgresql://localhost:5432/ShadowHunterDatabase";
|
private final static String url = "jdbc:postgresql://localhost:5432/ShadowHunterDatabase";
|
||||||
private final static String user = "shManager";
|
private final static String user = "shManager";
|
||||||
private final static String password = "shadowhunter1234";
|
private final static String password = "shadowhunter1234";
|
||||||
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
|
||||||
CartePiochable<?> instance = new CartePiochable(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 2, true)), new Condition());
|
CartePiochable<?> instance = new CartePiochable(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 2, true)), new Condition());
|
||||||
@ -35,10 +33,8 @@ public class TestAddingCard {
|
|||||||
insertCartePiochable(instance);
|
insertCartePiochable(instance);
|
||||||
System.out.println(retrieveCartePiochable(0).getEffet());
|
System.out.println(retrieveCartePiochable(0).getEffet());
|
||||||
} catch (IOException | SQLException e) {
|
} catch (IOException | SQLException e) {
|
||||||
// TODO Auto-generated catch block
|
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
} catch (ClassNotFoundException e) {
|
} catch (ClassNotFoundException e) {
|
||||||
// TODO Auto-generated catch block
|
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -71,9 +67,9 @@ public class TestAddingCard {
|
|||||||
|
|
||||||
public static CartePiochable<?> retrieveCartePiochable(int pos) throws IOException, SQLException, ClassNotFoundException {
|
public static CartePiochable<?> retrieveCartePiochable(int pos) throws IOException, SQLException, ClassNotFoundException {
|
||||||
|
|
||||||
Connection conn = connect();
|
Connection conn = connect();
|
||||||
Statement st = conn.createStatement();
|
Statement st = conn.createStatement();
|
||||||
ResultSet rs = st.executeQuery("SELECT * FROM public.\"Test\"");
|
ResultSet rs = st.executeQuery("SELECT * FROM public.\"Test\"");
|
||||||
|
|
||||||
byte[] object = null;
|
byte[] object = null;
|
||||||
if(rs.next()) {
|
if(rs.next()) {
|
||||||
@ -85,6 +81,4 @@ public class TestAddingCard {
|
|||||||
return (CartePiochable<?>) is.readObject();
|
return (CartePiochable<?>) is.readObject();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -67,5 +67,5 @@ se.soigner=Se soigner
|
|||||||
mode.claire=Mode clair
|
mode.claire=Mode clair
|
||||||
musique=Musique
|
musique=Musique
|
||||||
langue=Langue
|
langue=Langue
|
||||||
parametre=Paramétre
|
parametre=Paramètre
|
||||||
enregistrer=Enregistrer
|
enregistrer=Enregistrer
|
30
src/effet/EffetMultiple.java
Normal file
30
src/effet/EffetMultiple.java
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
package effet;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import main.Joueur;
|
||||||
|
|
||||||
|
public class EffetMultiple extends Effet{
|
||||||
|
|
||||||
|
|
||||||
|
private List<Effet> effets;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 1936073174860639420L;
|
||||||
|
|
||||||
|
public EffetMultiple(Effet...effets) {
|
||||||
|
super(null);
|
||||||
|
this.effets = Arrays.asList(effets);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void utiliser(Joueur joueur) {
|
||||||
|
|
||||||
|
for(Effet e : effets) {
|
||||||
|
e.utiliser(joueur);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -2,6 +2,10 @@ package effet.action;
|
|||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
public class ActionAltererStatistiquesJoueur extends Action{
|
public class ActionAltererStatistiquesJoueur extends Action{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 9119524110079268363L;
|
||||||
private String key;
|
private String key;
|
||||||
private int valeur;
|
private int valeur;
|
||||||
private boolean ajouter;
|
private boolean ajouter;
|
||||||
@ -49,4 +53,8 @@ public class ActionAltererStatistiquesJoueur extends Action{
|
|||||||
public ActionAltererStatistiquesJoueur getReverseAction() {
|
public ActionAltererStatistiquesJoueur getReverseAction() {
|
||||||
return new ActionAltererStatistiquesJoueur(key, -valeur, true);
|
return new ActionAltererStatistiquesJoueur(key, -valeur, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setValeur(int valeur) {
|
||||||
|
this.valeur = valeur;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
36
src/effet/action/ActionAltererStatistiquesJoueurRoll.java
Normal file
36
src/effet/action/ActionAltererStatistiquesJoueurRoll.java
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
package effet.action;
|
||||||
|
|
||||||
|
import main.Joueur;
|
||||||
|
import main.Plateau;
|
||||||
|
|
||||||
|
public class ActionAltererStatistiquesJoueurRoll extends ActionAltererStatistiquesJoueur {
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -6614964982752647505L;
|
||||||
|
private int valeurRoll;
|
||||||
|
|
||||||
|
public ActionAltererStatistiquesJoueurRoll(String key, int valeurRoll, boolean ajouter) {
|
||||||
|
super(key, 0, ajouter);
|
||||||
|
this.valeurRoll = valeurRoll;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void affecte(Joueur j1, Joueur j2) {
|
||||||
|
|
||||||
|
Plateau p = j1.getPlateau();
|
||||||
|
int roll;
|
||||||
|
|
||||||
|
if(this.valeurRoll == 6) {
|
||||||
|
|
||||||
|
roll = p.roll6(j1);
|
||||||
|
}else {
|
||||||
|
roll = p.roll4(j1);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.setValeur(roll);
|
||||||
|
|
||||||
|
super.affecte(j1, j2);
|
||||||
|
}
|
||||||
|
}
|
@ -1,5 +1,6 @@
|
|||||||
package effet.action;
|
package effet.action;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
@ -14,6 +15,10 @@ public class ActionMultiple extends Action{
|
|||||||
this.actions = actions;
|
this.actions = actions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ActionMultiple(Action...actions) {
|
||||||
|
this.actions = Arrays.asList(actions);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Lance l'action d'activer toutes les actions contenues dans ActionMultiple.
|
* Lance l'action d'activer toutes les actions contenues dans ActionMultiple.
|
||||||
* @param j1 Le joueur qui lance l'action
|
* @param j1 Le joueur qui lance l'action
|
||||||
|
17
src/effet/action/ActionReveal.java
Normal file
17
src/effet/action/ActionReveal.java
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
package effet.action;
|
||||||
|
|
||||||
|
import main.Joueur;
|
||||||
|
|
||||||
|
public class ActionReveal extends Action {
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 7972405763634156578L;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void affecte(Joueur j1, Joueur j2) {
|
||||||
|
j2.reveal();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -2,12 +2,27 @@ package effet.action;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import carte.Equipement;
|
import carte.CarteEquipement;
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
|
|
||||||
public class ActionVoler extends Action{
|
public class ActionVoler extends Action{
|
||||||
|
|
||||||
|
|
||||||
|
public final static boolean DONNER = false;
|
||||||
|
public final static boolean VOLER = true;
|
||||||
|
|
||||||
|
private boolean choix;
|
||||||
|
|
||||||
|
public ActionVoler(Boolean choix) {
|
||||||
|
super();
|
||||||
|
this.choix = choix;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 3770148032992025640L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Lance l'action de voler une carte équipement.
|
* Lance l'action de voler une carte équipement.
|
||||||
* @param j1 Le joueur qui vol
|
* @param j1 Le joueur qui vol
|
||||||
@ -17,12 +32,24 @@ public class ActionVoler extends Action{
|
|||||||
@Override
|
@Override
|
||||||
public void affecte(Joueur j1, Joueur j2) {
|
public void affecte(Joueur j1, Joueur j2) {
|
||||||
|
|
||||||
List<Equipement> equipements = j2.getEquipements();
|
|
||||||
|
|
||||||
// J1 choisit quel équipement voler
|
|
||||||
Equipement equipement = j1.choisir(equipements);
|
|
||||||
|
|
||||||
j1.voler(j2,equipement);
|
|
||||||
|
|
||||||
|
if(this.choix) {
|
||||||
|
|
||||||
|
List<CarteEquipement> equipements = j2.getEquipements();
|
||||||
|
|
||||||
|
// J1 choisit quel équipement voler
|
||||||
|
CarteEquipement<?> equipement = j1.choisir(equipements);
|
||||||
|
|
||||||
|
j1.voler(j2,equipement);
|
||||||
|
}else {
|
||||||
|
|
||||||
|
List<CarteEquipement> equipements = j1.getEquipements();
|
||||||
|
|
||||||
|
// J1 choisit quel équipement voler
|
||||||
|
CarteEquipement<?> equipement = j1.choisir(equipements);
|
||||||
|
|
||||||
|
j2.voler(j1,equipement);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,7 @@ public class Main extends Application {
|
|||||||
@Override
|
@Override
|
||||||
public void start(Stage primaryStage) throws Exception {
|
public void start(Stage primaryStage) throws Exception {
|
||||||
|
|
||||||
final URL fxmlURL = getClass().getResource("ressources/Jouer_tour(1)lancer_des.fxml"); // "ressources/Jouer_tour(1)lancer_des.fxml"
|
final URL fxmlURL = getClass().getResource("ressources/Menu.fxml"); // "ressources/Jouer_tour(1)lancer_des.fxml"
|
||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
|
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
||||||
Pane root = fxmlLoader.load();
|
Pane root = fxmlLoader.load();
|
||||||
@ -31,7 +31,7 @@ public class Main extends Application {
|
|||||||
System.exit(0);
|
System.exit(0);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
//primaryStage.setMaximized(true);
|
primaryStage.setMaximized(true);
|
||||||
primaryStage.show();
|
primaryStage.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -39,7 +39,5 @@ public class Main extends Application {
|
|||||||
//System.err.close();
|
//System.err.close();
|
||||||
GestionnaireJeu gj = GestionnaireJeu.getGestionnaireJeu();
|
GestionnaireJeu gj = GestionnaireJeu.getGestionnaireJeu();
|
||||||
launch(args);
|
launch(args);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -6,12 +6,13 @@ import java.util.ResourceBundle;
|
|||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.fxml.Initializable;
|
import javafx.fxml.Initializable;
|
||||||
import javafx.scene.control.Button;
|
import javafx.scene.control.Button;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
import main.GestionnaireJeu;
|
import main.GestionnaireJeu;
|
||||||
|
|
||||||
public class ChoisirBoolean implements Initializable {
|
public class ChoisirBoolean implements Initializable {
|
||||||
|
|
||||||
@FXML private Button ouiButton;
|
@FXML private Button ouiButton;
|
||||||
@FXML private Button nonButton;
|
@FXML private Button nonButton;
|
||||||
|
@FXML private Label titre;
|
||||||
|
|
||||||
private boolean result;
|
private boolean result;
|
||||||
@Override
|
@Override
|
||||||
@ -32,4 +33,28 @@ public class ChoisirBoolean implements Initializable {
|
|||||||
public boolean getResult() {
|
public boolean getResult() {
|
||||||
return this.result;
|
return this.result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Button getOuiButton() {
|
||||||
|
return ouiButton;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOuiButton(Button ouiButton) {
|
||||||
|
this.ouiButton = ouiButton;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Button getNonButton() {
|
||||||
|
return nonButton;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNonButton(Button nonButton) {
|
||||||
|
this.nonButton = nonButton;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Label getTitre() {
|
||||||
|
return titre;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTitre(Label titre) {
|
||||||
|
this.titre = titre;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,12 +3,17 @@ package ihm.controller;
|
|||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.ResourceBundle;
|
import java.util.ResourceBundle;
|
||||||
|
|
||||||
|
import carte.CarteEquipement;
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.fxml.Initializable;
|
import javafx.fxml.Initializable;
|
||||||
import javafx.scene.layout.Pane;
|
import javafx.scene.layout.GridPane;
|
||||||
|
import main.Joueur;
|
||||||
|
|
||||||
public class PiocherLumiereTenebreController implements Initializable{
|
public class ChoisirEquipement implements Initializable{
|
||||||
@FXML private Pane rootPane;
|
@FXML private GridPane equipement;
|
||||||
|
|
||||||
|
private Joueur joueurVole;
|
||||||
|
private CarteEquipement equipementVole;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
public void initialize(URL arg0, ResourceBundle arg1) {
|
67
src/ihm/controller/ChoisirJoueur.java
Normal file
67
src/ihm/controller/ChoisirJoueur.java
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
package ihm.controller;
|
||||||
|
|
||||||
|
import java.net.URL;
|
||||||
|
import java.util.ResourceBundle;
|
||||||
|
|
||||||
|
import javafx.fxml.FXML;
|
||||||
|
import javafx.fxml.Initializable;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
|
import javafx.scene.layout.HBox;
|
||||||
|
|
||||||
|
public class ChoisirJoueur implements Initializable{
|
||||||
|
@FXML private HBox joueurHaut;
|
||||||
|
@FXML private HBox joueurBas;
|
||||||
|
@FXML private Label titre;
|
||||||
|
|
||||||
|
private int joueurSelected;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void initialize(URL arg0, ResourceBundle arg1) {
|
||||||
|
for (int i=0; i<joueurHaut.getChildren().size(); i++) {
|
||||||
|
int numJoueur = i;
|
||||||
|
joueurHaut.getChildren().get(i).setOnMouseClicked(e -> {
|
||||||
|
this.joueurSelected = numJoueur;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i=0; i<joueurBas.getChildren().size(); i++) {
|
||||||
|
int numJoueur = i;
|
||||||
|
joueurHaut.getChildren().get(i).setOnMouseClicked(e -> {
|
||||||
|
this.joueurSelected = numJoueur;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//GETTERS AND SETTERS
|
||||||
|
public HBox getJoueurHaut() {
|
||||||
|
return joueurHaut;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setJoueurHaut(HBox joueurHaut) {
|
||||||
|
this.joueurHaut = joueurHaut;
|
||||||
|
}
|
||||||
|
|
||||||
|
public HBox getJoueurBas() {
|
||||||
|
return joueurBas;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setJoueurBas(HBox joueurBas) {
|
||||||
|
this.joueurBas = joueurBas;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Label getTitre() {
|
||||||
|
return titre;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTitre(Label titre) {
|
||||||
|
this.titre = titre;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getJoueurSelected() {
|
||||||
|
return joueurSelected;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setJoueurSelected(int joueurSelected) {
|
||||||
|
this.joueurSelected = joueurSelected;
|
||||||
|
}
|
||||||
|
}
|
@ -51,8 +51,7 @@ public class GestionnaireDePions {
|
|||||||
hbox = (HBox) this.gridPaneLieux.getChildren().get(1);
|
hbox = (HBox) this.gridPaneLieux.getChildren().get(1);
|
||||||
|
|
||||||
}else {
|
}else {
|
||||||
hbox = (HBox) this.gridPaneLieux.getChildren().get(2);
|
hbox = (HBox) this.gridPaneLieux.getChildren().get(2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
StackPane sp = (StackPane) hbox.getChildren().get(indexCL%2);
|
StackPane sp = (StackPane) hbox.getChildren().get(indexCL%2);
|
||||||
|
@ -1,68 +0,0 @@
|
|||||||
package ihm.controller;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.util.Locale;
|
|
||||||
import java.util.Random;
|
|
||||||
import java.util.ResourceBundle;
|
|
||||||
|
|
||||||
import carte.CarteLieu;
|
|
||||||
import ihm.SpriteAnimation;
|
|
||||||
import javafx.animation.Animation;
|
|
||||||
import javafx.event.Event;
|
|
||||||
import javafx.event.EventHandler;
|
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.fxml.FXMLLoader;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.geometry.Rectangle2D;
|
|
||||||
import javafx.scene.Group;
|
|
||||||
import javafx.scene.control.Button;
|
|
||||||
import javafx.scene.control.Label;
|
|
||||||
import javafx.scene.image.ImageView;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
import javafx.scene.layout.AnchorPane;
|
|
||||||
import javafx.scene.layout.BorderPane;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
import javafx.util.Duration;
|
|
||||||
import main.Joueur;
|
|
||||||
|
|
||||||
public class JouerSonTour1Controller implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
@FXML private Label d6;
|
|
||||||
@FXML private Label d4;
|
|
||||||
@FXML private Button btnStop;
|
|
||||||
@FXML private Button btnLancer;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
btnStop.setVisible(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void lancerDes(MouseEvent mouseEvent)throws InterruptedException{
|
|
||||||
System.out.println("\tLancements des dès");
|
|
||||||
|
|
||||||
btnLancer.setVisible(false);
|
|
||||||
btnStop.setVisible(true);
|
|
||||||
|
|
||||||
for (int i=1; i<7; i++) {
|
|
||||||
Thread.sleep(500);
|
|
||||||
d6.setText(Integer.toString(i));
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i=1; i<5; i++) {
|
|
||||||
Thread.sleep(500);
|
|
||||||
d4.setText(Integer.toString(i));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void stop(MouseEvent mouseEvent) throws IOException, InterruptedException {
|
|
||||||
Thread.sleep(2000);
|
|
||||||
final URL fxmlURL = getClass().getResource("/ihm/ressources/Jouer_tour(2)carte_lieux.fxml");
|
|
||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH);
|
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
|
||||||
Pane root = fxmlLoader.load();
|
|
||||||
rootPane.getChildren().setAll(root);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,51 +1,9 @@
|
|||||||
package ihm.controller;
|
package ihm.controller;
|
||||||
|
|
||||||
import java.io.IOException;
|
public class JouerSonTour2Controller extends ChoisirBoolean{
|
||||||
import java.net.URL;
|
public void initButtons () {
|
||||||
import java.util.ResourceBundle;
|
super.getOuiButton().setText("utiliser.capaciter.lieux");
|
||||||
|
super.getNonButton().setText("sauter.etape");
|
||||||
import carte.CarteLieu;
|
super.getTitre().setText("description.capacite.carte.lieux");
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.fxml.FXMLLoader;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.scene.control.Label;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
import javafx.scene.layout.BorderPane;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
|
|
||||||
public class JouerSonTour2Controller implements Initializable{
|
|
||||||
private CarteLieu lieu;
|
|
||||||
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
@FXML private Label descriptionLieu;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
System.out.println("\tDescrption du lieux");
|
|
||||||
//descriptionLieu.setText(lieu.getDescription());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void ignorerEtape(MouseEvent mouseEvent) throws IOException{
|
|
||||||
Pane pane = FXMLLoader.load(getClass().getResource("/ihm/ressources/Jouer_tour(3)attaquer.fxml"));
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void capaciteLieu(MouseEvent mouseEvent) throws IOException{
|
|
||||||
/*//si le lieu fait attaquer ou se soigner
|
|
||||||
if (lieu.getNom().compareTo("foret hantee")) {
|
|
||||||
Pane pane = FXMLLoader.load(getClass().getResource("../ressources/Jouer_tour(2c)attaquer_soigner.fxml"));
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
//si le lieu fait voler une carte equipement
|
|
||||||
}else if(lieu.getNom().compareTo("sanctuaire ancien")) {
|
|
||||||
Pane pane = FXMLLoader.load(getClass().getResource("../ressources/Jouer_tour(2a)voler_equipement.fxml"));
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
//si le lieu fait piocher une carte
|
|
||||||
}else {
|
|
||||||
Pane pane = FXMLLoader.load(getClass().getResource("../ressources/Jouer_tour(2b)piocher_carte.fxml"));
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
9
src/ihm/controller/JouerSonTour2c1Controller.java
Normal file
9
src/ihm/controller/JouerSonTour2c1Controller.java
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
package ihm.controller;
|
||||||
|
|
||||||
|
public class JouerSonTour2c1Controller extends ChoisirBoolean{
|
||||||
|
public void initButtons () {
|
||||||
|
super.getOuiButton().setText("Attaquer !");
|
||||||
|
super.getNonButton().setText("se.soigner");
|
||||||
|
super.getTitre().setText("attaquer.ou.soigner");
|
||||||
|
}
|
||||||
|
}
|
@ -1,35 +1,9 @@
|
|||||||
package ihm.controller;
|
package ihm.controller;
|
||||||
|
|
||||||
import java.io.IOException;
|
public class JouerSonTour3Controller extends ChoisirBoolean{
|
||||||
import java.net.URL;
|
public void initButtons () {
|
||||||
import java.util.ResourceBundle;
|
super.getOuiButton().setText("Attaquer !");
|
||||||
|
super.getNonButton().setText("Ne pas attaquer");
|
||||||
import javafx.fxml.FXML;
|
super.getTitre().setText("Voulez-vous attaquer un joueur ?");
|
||||||
import javafx.fxml.FXMLLoader;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.scene.Node;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
import javafx.stage.Stage;
|
|
||||||
|
|
||||||
public class JouerSonTour3Controller implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*@FXML
|
|
||||||
public void choixJoueur(MouseEvent mouseEvent) throws IOException{
|
|
||||||
Pane pane = FXMLLoader.load(getClass().getResource("../ressources/jouerSonTour4.fxml"));
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
|
|
||||||
}*/
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void pasAttaquer(MouseEvent mouseEvent) throws IOException{
|
|
||||||
Stage appStage = (Stage) ((Node) mouseEvent.getSource()).getScene().getWindow();
|
|
||||||
appStage.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -4,16 +4,17 @@ import java.net.URL;
|
|||||||
import java.util.ResourceBundle;
|
import java.util.ResourceBundle;
|
||||||
|
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.fxml.Initializable;
|
import javafx.scene.control.Label;
|
||||||
import javafx.scene.layout.Pane;
|
import main.Joueur;
|
||||||
|
|
||||||
public class JouerSonTour4Controller implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
|
|
||||||
|
public class JouerSonTour4Controller extends LancerDes{
|
||||||
|
@FXML private Label defenseur;
|
||||||
|
|
||||||
|
private Joueur j;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
public void initialize(URL arg0, ResourceBundle arg1) {
|
||||||
// TODO Auto-generated method stub
|
super.initialize(arg0, arg1);
|
||||||
|
defenseur.setText(j.getNom());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
package ihm.controller;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.util.Locale;
|
|
||||||
import java.util.ResourceBundle;
|
|
||||||
|
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.fxml.FXMLLoader;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
|
|
||||||
public class JouerSonTour5Controller implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
@FXML
|
|
||||||
public void equipementVole(MouseEvent mouseEvent) throws IOException{
|
|
||||||
|
|
||||||
final URL fxmlURL = getClass().getResource("/ihm/ressources/jouerSonTour6.fxml");
|
|
||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH);
|
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
|
||||||
Pane pane = fxmlLoader.load();
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,44 +0,0 @@
|
|||||||
package ihm.controller;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.util.Locale;
|
|
||||||
import java.util.ResourceBundle;
|
|
||||||
|
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.fxml.FXMLLoader;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
|
|
||||||
public class JouerSonTour6Controller implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
@FXML
|
|
||||||
public void piocherVision(MouseEvent mouseEvent) throws IOException{
|
|
||||||
|
|
||||||
final URL fxmlURL = getClass().getResource("/ihm/ressources/jouer_Son_Tour_piocher_vision.fxml");
|
|
||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH);
|
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
|
||||||
Pane pane = fxmlLoader.load();
|
|
||||||
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
|
|
||||||
}
|
|
||||||
@FXML
|
|
||||||
public void piocherTenebre(MouseEvent mouseEvent) throws IOException{
|
|
||||||
|
|
||||||
final URL fxmlURL = getClass().getResource("/ihm/ressources/jouer_Son_Tour_piocher_lum_et_ten.fxml");
|
|
||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH);
|
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
|
||||||
Pane pane = fxmlLoader.load();
|
|
||||||
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
package ihm.controller;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.util.Locale;
|
|
||||||
import java.util.ResourceBundle;
|
|
||||||
|
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.fxml.FXMLLoader;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
|
|
||||||
public class JouerSonTourDonnerVisionController implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
@FXML
|
|
||||||
public void attaquer(MouseEvent mouseEvent) throws IOException{
|
|
||||||
|
|
||||||
final URL fxmlURL = getClass().getResource("/ihm/ressources/jouer_Son_Tour_recevoir_blessure.fxml");
|
|
||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH);
|
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
|
||||||
Pane pane = fxmlLoader.load();
|
|
||||||
|
|
||||||
rootPane.getChildren().setAll(pane);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
49
src/ihm/controller/LancerDes.java
Normal file
49
src/ihm/controller/LancerDes.java
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
package ihm.controller;
|
||||||
|
|
||||||
|
import java.net.URL;
|
||||||
|
import java.util.ResourceBundle;
|
||||||
|
|
||||||
|
import javafx.fxml.FXML;
|
||||||
|
import javafx.fxml.Initializable;
|
||||||
|
import javafx.scene.control.Button;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
|
|
||||||
|
public class LancerDes implements Initializable{
|
||||||
|
@FXML private Label d6;
|
||||||
|
@FXML private Label d4;
|
||||||
|
@FXML private Button btnStop;
|
||||||
|
@FXML private Button btnLancer;
|
||||||
|
|
||||||
|
private int resultatD6;
|
||||||
|
private int resultatD4;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void initialize(URL arg0, ResourceBundle arg1) {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
btnStop.setVisible(false);
|
||||||
|
|
||||||
|
btnLancer.setOnAction(e -> {
|
||||||
|
lancement();
|
||||||
|
btnLancer.setVisible(false);
|
||||||
|
btnStop.setVisible(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
btnStop.setOnAction(e -> {
|
||||||
|
//à remplir avec les valeurs donné par le gestionnaire de jeux
|
||||||
|
d6.setText(Integer.toString(resultatD6));
|
||||||
|
d4.setText(Integer.toString(resultatD4));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void lancement() {
|
||||||
|
/*for (int i=1; i<7; i++) {
|
||||||
|
Thread.sleep(500);
|
||||||
|
d6.setText(Integer.toString(i));
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i=1; i<5; i++) {
|
||||||
|
Thread.sleep(500);
|
||||||
|
d4.setText(Integer.toString(i));
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
}
|
@ -16,6 +16,7 @@ import javafx.scene.image.Image;
|
|||||||
import javafx.scene.image.ImageView;
|
import javafx.scene.image.ImageView;
|
||||||
import javafx.scene.input.MouseEvent;
|
import javafx.scene.input.MouseEvent;
|
||||||
import javafx.scene.layout.AnchorPane;
|
import javafx.scene.layout.AnchorPane;
|
||||||
|
import javafx.scene.layout.Pane;
|
||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
public class MenuController implements Initializable{
|
public class MenuController implements Initializable{
|
||||||
@ -48,6 +49,22 @@ public class MenuController implements Initializable{
|
|||||||
appStage.show();
|
appStage.show();
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@FXML
|
||||||
|
public void ouvrirParametres(MouseEvent mouseEvent) throws IOException{
|
||||||
|
InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav");
|
||||||
|
EffetSonore.playSoundEffect(fileSound1);
|
||||||
|
|
||||||
|
System.out.println("Passage à l'écran des paramètres");
|
||||||
|
final URL fxmlURL = getClass().getResource("/ihm/ressources/parametre.fxml");
|
||||||
|
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
|
||||||
|
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
||||||
|
Pane pane = fxmlLoader.load();
|
||||||
|
|
||||||
|
rootPane.getChildren().setAll(pane);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void afficherRegle(MouseEvent mouseEvent) {
|
public void afficherRegle(MouseEvent mouseEvent) {
|
||||||
|
@ -28,7 +28,7 @@ public class PauseController implements Initializable {
|
|||||||
private CheckBox cbEffet;
|
private CheckBox cbEffet;
|
||||||
|
|
||||||
String filepathMusique = "src//ihm//ressources//musique//The_Red_Fox_Tavern.wav";
|
String filepathMusique = "src//ihm//ressources//musique//The_Red_Fox_Tavern.wav";
|
||||||
InputStream fileMusique = getClass().getResourceAsStream("src//ihm//ressources//musique//The_Red_Fox_Tavern.wav");
|
InputStream fileMusique = getClass().getResourceAsStream("/ihm/ressources/musique/The_Red_Fox_Tavern.wav");
|
||||||
|
|
||||||
boolean MusiqueLancee = ParametreController.cbMusiqueCoche;
|
boolean MusiqueLancee = ParametreController.cbMusiqueCoche;
|
||||||
boolean SonLance = ParametreController.cbSonCoche;
|
boolean SonLance = ParametreController.cbSonCoche;
|
||||||
@ -53,24 +53,21 @@ public class PauseController implements Initializable {
|
|||||||
// Pour la musique
|
// Pour la musique
|
||||||
|
|
||||||
if (fileMusique != null) {
|
if (fileMusique != null) {
|
||||||
System.out.println("point d'arret 1");
|
|
||||||
if (cbMusique.isSelected()) {
|
if (cbMusique.isSelected()) {
|
||||||
System.out.println("\tLancement de la musique");
|
System.out.println("\tLancement de la musique");
|
||||||
|
|
||||||
if (Musique.clipTimePosition == 0 && MusiqueLancee == false) { // si la musique n'a jamais été lancé
|
if (Musique.clipTimePosition == 0 && MusiqueLancee == false) { // si la musique n'a jamais été lancé
|
||||||
Musique.playMusique(fileMusique);
|
Musique.playMusique(fileMusique);
|
||||||
MusiqueLancee = true;
|
MusiqueLancee = true;
|
||||||
System.out.println("point d'arret 2");
|
|
||||||
} else
|
} else
|
||||||
Musique.resumeMusique(Musique.clip); // si elle a deja été lancé mais mis en pause, reprend a partir du point d'arret
|
Musique.resumeMusique(Musique.clip); // si elle a deja été lancé mais mis en pause, reprend a partir du point d'arret
|
||||||
System.out.println("point d'arret 3");
|
|
||||||
} else {
|
} else {
|
||||||
Musique.pauseMusique(Musique.clip); // met en pause la musique
|
Musique.pauseMusique(Musique.clip); // met en pause la musique
|
||||||
System.out.println("\tMise en pause de la musique");
|
System.out.println("\tMise en pause de la musique");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
System.out.println("ON A UN PROBLEME, AUCUN POINT D'ARRET N'EST PASSE");
|
System.out.println("fichier audio non trouvé");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Pour les effets sonores
|
// Pour les effets sonores
|
||||||
|
@ -69,7 +69,7 @@ public class PlateauController implements Initializable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for(int i = 0; i<joueursIHM.size(); i++) {
|
for(int i = 0; i<joueursIHM.size(); i++) {
|
||||||
joueursIHM.get(i).deplacerPionVie((int) (Math.random()*13));
|
joueursIHM.get(i).deplacerPionVie(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
package ihm.controller;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
import java.util.ResourceBundle;
|
|
||||||
|
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.fxml.Initializable;
|
|
||||||
import javafx.scene.layout.Pane;
|
|
||||||
|
|
||||||
public class RecevoirBlessureController implements Initializable{
|
|
||||||
@FXML private Pane rootPane;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -8,9 +8,9 @@
|
|||||||
<?import javafx.scene.shape.Rectangle?>
|
<?import javafx.scene.shape.Rectangle?>
|
||||||
<?import javafx.scene.text.Font?>
|
<?import javafx.scene.text.Font?>
|
||||||
|
|
||||||
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.JouerSonTour1Controller">
|
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.LancerDes">
|
||||||
<children>
|
<children>
|
||||||
<Button fx:id="btnLancer" layoutX="70.0" layoutY="140.0" mnemonicParsing="false" onMouseClicked="#lancerDes" text="%lancer.de.des">
|
<Button fx:id="btnLancer" layoutX="70.0" layoutY="140.0" mnemonicParsing="false" text="%lancer.de.des">
|
||||||
<font>
|
<font>
|
||||||
<Font size="14.0" />
|
<Font size="14.0" />
|
||||||
</font></Button>
|
</font></Button>
|
||||||
@ -35,7 +35,7 @@
|
|||||||
<Font size="48.0" />
|
<Font size="48.0" />
|
||||||
</font>
|
</font>
|
||||||
</Label>
|
</Label>
|
||||||
<Button fx:id="btnStop" layoutX="101.0" layoutY="140.0" mnemonicParsing="false" onMouseClicked="#stop" text="Stop">
|
<Button fx:id="btnStop" layoutX="101.0" layoutY="140.0" mnemonicParsing="false" text="Stop">
|
||||||
<font>
|
<font>
|
||||||
<Font size="14.0" />
|
<Font size="14.0" />
|
||||||
</font>
|
</font>
|
||||||
|
@ -12,8 +12,14 @@
|
|||||||
<children>
|
<children>
|
||||||
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
||||||
<children>
|
<children>
|
||||||
<Button layoutX="103.0" layoutY="133.0" mnemonicParsing="false" onMouseClicked="#capaciteLieu" text="%utiliser.capaciter.lieux" />
|
<Button fx:id="ouiButton" layoutX="103.0" layoutY="133.0" mnemonicParsing="false" text="%utiliser.capaciter.lieux">
|
||||||
<Button layoutX="104.0" layoutY="97.0" mnemonicParsing="false" onMouseClicked="#ignorerEtape" prefHeight="29.0" prefWidth="142.0" text="%sauter.etape" />
|
<font>
|
||||||
|
<Font size="11.0" />
|
||||||
|
</font></Button>
|
||||||
|
<Button fx:id="nonButton" layoutX="104.0" layoutY="97.0" mnemonicParsing="false" text="%sauter.etape">
|
||||||
|
<font>
|
||||||
|
<Font size="11.0" />
|
||||||
|
</font></Button>
|
||||||
<ImageView fitHeight="114.0" fitWidth="82.0" layoutX="14.0" layoutY="33.0" pickOnBounds="true" preserveRatio="true" />
|
<ImageView fitHeight="114.0" fitWidth="82.0" layoutX="14.0" layoutY="33.0" pickOnBounds="true" preserveRatio="true" />
|
||||||
<Label fx:id="descriptionLieu" layoutX="96.0" layoutY="33.0" text="%description.capacite.carte.lieux">
|
<Label fx:id="descriptionLieu" layoutX="96.0" layoutY="33.0" text="%description.capacite.carte.lieux">
|
||||||
<font>
|
<font>
|
||||||
|
@ -1,16 +1,43 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<?import javafx.scene.control.Label?>
|
<?import javafx.scene.control.Label?>
|
||||||
|
<?import javafx.scene.control.ScrollPane?>
|
||||||
|
<?import javafx.scene.image.ImageView?>
|
||||||
<?import javafx.scene.layout.AnchorPane?>
|
<?import javafx.scene.layout.AnchorPane?>
|
||||||
|
<?import javafx.scene.layout.ColumnConstraints?>
|
||||||
|
<?import javafx.scene.layout.GridPane?>
|
||||||
<?import javafx.scene.layout.Pane?>
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
<?import javafx.scene.layout.RowConstraints?>
|
||||||
|
|
||||||
|
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.ChoisirEquipement">
|
||||||
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
|
|
||||||
<children>
|
<children>
|
||||||
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
||||||
<children>
|
<children>
|
||||||
<Label layoutX="58.0" layoutY="62.0" text="%voler.equipement.joueur" />
|
<Label layoutX="58.0" layoutY="14.0" text="%voler.equipement.joueur" />
|
||||||
<Label layoutX="53.0" layoutY="90.0" text="%choisir.equipement.a.voler" />
|
<ScrollPane layoutX="28.0" layoutY="40.0" prefHeight="128.0" prefWidth="200.0">
|
||||||
|
<content>
|
||||||
|
<GridPane fx:id="equipement">
|
||||||
|
<columnConstraints>
|
||||||
|
<ColumnConstraints hgrow="SOMETIMES" />
|
||||||
|
<ColumnConstraints hgrow="SOMETIMES" />
|
||||||
|
<ColumnConstraints hgrow="SOMETIMES" />
|
||||||
|
<ColumnConstraints hgrow="SOMETIMES" />
|
||||||
|
</columnConstraints>
|
||||||
|
<rowConstraints>
|
||||||
|
<RowConstraints vgrow="SOMETIMES" />
|
||||||
|
<RowConstraints vgrow="SOMETIMES" />
|
||||||
|
<RowConstraints vgrow="SOMETIMES" />
|
||||||
|
<RowConstraints vgrow="SOMETIMES" />
|
||||||
|
</rowConstraints>
|
||||||
|
<children>
|
||||||
|
<ImageView fitHeight="60.0" fitWidth="43.0" pickOnBounds="true" preserveRatio="true" />
|
||||||
|
<ImageView fitHeight="60.0" fitWidth="43.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="1" />
|
||||||
|
<ImageView fitHeight="60.0" fitWidth="43.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="2" />
|
||||||
|
<ImageView fitHeight="60.0" fitWidth="43.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="3" />
|
||||||
|
</children>
|
||||||
|
</GridPane>
|
||||||
|
</content>
|
||||||
|
</ScrollPane>
|
||||||
</children>
|
</children>
|
||||||
</Pane>
|
</Pane>
|
||||||
</children>
|
</children>
|
||||||
|
@ -5,13 +5,13 @@
|
|||||||
<?import javafx.scene.layout.AnchorPane?>
|
<?import javafx.scene.layout.AnchorPane?>
|
||||||
<?import javafx.scene.layout.Pane?>
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
|
||||||
|
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.JouerSonTour2c1Controller">
|
||||||
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
|
|
||||||
<children>
|
<children>
|
||||||
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
||||||
<children>
|
<children>
|
||||||
<Label layoutX="71.0" layoutY="57.0" text="%attaquer.ou.soigner" />
|
<Label fx:id="Titre" layoutX="9.0" layoutY="32.0" text="%attaquer.ou.soigner" />
|
||||||
<Button layoutX="86.0" layoutY="100.0" mnemonicParsing="false" text="%se.soigner" />
|
<Button fx:id="nonButton" layoutX="142.0" layoutY="119.0" mnemonicParsing="false" text="%se.soigner" />
|
||||||
|
<Button fx:id="ouiButton" layoutX="29.0" layoutY="119.0" mnemonicParsing="false" text="Attaquer !" />
|
||||||
</children>
|
</children>
|
||||||
</Pane>
|
</Pane>
|
||||||
</children>
|
</children>
|
@ -1,81 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<?import javafx.geometry.Insets?>
|
|
||||||
<?import javafx.scene.control.Button?>
|
|
||||||
<?import javafx.scene.control.Label?>
|
|
||||||
<?import javafx.scene.layout.HBox?>
|
|
||||||
<?import javafx.scene.layout.Pane?>
|
|
||||||
<?import javafx.scene.text.Font?>
|
|
||||||
|
|
||||||
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.JouerSonTour3Controller">
|
|
||||||
<children>
|
|
||||||
<Button layoutX="76.0" layoutY="76.0" mnemonicParsing="false" onMouseClicked="#pasAttaquer" text="Ne pas attaquer" />
|
|
||||||
<HBox layoutY="1.0">
|
|
||||||
<children>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 1">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
<HBox.margin>
|
|
||||||
<Insets right="10.0" />
|
|
||||||
</HBox.margin>
|
|
||||||
</Button>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 2">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
<HBox.margin>
|
|
||||||
<Insets right="10.0" />
|
|
||||||
</HBox.margin>
|
|
||||||
</Button>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 3">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
<HBox.margin>
|
|
||||||
<Insets right="10.0" />
|
|
||||||
</HBox.margin>
|
|
||||||
</Button>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 4">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
</Button>
|
|
||||||
</children>
|
|
||||||
</HBox>
|
|
||||||
<HBox layoutX="1.0" layoutY="153.0">
|
|
||||||
<children>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 5">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
<HBox.margin>
|
|
||||||
<Insets right="10.0" />
|
|
||||||
</HBox.margin>
|
|
||||||
</Button>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 6">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
<HBox.margin>
|
|
||||||
<Insets right="10.0" />
|
|
||||||
</HBox.margin>
|
|
||||||
</Button>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 7">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
<HBox.margin>
|
|
||||||
<Insets right="10.0" />
|
|
||||||
</HBox.margin>
|
|
||||||
</Button>
|
|
||||||
<Button mnemonicParsing="false" text="Joueur 8">
|
|
||||||
<font>
|
|
||||||
<Font size="10.0" />
|
|
||||||
</font>
|
|
||||||
</Button>
|
|
||||||
</children>
|
|
||||||
</HBox>
|
|
||||||
<Label layoutX="73.0" layoutY="55.0" text="Attaquer un joueur !" />
|
|
||||||
</children>
|
|
||||||
</Pane>
|
|
13
src/ihm/ressources/Jouer_tour(3a)attaquer.fxml
Normal file
13
src/ihm/ressources/Jouer_tour(3a)attaquer.fxml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<?import javafx.scene.control.Button?>
|
||||||
|
<?import javafx.scene.control.Label?>
|
||||||
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
|
||||||
|
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.JouerSonTour3Controller">
|
||||||
|
<children>
|
||||||
|
<Button fx:id="nonButton" layoutX="136.0" layoutY="128.0" mnemonicParsing="false" text="Ne pas attaquer" />
|
||||||
|
<Label fx:id="titre" layoutX="40.0" layoutY="31.0" text="Voulez-vous attaquer un joueur ?" />
|
||||||
|
<Button fx:id="ouiButton" layoutX="21.0" layoutY="128.0" mnemonicParsing="false" text="Attaquer !" />
|
||||||
|
</children>
|
||||||
|
</Pane>
|
@ -4,18 +4,30 @@
|
|||||||
<?import javafx.scene.control.Label?>
|
<?import javafx.scene.control.Label?>
|
||||||
<?import javafx.scene.layout.AnchorPane?>
|
<?import javafx.scene.layout.AnchorPane?>
|
||||||
<?import javafx.scene.layout.Pane?>
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
<?import javafx.scene.shape.Polygon?>
|
||||||
|
<?import javafx.scene.shape.Rectangle?>
|
||||||
|
<?import javafx.scene.text.Font?>
|
||||||
|
|
||||||
|
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.JouerSonTour4Controller">
|
||||||
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
|
|
||||||
<children>
|
<children>
|
||||||
<Pane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
||||||
<children>
|
<children>
|
||||||
<Label layoutX="107.0" layoutY="23.0" text="attaque" />
|
<Label layoutX="32.0" layoutY="6.0" text="Vous attaquez" />
|
||||||
<Button layoutX="78.0" layoutY="144.0" mnemonicParsing="false" text="%lancer.de.des" />
|
<Button fx:id="btnLancer" layoutX="78.0" layoutY="144.0" mnemonicParsing="false" text="%lancer.de.des" />
|
||||||
<Label layoutX="161.0" layoutY="23.0" text="%joueur2" />
|
<Label fx:id="defenseur" layoutX="151.0" layoutY="6.0" text="%joueur2" />
|
||||||
<Label layoutX="46.0" layoutY="23.0" text="%joueur3" />
|
<Rectangle arcHeight="5.0" arcWidth="5.0" fill="WHITE" height="87.0" layoutX="26.0" layoutY="45.0" stroke="BLACK" strokeType="INSIDE" width="86.0" />
|
||||||
<Pane layoutX="40.0" layoutY="49.0" prefHeight="85.0" prefWidth="85.0" stylesheets="@style/plateau.css" />
|
<Polygon fill="WHITE" layoutX="177.0" layoutY="92.0" points="-50.0, 40.0, 50.0, 40.0, 0.0, -60.0" stroke="BLACK" strokeType="INSIDE" />
|
||||||
<Pane layoutX="144.0" layoutY="49.0" prefHeight="85.0" prefWidth="85.0" />
|
<Label fx:id="d6" layoutX="56.0" layoutY="55.0" styleClass="des" text="6">
|
||||||
|
<font>
|
||||||
|
<Font size="48.0" />
|
||||||
|
</font>
|
||||||
|
</Label>
|
||||||
|
<Label fx:id="d4" layoutX="163.0" layoutY="55.0" styleClass="des" text="4">
|
||||||
|
<font>
|
||||||
|
<Font size="48.0" />
|
||||||
|
</font>
|
||||||
|
</Label>
|
||||||
|
<Button fx:id="btnStop" layoutX="105.0" layoutY="144.0" mnemonicParsing="false" text="Stop" />
|
||||||
</children>
|
</children>
|
||||||
</Pane>
|
</Pane>
|
||||||
</children>
|
</children>
|
||||||
|
@ -9,11 +9,11 @@
|
|||||||
|
|
||||||
<AnchorPane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1280.0" styleClass="background" stylesheets="@style/plateau.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.MenuController">
|
<AnchorPane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1280.0" styleClass="background" stylesheets="@style/plateau.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.MenuController">
|
||||||
<children>
|
<children>
|
||||||
<VBox alignment="CENTER" prefHeight="802.0" prefWidth="1290.0">
|
<VBox alignment="CENTER" layoutX="-3.0" layoutY="-7.0" prefHeight="802.0" prefWidth="1290.0">
|
||||||
<children>
|
<children>
|
||||||
<ImageView fx:id="titre" fitHeight="190.0" fitWidth="528.0" pickOnBounds="true" preserveRatio="true">
|
<ImageView fx:id="titre" fitHeight="190.0" fitWidth="528.0" pickOnBounds="true" preserveRatio="true">
|
||||||
<VBox.margin>
|
<VBox.margin>
|
||||||
<Insets top="-250.0" />
|
<Insets top="-200.0" />
|
||||||
</VBox.margin>
|
</VBox.margin>
|
||||||
</ImageView>
|
</ImageView>
|
||||||
<Button mnemonicParsing="false" onMouseClicked="#commencerPartie" prefHeight="51.0" prefWidth="102.0" styleClass="bouton" text="%jouer">
|
<Button mnemonicParsing="false" onMouseClicked="#commencerPartie" prefHeight="51.0" prefWidth="102.0" styleClass="bouton" text="%jouer">
|
||||||
@ -21,7 +21,15 @@
|
|||||||
<Font size="24.0" />
|
<Font size="24.0" />
|
||||||
</font>
|
</font>
|
||||||
<VBox.margin>
|
<VBox.margin>
|
||||||
<Insets top="150.0" />
|
<Insets top="100.0" />
|
||||||
|
</VBox.margin>
|
||||||
|
</Button>
|
||||||
|
<Button layoutX="602.0" layoutY="480.0" mnemonicParsing="false" onMouseClicked="#ouvrirParametres" prefHeight="59.0" prefWidth="164.0" styleClass="bouton" text="Paramètres">
|
||||||
|
<font>
|
||||||
|
<Font size="24.0" />
|
||||||
|
</font>
|
||||||
|
<VBox.margin>
|
||||||
|
<Insets top="50.0" />
|
||||||
</VBox.margin>
|
</VBox.margin>
|
||||||
</Button>
|
</Button>
|
||||||
<Button mnemonicParsing="false" onMouseClicked="#afficherRegle" prefHeight="59.0" prefWidth="106.0" styleClass="bouton" text="%regles">
|
<Button mnemonicParsing="false" onMouseClicked="#afficherRegle" prefHeight="59.0" prefWidth="106.0" styleClass="bouton" text="%regles">
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
<AnchorPane fx:id="root" minHeight="0.0" minWidth="0.0" prefHeight="129.0" prefWidth="201.0" style="-fx-background-color: white;" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.ChoisirBoolean">
|
<AnchorPane fx:id="root" minHeight="0.0" minWidth="0.0" prefHeight="129.0" prefWidth="201.0" style="-fx-background-color: white;" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.ChoisirBoolean">
|
||||||
<children>
|
<children>
|
||||||
<Label layoutX="8.0" layoutY="-11.0" prefHeight="26.0" prefWidth="128.0" text="Voulez vous faire cette action ?" AnchorPane.bottomAnchor="77.0" AnchorPane.leftAnchor="8.0" AnchorPane.rightAnchor="7.0" AnchorPane.topAnchor="-11.0">
|
<Label fx:id="titre" layoutX="8.0" layoutY="-11.0" prefHeight="26.0" prefWidth="128.0" text="Voulez vous faire cette action ?" AnchorPane.bottomAnchor="77.0" AnchorPane.leftAnchor="8.0" AnchorPane.rightAnchor="7.0" AnchorPane.topAnchor="-11.0">
|
||||||
<font>
|
<font>
|
||||||
<Font size="13.0" />
|
<Font size="13.0" />
|
||||||
</font>
|
</font>
|
||||||
|
85
src/ihm/ressources/choisirJoueur.fxml
Normal file
85
src/ihm/ressources/choisirJoueur.fxml
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<?import javafx.geometry.Insets?>
|
||||||
|
<?import javafx.scene.control.Button?>
|
||||||
|
<?import javafx.scene.control.Label?>
|
||||||
|
<?import javafx.scene.layout.AnchorPane?>
|
||||||
|
<?import javafx.scene.layout.HBox?>
|
||||||
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
<?import javafx.scene.text.Font?>
|
||||||
|
|
||||||
|
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.ChoisirJoueur">
|
||||||
|
<children>
|
||||||
|
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="180.0" prefWidth="255.0" stylesheets="@style/popUp.css">
|
||||||
|
<children>
|
||||||
|
<HBox fx:id="joueurHaut" layoutX="4.0" layoutY="14.0">
|
||||||
|
<children>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur1">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
</Button>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur2">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets left="2.0" />
|
||||||
|
</HBox.margin>
|
||||||
|
</Button>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur3">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets left="2.0" />
|
||||||
|
</HBox.margin>
|
||||||
|
</Button>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur4">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets left="2.0" />
|
||||||
|
</HBox.margin>
|
||||||
|
</Button>
|
||||||
|
</children>
|
||||||
|
</HBox>
|
||||||
|
<HBox fx:id="joueurBas" layoutX="4.0" layoutY="139.0">
|
||||||
|
<children>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur5">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets right="2.0" />
|
||||||
|
</HBox.margin>
|
||||||
|
</Button>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur6">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets right="2.0" />
|
||||||
|
</HBox.margin>
|
||||||
|
</Button>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur7">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets right="2.0" />
|
||||||
|
</HBox.margin>
|
||||||
|
</Button>
|
||||||
|
<Button mnemonicParsing="false" text="%joueur8">
|
||||||
|
<font>
|
||||||
|
<Font size="10.0" />
|
||||||
|
</font>
|
||||||
|
</Button>
|
||||||
|
</children>
|
||||||
|
</HBox>
|
||||||
|
<Label fx:id="titre" layoutX="50.0" layoutY="82.0" text="Choisir un joueur à attaquer !" />
|
||||||
|
</children>
|
||||||
|
</Pane>
|
||||||
|
</children>
|
||||||
|
</AnchorPane>
|
@ -3,25 +3,25 @@ package main;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import carte.Equipement;
|
import carte.CarteEquipement;
|
||||||
|
|
||||||
public class GestionnaireEquipements {
|
public class GestionnaireEquipements {
|
||||||
|
|
||||||
private Joueur j;
|
private Joueur j;
|
||||||
private List<Equipement> equipements;
|
private List<CarteEquipement> equipements;
|
||||||
|
|
||||||
public GestionnaireEquipements(Joueur j) {
|
public GestionnaireEquipements(Joueur j) {
|
||||||
this.j = j;
|
this.j = j;
|
||||||
this.equipements = new ArrayList<Equipement>();
|
this.equipements = new ArrayList<CarteEquipement>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ajouter(Equipement e) {
|
public void ajouter(CarteEquipement e) {
|
||||||
this.equipements.add(e);
|
this.equipements.add(e);
|
||||||
e.utiliser(this.j);
|
e.utiliser(this.j);
|
||||||
this.j.addToStat(Joueur.PLAYER_NB_EQUIPEMENTS, 1);
|
this.j.addToStat(Joueur.PLAYER_NB_EQUIPEMENTS, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void retirer(Equipement e) {
|
public void retirer(CarteEquipement e) {
|
||||||
if(this.equipements.contains(e)) {
|
if(this.equipements.contains(e)) {
|
||||||
e.reverse(j);
|
e.reverse(j);
|
||||||
this.equipements.remove(e);
|
this.equipements.remove(e);
|
||||||
@ -29,7 +29,7 @@ public class GestionnaireEquipements {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Equipement> getEquipements() {
|
public List<CarteEquipement> getEquipements() {
|
||||||
return equipements;
|
return equipements;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import carte.CarteLieu;
|
import carte.CarteLieu;
|
||||||
import carte.Equipement;
|
import carte.CarteEquipement;
|
||||||
import effet.Effet;
|
import effet.Effet;
|
||||||
import personnage.CartePersonnage;
|
import personnage.CartePersonnage;
|
||||||
import personnage.CartePersonnage.Equipe;
|
import personnage.CartePersonnage.Equipe;
|
||||||
@ -70,6 +70,20 @@ public class Joueur {
|
|||||||
updateVie();
|
updateVie();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//pour tests IA
|
||||||
|
public void setHP(int val) {
|
||||||
|
this.stats.put("HP", val);
|
||||||
|
}
|
||||||
|
|
||||||
|
//pour tests IA
|
||||||
|
public void setNbEquip(int val) {
|
||||||
|
this.stats.put("nb_equipements", val);
|
||||||
|
}
|
||||||
|
//pour tests IA
|
||||||
|
public void setDamage(int val) {
|
||||||
|
this.stats.put("DAMAGE", val);
|
||||||
|
}
|
||||||
|
|
||||||
private void updateVie() {
|
private void updateVie() {
|
||||||
int damage = damageTaken();
|
int damage = damageTaken();
|
||||||
this.plateau.updateVieJoueur(this, damage);
|
this.plateau.updateVieJoueur(this, damage);
|
||||||
@ -107,16 +121,16 @@ public class Joueur {
|
|||||||
return joueurs;
|
return joueurs;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Equipement> getEquipements() {
|
public List<CarteEquipement> getEquipements() {
|
||||||
return this.gestionnaireEquipements.getEquipements();
|
return this.gestionnaireEquipements.getEquipements();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void voler(Joueur j2, Equipement equipement) {
|
public void voler(Joueur j2, CarteEquipement equipement) {
|
||||||
|
|
||||||
j2.gestionnaireEquipements.retirer(equipement);
|
j2.gestionnaireEquipements.retirer(equipement);
|
||||||
this.gestionnaireEquipements.ajouter(equipement); }
|
this.gestionnaireEquipements.ajouter(equipement); }
|
||||||
|
|
||||||
public Equipement choisir(List<Equipement> equipements) {
|
public CarteEquipement choisir(List<CarteEquipement> equipements) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -218,11 +232,11 @@ public class Joueur {
|
|||||||
this.revele = b;
|
this.revele = b;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ajouterEquipement(Equipement equipement) {
|
public void ajouterEquipement(CarteEquipement equipement) {
|
||||||
this.gestionnaireEquipements.ajouter(equipement);
|
this.gestionnaireEquipements.ajouter(equipement);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void retirerEquipement(Equipement equipement) {
|
public void retirerEquipement(CarteEquipement equipement) {
|
||||||
this.gestionnaireEquipements.retirer(equipement);
|
this.gestionnaireEquipements.retirer(equipement);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,8 +3,8 @@ package main;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import carte.Equipement;
|
import carte.CarteEquipement;
|
||||||
import carte.EquipementStat;
|
import carte.CarteEquipementStat;
|
||||||
import effet.Effet;
|
import effet.Effet;
|
||||||
|
|
||||||
public class JoueurVirtuel extends Joueur {
|
public class JoueurVirtuel extends Joueur {
|
||||||
@ -20,17 +20,17 @@ public class JoueurVirtuel extends Joueur {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// on privilegie les equipements qui donnent des stats
|
// on privilegie les equipements qui donnent des stats
|
||||||
public Equipement choisirEquipement(List<Equipement> equips) {
|
public CarteEquipement choisirEquipement(List<CarteEquipement> equips) {
|
||||||
List<Equipement> equipstat = trouverEquipStat(equips);
|
List<CarteEquipement> equipstat = trouverEquipStat(equips);
|
||||||
if (equipstat.size() > 0)
|
if (equipstat.size() > 0)
|
||||||
return equipstat.get((int) Math.floor(Math.random() * equipstat.size()));
|
return equipstat.get((int) Math.floor(Math.random() * equipstat.size()));
|
||||||
return equips.get((int) Math.floor(Math.random() * equips.size()));
|
return equips.get((int) Math.floor(Math.random() * equips.size()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Equipement> trouverEquipStat(List<Equipement> equips) {
|
public List<CarteEquipement> trouverEquipStat(List<CarteEquipement> equips) {
|
||||||
List<Equipement> res = new ArrayList<>();
|
List<CarteEquipement> res = new ArrayList<>();
|
||||||
for (Equipement e : equips) {
|
for (CarteEquipement e : equips) {
|
||||||
if (e instanceof EquipementStat)
|
if (e instanceof CarteEquipementStat)
|
||||||
res.add(e);
|
res.add(e);
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
|
@ -87,7 +87,7 @@ public class Plateau extends Thread{
|
|||||||
|
|
||||||
CarteLieu lieu5 = new CarteLieuType<TypeTenebre>("Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre);
|
CarteLieu lieu5 = new CarteLieuType<TypeTenebre>("Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre);
|
||||||
CarteLieu lieu6 = new CarteLieu("Sanctuaire Ancien","desc",new Point(-1,9));
|
CarteLieu lieu6 = new CarteLieu("Sanctuaire Ancien","desc",new Point(-1,9));
|
||||||
lieu6.setEffet(new EffetChoisirCible(new ActionVoler()));
|
lieu6.setEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER)));
|
||||||
|
|
||||||
List<CarteLieu> cls = new ArrayList<CarteLieu>();
|
List<CarteLieu> cls = new ArrayList<CarteLieu>();
|
||||||
cls.add(lieu6);
|
cls.add(lieu6);
|
||||||
|
@ -14,7 +14,7 @@ public class Bob extends CartePersonnage{
|
|||||||
this.setCondition(condition);
|
this.setCondition(condition);
|
||||||
|
|
||||||
|
|
||||||
EffetTarget effet = new EffetTarget(new ActionVoler());
|
EffetTarget effet = new EffetTarget(new ActionVoler(ActionVoler.VOLER));
|
||||||
this.setEffet(effet);
|
this.setEffet(effet);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ class ConditionTypeTest {
|
|||||||
List<CartePersonnage.Equipe> equipes = new ArrayList<CartePersonnage.Equipe>();
|
List<CartePersonnage.Equipe> equipes = new ArrayList<CartePersonnage.Equipe>();
|
||||||
equipes.add(CartePersonnage.Equipe.HUNTER);
|
equipes.add(CartePersonnage.Equipe.HUNTER);
|
||||||
equipes.add(CartePersonnage.Equipe.NEUTRE);
|
equipes.add(CartePersonnage.Equipe.NEUTRE);
|
||||||
ConditionType ct = new ConditionType(equipes);
|
ConditionEquipe ct = new ConditionEquipe(equipes);
|
||||||
|
|
||||||
Joueur j = new Joueur(null);
|
Joueur j = new Joueur(null);
|
||||||
|
|
||||||
@ -46,7 +46,7 @@ class ConditionTypeTest {
|
|||||||
|
|
||||||
List<CartePersonnage.Equipe> equipes = new ArrayList<CartePersonnage.Equipe>();
|
List<CartePersonnage.Equipe> equipes = new ArrayList<CartePersonnage.Equipe>();
|
||||||
|
|
||||||
ConditionType ct = new ConditionType(equipes);
|
ConditionEquipe ct = new ConditionEquipe(equipes);
|
||||||
Joueur j = new Joueur(null);
|
Joueur j = new Joueur(null);
|
||||||
j.setCartePersonnage(new Allie(j));
|
j.setCartePersonnage(new Allie(j));
|
||||||
assertFalse(ct.isTrue(j));
|
assertFalse(ct.isTrue(j));
|
||||||
|
@ -9,7 +9,7 @@ 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 carte.EquipementStat;
|
import carte.CarteEquipementStat;
|
||||||
import condition.Condition;
|
import condition.Condition;
|
||||||
import effet.EffetSelf;
|
import effet.EffetSelf;
|
||||||
import effet.action.ActionAltererStatistiquesJoueur;
|
import effet.action.ActionAltererStatistiquesJoueur;
|
||||||
@ -51,7 +51,7 @@ class GestionnaireEquipementsTest {
|
|||||||
|
|
||||||
for(int i = 0; i < 20; i++) {
|
for(int i = 0; i < 20; i++) {
|
||||||
|
|
||||||
EquipementStat es = new EquipementStat("AddDamage", "desc");
|
CarteEquipementStat es = new CarteEquipementStat("AddDamage", "desc");
|
||||||
es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 2, true)));
|
es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 2, true)));
|
||||||
es.setCondition(new Condition());
|
es.setCondition(new Condition());
|
||||||
j1.ajouterEquipement(es);
|
j1.ajouterEquipement(es);
|
||||||
@ -67,7 +67,7 @@ class GestionnaireEquipementsTest {
|
|||||||
|
|
||||||
for(int i = 0; i < 20; i++) {
|
for(int i = 0; i < 20; i++) {
|
||||||
|
|
||||||
EquipementStat es = new EquipementStat("AddDamage", "desc");
|
CarteEquipementStat es = new CarteEquipementStat("AddDamage", "desc");
|
||||||
es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, valeurEffet, true)));
|
es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, valeurEffet, true)));
|
||||||
es.setCondition(new Condition());
|
es.setCondition(new Condition());
|
||||||
j1.ajouterEquipement(es);
|
j1.ajouterEquipement(es);
|
||||||
@ -81,7 +81,7 @@ class GestionnaireEquipementsTest {
|
|||||||
|
|
||||||
int valeurEffet = 3;
|
int valeurEffet = 3;
|
||||||
|
|
||||||
EquipementStat es = new EquipementStat("AddDamage", "desc");
|
CarteEquipementStat es = new CarteEquipementStat("AddDamage", "desc");
|
||||||
es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, valeurEffet, true)));
|
es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, valeurEffet, true)));
|
||||||
es.setCondition(new Condition());
|
es.setCondition(new Condition());
|
||||||
j1.ajouterEquipement(es);
|
j1.ajouterEquipement(es);
|
||||||
|
@ -9,11 +9,11 @@ import java.util.List;
|
|||||||
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import carte.Equipement;
|
import carte.CarteEquipement;
|
||||||
|
import carte.CarteEquipementEffet;
|
||||||
|
import carte.CarteEquipementStat;
|
||||||
import personnage.Allie;
|
import personnage.Allie;
|
||||||
import personnage.CartePersonnage.Equipe;
|
|
||||||
import personnage.Franklin;
|
import personnage.Franklin;
|
||||||
import personnage.LoupGarou;
|
|
||||||
import personnage.Vampire;
|
import personnage.Vampire;
|
||||||
|
|
||||||
public class IATest {
|
public class IATest {
|
||||||
@ -87,14 +87,14 @@ public class IATest {
|
|||||||
j2.setCartePersonnage(new Vampire(j2));
|
j2.setCartePersonnage(new Vampire(j2));
|
||||||
|
|
||||||
//test 1 : joueur ami, on ne se devoile pas
|
//test 1 : joueur ami, on ne se devoile pas
|
||||||
jIA.setStat("HP", 10);
|
jIA.setHP(10);
|
||||||
assertFalse(cIA.devoilerIAVampire(jIA, j2));
|
assertFalse(cIA.devoilerIAVampire(jIA, j2));
|
||||||
|
|
||||||
//test 2 : joueur ennemi et peu de HP, on se devoile
|
//test 2 : joueur ennemi et peu de HP, on se devoile
|
||||||
assertTrue(cIA.devoilerIAVampire(jIA, j1));
|
assertTrue(cIA.devoilerIAVampire(jIA, j1));
|
||||||
|
|
||||||
//test 3 : joueur ennemi et beaucoup de HP, on se devoile pas
|
//test 3 : joueur ennemi et beaucoup de HP, on se devoile pas
|
||||||
jIA.setStat("HP", 12);
|
jIA.setHP(12);
|
||||||
assertFalse(cIA.devoilerIAVampire(jIA, j1));
|
assertFalse(cIA.devoilerIAVampire(jIA, j1));
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -107,16 +107,15 @@ public class IATest {
|
|||||||
jIA.setCartePersonnage(new Franklin(jIA));
|
jIA.setCartePersonnage(new Franklin(jIA));
|
||||||
j1.setCartePersonnage(new Franklin(j1));
|
j1.setCartePersonnage(new Franklin(j1));
|
||||||
j2.setCartePersonnage(new Vampire(j2));
|
j2.setCartePersonnage(new Vampire(j2));
|
||||||
|
|
||||||
joueurs.add(j1);
|
joueurs.add(j1);
|
||||||
joueurs.add(j2);
|
joueurs.add(j2);
|
||||||
|
|
||||||
//test 1 : ennemi avec moins de 4 hp, on se devoile
|
//test 1 : ennemi avec moins de 4 hp, on se devoile
|
||||||
j2.setStat("HP", 4);
|
j2.setHP(4);
|
||||||
assertTrue(cIA.devoilerIAGeorges(jIA, joueurs));
|
assertTrue(cIA.devoilerIAGeorges(jIA, joueurs));
|
||||||
|
|
||||||
//test 2 : pas d'ennemi avec moins de 4 hp, on se devoile pas
|
//test 2 : pas d'ennemi avec moins de 4 hp, on se devoile pas
|
||||||
j2.setStat("HP", 6);
|
j2.setHP(6);
|
||||||
assertFalse(cIA.devoilerIAGeorges(jIA, joueurs));
|
assertFalse(cIA.devoilerIAGeorges(jIA, joueurs));
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -132,11 +131,11 @@ public class IATest {
|
|||||||
joueurs.add(j2);
|
joueurs.add(j2);
|
||||||
|
|
||||||
//test 1 : ennemi avec moins de 6 hp, on se devoile
|
//test 1 : ennemi avec moins de 6 hp, on se devoile
|
||||||
j2.setStat("HP", 6);
|
j2.setHP(6);
|
||||||
assertTrue(cIA.devoilerIAFranklin(jIA, joueurs));
|
assertTrue(cIA.devoilerIAFranklin(jIA, joueurs));
|
||||||
|
|
||||||
//test 2 : pas d'ennemi avec moins de 6 hp, on se devoile pas
|
//test 2 : pas d'ennemi avec moins de 6 hp, on se devoile pas
|
||||||
j2.setStat("HP", 8);
|
j2.setHP(8);
|
||||||
assertFalse(cIA.devoilerIAFranklin(jIA, joueurs));
|
assertFalse(cIA.devoilerIAFranklin(jIA, joueurs));
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -147,11 +146,11 @@ public class IATest {
|
|||||||
cIA.setSeed(59);
|
cIA.setSeed(59);
|
||||||
|
|
||||||
//test 1 : pas beaucoup de hp, on se devoile
|
//test 1 : pas beaucoup de hp, on se devoile
|
||||||
jIA.setStat("HP", 5);
|
jIA.setHP(5);
|
||||||
assertTrue(cIA.devoilerIAAllie(jIA));
|
assertTrue(cIA.devoilerIAAllie(jIA));
|
||||||
|
|
||||||
//test 2 : beaucoup de hp, on se devoile pas
|
//test 2 : beaucoup de hp, on se devoile pas
|
||||||
jIA.setStat("HP", 6);
|
jIA.setHP(6);
|
||||||
assertFalse(cIA.devoilerIAAllie(jIA));
|
assertFalse(cIA.devoilerIAAllie(jIA));
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -160,20 +159,20 @@ public class IATest {
|
|||||||
public void devoilerCharlesTest() {
|
public void devoilerCharlesTest() {
|
||||||
//setup
|
//setup
|
||||||
cIA.setSeed(84);
|
cIA.setSeed(84);
|
||||||
j2.setStat("HP", 4);
|
j2.setHP(4);
|
||||||
|
|
||||||
//test 1 : ennemi affaibli, on se devoile
|
//test 1 : ennemi affaibli, on se devoile
|
||||||
jIA.setStat("HP", 10);
|
jIA.setHP(10);
|
||||||
jIA.setStat("DAMAGE", 4);
|
jIA.setDamage(4);
|
||||||
assertTrue(cIA.devoilerIACharles(jIA, j2));
|
assertTrue(cIA.devoilerIACharles(jIA, j2));
|
||||||
|
|
||||||
//test 2 : ennemi affaibli mais pas assez de dmg pour le tuer, on se devoile pas
|
//test 2 : ennemi affaibli mais pas assez de dmg pour le tuer, on se devoile pas
|
||||||
jIA.setStat("DAMAGE", 3);
|
jIA.setDamage(3);
|
||||||
assertFalse(cIA.devoilerIACharles(jIA, j2));
|
assertFalse(cIA.devoilerIACharles(jIA, j2));
|
||||||
|
|
||||||
//test 3 : charles n'a pas beaucoup de hp, on se devoile pas
|
//test 3 : charles n'a pas beaucoup de hp, on se devoile pas
|
||||||
jIA.setStat("DAMAGE", 4);
|
jIA.setDamage(4);
|
||||||
jIA.setStat("HP", 1);
|
jIA.setHP(1);
|
||||||
assertFalse(cIA.devoilerIACharles(jIA, j2));
|
assertFalse(cIA.devoilerIACharles(jIA, j2));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -202,9 +201,9 @@ public class IATest {
|
|||||||
joueurs.add(j3);
|
joueurs.add(j3);
|
||||||
joueurs.add(j2);
|
joueurs.add(j2);
|
||||||
joueurs.add(j1);
|
joueurs.add(j1);
|
||||||
j1.setStat("HP", 4);
|
j1.setHP(4);
|
||||||
j2.setStat("HP", 5);
|
j2.setHP(5);
|
||||||
j3.setStat("HP", 3);
|
j3.setHP(3);
|
||||||
assertEquals(jIA.choisirJoueur(joueurs,Contexte.ATTAQUER).getStat("HP"),4);
|
assertEquals(jIA.choisirJoueur(joueurs,Contexte.ATTAQUER).getStat("HP"),4);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -215,11 +214,10 @@ public class IATest {
|
|||||||
j1.setCartePersonnage(new Franklin(j1));
|
j1.setCartePersonnage(new Franklin(j1));
|
||||||
j2.setCartePersonnage(new Allie(j2));
|
j2.setCartePersonnage(new Allie(j2));
|
||||||
j3.setCartePersonnage(new Vampire(j3));
|
j3.setCartePersonnage(new Vampire(j3));
|
||||||
j1.setStat("nb_equipements", 1);
|
j1.setNbEquip(1);
|
||||||
j2.setStat("nb_equipements", 2);
|
j2.setNbEquip(2);
|
||||||
j3.setStat("nb_equipements", 4);
|
j3.setNbEquip(4);
|
||||||
jIA.setStat("nb_equipements", 3);
|
jIA.setNbEquip(3);
|
||||||
|
|
||||||
|
|
||||||
//test 1 : on renvoit un joueur pas du meme camp avec le plus d'equipements
|
//test 1 : on renvoit un joueur pas du meme camp avec le plus d'equipements
|
||||||
joueurs.add(j3);
|
joueurs.add(j3);
|
||||||
@ -238,8 +236,13 @@ public class IATest {
|
|||||||
@Test
|
@Test
|
||||||
public void choixEquipementTest() {
|
public void choixEquipementTest() {
|
||||||
//setup
|
//setup
|
||||||
List<Equipement> equips = new ArrayList<>();
|
List<CarteEquipement> equips = new ArrayList<>();
|
||||||
//TODO : pas possible d'instancier des Equipements apart des EquipementStat
|
equips.add(new CarteEquipementEffet("lol","mdr"));
|
||||||
|
equips.add(new CarteEquipementEffet("lol1","mdr1"));
|
||||||
|
equips.add(new CarteEquipementStat("lol2","mdr2"));
|
||||||
|
|
||||||
|
//on choisit l'equipement avec les stat en priorite
|
||||||
|
assertTrue(jIA.choisirEquipement(equips) instanceof CarteEquipementStat);
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO : devoilement emi et devoilement bob
|
//TODO : devoilement emi et devoilement bob
|
||||||
|
@ -82,7 +82,7 @@ class PlateauTest {
|
|||||||
|
|
||||||
CarteLieu lieu5 = new CarteLieuType<TypeTenebre>("Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre);
|
CarteLieu lieu5 = new CarteLieuType<TypeTenebre>("Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre);
|
||||||
CarteLieu lieu6 = new CarteLieu("Sanctuaire Ancien","desc",new Point(-1,9));
|
CarteLieu lieu6 = new CarteLieu("Sanctuaire Ancien","desc",new Point(-1,9));
|
||||||
lieu6.setEffet(new EffetChoisirCible(new ActionVoler()));
|
lieu6.setEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER)));
|
||||||
|
|
||||||
List<CarteLieu> cls = new ArrayList<CarteLieu>();
|
List<CarteLieu> cls = new ArrayList<CarteLieu>();
|
||||||
cls.add(lieu6);
|
cls.add(lieu6);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user