diff --git a/src/carte/CarteEquipement.java b/src/carte/CarteEquipement.java index 02371e3..0f6fe42 100644 --- a/src/carte/CarteEquipement.java +++ b/src/carte/CarteEquipement.java @@ -1,19 +1,20 @@ package carte; +import effet.Effet; import main.Joueur; -import main.Type; -public abstract class CarteEquipement extends CartePiochable{ +public abstract class CarteEquipement extends CartePiochable{ + + /** * */ private static final long serialVersionUID = 7537771209935892801L; - public CarteEquipement(String nom, String description) { - super(nom, description); - // TODO Auto-generated constructor stub + public CarteEquipement(Type t, Effet effet) { + super(t, effet); } public void utiliser(Joueur j) { diff --git a/src/carte/CarteEquipementEffet.java b/src/carte/CarteEquipementEffet.java index e693530..7b59ea5 100644 --- a/src/carte/CarteEquipementEffet.java +++ b/src/carte/CarteEquipementEffet.java @@ -1,12 +1,15 @@ package carte; +import effet.Effet; import main.Joueur; -import main.Type; -public class CarteEquipementEffet extends CarteEquipement { +public class CarteEquipementEffet extends CarteEquipement { - public CarteEquipementEffet(String nom, String description) { - super(nom, description); + + + public CarteEquipementEffet(Type t, Effet effet) { + super(t, effet); + // TODO Auto-generated constructor stub } /** diff --git a/src/carte/CarteEquipementStat.java b/src/carte/CarteEquipementStat.java index 58b25ab..ba1b97d 100644 --- a/src/carte/CarteEquipementStat.java +++ b/src/carte/CarteEquipementStat.java @@ -4,31 +4,29 @@ import condition.Condition; import effet.Effet; import effet.action.ActionAltererStatistiquesJoueur; import main.Joueur; -import main.Type; -public class CarteEquipementStat extends CarteEquipement{ +public class CarteEquipementStat extends CarteEquipement{ + public CarteEquipementStat(Type t, Effet effet) { + super(t, effet); + } + + + + public CarteEquipementStat(Type t, Effet effet, Condition condition) { + super(t, effet); + this.setCondition(condition); + } + + + /** * */ 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(); diff --git a/src/carte/CarteLieuType.java b/src/carte/CarteLieuType.java index 8940fc9..02d1324 100644 --- a/src/carte/CarteLieuType.java +++ b/src/carte/CarteLieuType.java @@ -4,24 +4,28 @@ import java.awt.Point; import main.Joueur; import main.Pioche; -import main.Type; -public class CarteLieuType extends CarteLieu{ +public class CarteLieuType extends CarteLieu{ - private Pioche pioche; + /** + * + */ + private static final long serialVersionUID = -497959392470353155L; + private Pioche pioche; + private CartePiochable.Type type; - public CarteLieuType(String name, String description ,Point coordinates,Pioche pioche) { + public CarteLieuType(CartePiochable.Type type,String name, String description ,Point coordinates,Pioche pioche) { super(name , description , coordinates); + this.type = type; this.pioche = pioche; } - /* * @param j Appel la méthode utiliser de effet sur le joueur j */ public void utiliser(Joueur j) { - CartePiochable carte = pioche.piocher(); + CartePiochable carte = pioche.piocher(); carte.utiliser(j); } diff --git a/src/carte/CartePiochable.java b/src/carte/CartePiochable.java index 52d75cb..10890e7 100644 --- a/src/carte/CartePiochable.java +++ b/src/carte/CartePiochable.java @@ -4,28 +4,33 @@ import java.io.Serializable; import condition.Condition; import effet.Effet; -import effet.EffetChoisirCible; -import effet.EffetSelf; import main.Joueur; -import main.Type; -public class CartePiochable extends CarteCondition implements Serializable{ +public class CartePiochable extends CarteCondition implements Serializable{ private static final long serialVersionUID = 2391013233873750967L; + private Type type; + + public enum Type{ + LUMIERE, + TENEBRE, + VISION + } - public CartePiochable(String nom, String description) { + public CartePiochable(Type t, String nom, String description) { super(nom, description); } - public CartePiochable(Effet e, Condition c) { + public CartePiochable(Type t, Effet e, Condition c) { super(); this.setEffet(e); this.setCondition(c); } - public CartePiochable(Effet effet) { + public CartePiochable(Type t, Effet effet) { super(); + this.type = t; this.setEffet(effet); this.setCondition(new Condition()); } @@ -37,4 +42,8 @@ public class CartePiochable extends CarteCondition implements Se super.utiliser(j); } + public Type getType() { + return type; + } + } diff --git a/src/database/CreatingCardsTest.java b/src/database/CreatingCardsTest.java index 0e425e5..7dd408f 100644 --- a/src/database/CreatingCardsTest.java +++ b/src/database/CreatingCardsTest.java @@ -44,25 +44,25 @@ public class CreatingCardsTest { //Ange gardien try { - QueryGenerator.queryInsertObject(2,new CartePiochable( + QueryGenerator.queryInsertObject(2,new CartePiochable(CartePiochable.Type.LUMIERE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_IMMUNITY, 1, true)))); //Avénement suprême - QueryGenerator.queryInsertObject(3,new CartePiochable( + QueryGenerator.queryInsertObject(3,new CartePiochable(CartePiochable.Type.LUMIERE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 20, true)) ,new ConditionMultiple(new ConditionEquipe(CartePersonnage.Equipe.HUNTER), new ConditionReveal()) )); //Barre de chocolat - QueryGenerator.queryInsertObject(4,new CartePiochable( + QueryGenerator.queryInsertObject(4,new CartePiochable(CartePiochable.Type.LUMIERE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 20, true)) ,new ConditionMultiple(new ConditionClassPersonnage(Allie.class,Emi.class,Metamorphe.class), new ConditionReveal()) )); //Bénédiction - QueryGenerator.queryInsertObject(5,new CartePiochable(new EffetChoisirCible(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,6, true)))); + QueryGenerator.queryInsertObject(5,new CartePiochable(CartePiochable.Type.LUMIERE,new EffetChoisirCible(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,6, true)))); // BOUSSOLE mystique @@ -73,58 +73,58 @@ public class CreatingCardsTest { // 8 // Eau bénite - QueryGenerator.queryInsertObject(9,new CartePiochable(new EffetSelf(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,2, true)))); - QueryGenerator.queryInsertObject(10,new CartePiochable(new EffetSelf(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,2, true)))); + QueryGenerator.queryInsertObject(9,new CartePiochable(CartePiochable.Type.LUMIERE,new EffetSelf(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,2, true)))); + QueryGenerator.queryInsertObject(10,new CartePiochable(CartePiochable.Type.LUMIERE,new EffetSelf(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP,2, true)))); // Eclair purificateur - QueryGenerator.queryInsertObject(11,new CartePiochable(new EffetCiblerTous(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP, -2, true)))); + QueryGenerator.queryInsertObject(11,new CartePiochable(CartePiochable.Type.LUMIERE,new EffetCiblerTous(new ActionAltererStatistiquesJoueurRoll(Joueur.PLAYER_HP, -2, true)))); // Lance de longinus - QueryGenerator.queryInsertObject(12,new CarteEquipementStat( + QueryGenerator.queryInsertObject(12,new CarteEquipementStat(CartePiochable.Type.LUMIERE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 2, true)) ,new ConditionMultiple(new ConditionEquipe(CartePersonnage.Equipe.HUNTER), new ConditionReveal()) )); // Miroir divin - QueryGenerator.queryInsertObject(13,new CartePiochable(new EffetSelf(new ActionReveal()),new ConditionClassPersonnage(Vampire.class,LoupGarou.class))); + QueryGenerator.queryInsertObject(13,new CartePiochable(CartePiochable.Type.LUMIERE,new EffetSelf(new ActionReveal()),new ConditionClassPersonnage(Vampire.class,LoupGarou.class))); // Premiers secours - QueryGenerator.queryInsertObject(14, new CartePiochable(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 7, false)))); + QueryGenerator.queryInsertObject(14, new CartePiochable(CartePiochable.Type.LUMIERE,new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 7, false)))); //Savoir ancestral - QueryGenerator.queryInsertObject(15, new CartePiochable(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_TURN, 1, true)))); + QueryGenerator.queryInsertObject(15, new CartePiochable(CartePiochable.Type.LUMIERE,new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_TURN, 1, true)))); //Toge sainte - QueryGenerator.queryInsertObject(16, new CartePiochable(new EffetSelf(new ActionMultiple(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_RESISTANCE, 1, true),new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, -1, true))))); + QueryGenerator.queryInsertObject(16, new CartePiochable(CartePiochable.Type.LUMIERE,new EffetSelf(new ActionMultiple(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_RESISTANCE, 1, true),new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, -1, true))))); // Ténèbre // Araignée Sanguinaire - QueryGenerator.queryInsertObject(17, new CartePiochable(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), + QueryGenerator.queryInsertObject(17, new CartePiochable(CartePiochable.Type.TENEBRE,new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true))))); // Chauve - souris vampire - QueryGenerator.queryInsertObject(18, new CartePiochable(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), + QueryGenerator.queryInsertObject(18, new CartePiochable(CartePiochable.Type.TENEBRE,new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 1, true))))); - QueryGenerator.queryInsertObject(19, new CartePiochable(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), + QueryGenerator.queryInsertObject(19, new CartePiochable(CartePiochable.Type.TENEBRE,new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 1, true))))); - QueryGenerator.queryInsertObject(20, new CartePiochable(new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), + QueryGenerator.queryInsertObject(20, new CartePiochable(CartePiochable.Type.TENEBRE,new EffetMultiple(new EffetCiblerTous(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 1, true))))); // Dynamite @@ -133,11 +133,11 @@ public class CreatingCardsTest { // Hache tueuse - QueryGenerator.queryInsertObject(22,new CarteEquipementStat( + QueryGenerator.queryInsertObject(22,new CarteEquipementStat(CartePiochable.Type.TENEBRE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 1, true)))); // Hachoir maudit - QueryGenerator.queryInsertObject(23,new CarteEquipementStat( + QueryGenerator.queryInsertObject(23,new CarteEquipementStat(CartePiochable.Type.TENEBRE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 1, true)))); @@ -150,39 +150,39 @@ public class CreatingCardsTest { // Poupé démoniaque // 26 - QueryGenerator.queryInsertObject(28,new CartePiochable( + QueryGenerator.queryInsertObject(28,new CartePiochable(CartePiochable.Type.TENEBRE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 20, true)) ,new ConditionMultiple(new ConditionEquipe(CartePersonnage.Equipe.SHADOW), new ConditionReveal()) )); // 29 - QueryGenerator.queryInsertObject(30,new CartePiochable( + QueryGenerator.queryInsertObject(30,new CartePiochable(CartePiochable.Type.TENEBRE, new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER)))); - QueryGenerator.queryInsertObject(31,new CartePiochable( + QueryGenerator.queryInsertObject(31,new CartePiochable(CartePiochable.Type.TENEBRE, new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER)))); - QueryGenerator.queryInsertObject(32,new CarteEquipementStat( + QueryGenerator.queryInsertObject(32,new CarteEquipementStat(CartePiochable.Type.TENEBRE, new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 1, true)))); // Vision clairvoyante - QueryGenerator.queryInsertObject(33, new CartePiochable(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -1, true)), + QueryGenerator.queryInsertObject(33, new CartePiochable(CartePiochable.Type.VISION,new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -1, true)), new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 11, ConditionStatistiques.LESS))); // Vision cupide - QueryGenerator.queryInsertObject(34,new CartePiochable(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))), + QueryGenerator.queryInsertObject(34,new CartePiochable(CartePiochable.Type.VISION,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))); - QueryGenerator.queryInsertObject(35,new CartePiochable(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))), + QueryGenerator.queryInsertObject(35,new CartePiochable(CartePiochable.Type.VISION,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 - QueryGenerator.queryInsertObject(36, new CartePiochable(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), + QueryGenerator.queryInsertObject(36, new CartePiochable(CartePiochable.Type.VISION,new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true)), new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_HP, 12, ConditionStatistiques.MORE))); @@ -190,35 +190,35 @@ public class CreatingCardsTest { // Vision enivrante - QueryGenerator.queryInsertObject(38,new CartePiochable(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))), + QueryGenerator.queryInsertObject(38,new CartePiochable(CartePiochable.Type.VISION,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))); - QueryGenerator.queryInsertObject(39,new CartePiochable(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))), + QueryGenerator.queryInsertObject(39,new CartePiochable(CartePiochable.Type.VISION,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 - QueryGenerator.queryInsertObject(40,new CartePiochable(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)), + QueryGenerator.queryInsertObject(40,new CartePiochable(CartePiochable.Type.VISION,new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)), new ConditionEquipe(CartePersonnage.Equipe.SHADOW))); // Vision furtive - QueryGenerator.queryInsertObject(41,new CartePiochable(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))), + QueryGenerator.queryInsertObject(41,new CartePiochable(CartePiochable.Type.VISION,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))); - QueryGenerator.queryInsertObject(42,new CartePiochable(new EffetChoisirEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.DONNER)),new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true))), + QueryGenerator.queryInsertObject(42,new CartePiochable(CartePiochable.Type.VISION,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 - QueryGenerator.queryInsertObject(43,new CartePiochable(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)), + QueryGenerator.queryInsertObject(43,new CartePiochable(CartePiochable.Type.VISION,new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-1,true)), new ConditionEquipe(CartePersonnage.Equipe.SHADOW))); // Vision lugubre - QueryGenerator.queryInsertObject(45,new CartePiochable(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-2,true)), + QueryGenerator.queryInsertObject(45,new CartePiochable(CartePiochable.Type.VISION,new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-2,true)), new ConditionEquipe(CartePersonnage.Equipe.SHADOW))); // Vision réconfortante diff --git a/src/database/RessourceLoader.java b/src/database/RessourceLoader.java index bf84217..f33ad8f 100644 --- a/src/database/RessourceLoader.java +++ b/src/database/RessourceLoader.java @@ -7,13 +7,13 @@ import java.util.HashMap; import java.util.Map; import carte.Carte; +import carte.CartePiochable; public class RessourceLoader { private static Map loadCards() throws ClassNotFoundException, IOException{ Table t = new Table(); - Map cartes = new HashMap(); for(int i = 0; i < 61; i++) { @@ -30,6 +30,27 @@ public class RessourceLoader { return cartes; } + private static Map getMapType(CartePiochable.Type t, Map cartes){ + + Map cartesType = new HashMap(); + + for(Integer i: cartes.keySet()) { + + Carte c = cartes.get(i); + if(cartes.get(i) instanceof CartePiochable) { + + CartePiochable carte = (CartePiochable) c; + + CartePiochable.Type type = carte.getType(); + if(t == type) { + cartesType.put(i,carte); + } + } + } + return cartesType; + } + + public static Object deserialize(byte[] data) throws IOException, ClassNotFoundException { ByteArrayInputStream in = new ByteArrayInputStream(data); @@ -42,6 +63,8 @@ public class RessourceLoader { try { Map cartes = loadCards(); System.out.println(cartes); + System.out.println(getMapType(CartePiochable.Type.TENEBRE, cartes)); + } catch (ClassNotFoundException | IOException e) { e.printStackTrace(); } diff --git a/src/database/TestAddingCard.java b/src/database/TestAddingCard.java index 6cd72d2..866bf2e 100644 --- a/src/database/TestAddingCard.java +++ b/src/database/TestAddingCard.java @@ -1,34 +1,14 @@ package database; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.sql.Connection; -import java.sql.DriverManager; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; - -import carte.Carte; -import carte.CartePiochable; -import condition.Condition; -import effet.EffetSelf; -import effet.action.ActionAltererStatistiquesJoueur; -import main.Joueur; - public class TestAddingCard { private final static String url = "jdbc:postgresql://localhost:5432/ShadowHunterDatabase"; private final static String user = "shManager"; private final static String password = "shadowhunter1234"; - +/* 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()); try { insertCartePiochable(instance); @@ -81,5 +61,5 @@ public class TestAddingCard { ObjectInputStream is = new ObjectInputStream(in); return (CartePiochable) is.readObject(); - } + }*/ } diff --git a/src/effet/action/ActionVoler.java b/src/effet/action/ActionVoler.java index 2671dc2..af389f7 100644 --- a/src/effet/action/ActionVoler.java +++ b/src/effet/action/ActionVoler.java @@ -38,7 +38,7 @@ public class ActionVoler extends Action{ List equipements = j2.getEquipements(); // J1 choisit quel équipement voler - CarteEquipement equipement = j1.choisir(equipements); + CarteEquipement equipement = j1.choisir(equipements); j1.voler(j2,equipement); }else { @@ -46,7 +46,7 @@ public class ActionVoler extends Action{ List equipements = j1.getEquipements(); // J1 choisit quel équipement voler - CarteEquipement equipement = j1.choisir(equipements); + CarteEquipement equipement = j1.choisir(equipements); j2.voler(j1,equipement); diff --git a/src/main/Pioche.java b/src/main/Pioche.java index 2a9bf57..6372d06 100644 --- a/src/main/Pioche.java +++ b/src/main/Pioche.java @@ -6,13 +6,19 @@ import java.util.Stack; import carte.CartePiochable; -public class Pioche { +public class Pioche { - private Stack> cartesPiochables; + private Stack cartesPiochables; + private CartePiochable.Type type; - public Pioche(List> cartesPiochables) { + public Pioche(List cartesPiochables) { + + } + + public Pioche(CartePiochable.Type type, List list1) { super(); - this.cartesPiochables = new Stack>(); + this.type = type; + this.cartesPiochables = new Stack(); this.cartesPiochables.addAll(cartesPiochables); melanger(); } @@ -22,7 +28,7 @@ public class Pioche { Collections.shuffle(cartesPiochables); } - public CartePiochable piocher() { + public CartePiochable piocher() { return cartesPiochables.pop(); } } diff --git a/src/main/Plateau.java b/src/main/Plateau.java index bde1f7e..ee3a827 100644 --- a/src/main/Plateau.java +++ b/src/main/Plateau.java @@ -61,31 +61,31 @@ public class Plateau extends Thread{ this.stats.put(NB_SHADOWS, 0); this.stats.put(NB_NEUTRES, 0); - List> list1 = new ArrayList<>(); - List> list2 = new ArrayList<>(); + List list1 = new ArrayList<>(); + List list2 = new ArrayList<>(); for(int i = 0; i < 60; i++) { - CartePiochable carte1 = new CartePiochable("Eau bénite", "Soin 2"); + CartePiochable carte1 = new CartePiochable(CartePiochable.Type.LUMIERE,"Eau bénite", "Soin 2"); carte1.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 2, true))); list1.add(carte1); - CartePiochable carte2 = new CartePiochable("Eau maudite", "Damage 2"); + CartePiochable carte2 = new CartePiochable(CartePiochable.Type.TENEBRE,"Eau maudite", "Damage 2"); carte2.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true))); list2.add(carte2); } - Pioche piocheLumiere = new Pioche(list1); - Pioche piocheTenebre = new Pioche(list2); + Pioche piocheLumiere = new Pioche(list1); + Pioche piocheTenebre = new Pioche(list2); - CarteLieu lieu1 = new CarteLieuType("Antre de l'Ermite","desc",new Point(2,3),piocheTenebre); - CarteLieu lieu2 = new CarteLieuType("Cimetière","desc",new Point(-1,8),piocheTenebre); + CarteLieu lieu1 = new CarteLieuType(CartePiochable.Type.TENEBRE,"Antre de l'Ermite","desc",new Point(2,3),piocheTenebre); + CarteLieu lieu2 = new CarteLieuType(CartePiochable.Type.TENEBRE,"Cimetière","desc",new Point(-1,8),piocheTenebre); CarteLieu lieu3 = new CarteLieu("Forêt hantée","desc",new Point(-1,9)); lieu3.setEffet(new EffetChoisirEffet(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-2,true)), new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,1,true)))); - CarteLieu lieu4 = new CarteLieuType("Monastère","desc",new Point(-1,6),piocheLumiere); + CarteLieu lieu4 = new CarteLieuType(CartePiochable.Type.LUMIERE,"Monastère","desc",new Point(-1,6),piocheLumiere); - CarteLieu lieu5 = new CarteLieuType("Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre); + CarteLieu lieu5 = new CarteLieuType(CartePiochable.Type.TENEBRE,"Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre); CarteLieu lieu6 = new CarteLieu("Sanctuaire Ancien","desc",new Point(-1,9)); lieu6.setEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER))); diff --git a/tests/main/GestionnaireEquipementsTest.java b/tests/main/GestionnaireEquipementsTest.java index 66c226e..30e2ad6 100644 --- a/tests/main/GestionnaireEquipementsTest.java +++ b/tests/main/GestionnaireEquipementsTest.java @@ -51,7 +51,7 @@ class GestionnaireEquipementsTest { for(int i = 0; i < 20; i++) { - CarteEquipementStat es = new CarteEquipementStat("AddDamage", "desc"); + CarteEquipementStat es = new CarteEquipementStat(null,null); es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, 2, true))); es.setCondition(new Condition()); j1.ajouterEquipement(es); @@ -67,7 +67,7 @@ class GestionnaireEquipementsTest { for(int i = 0; i < 20; i++) { - CarteEquipementStat es = new CarteEquipementStat("AddDamage", "desc"); + CarteEquipementStat es = new CarteEquipementStat(null,null); es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, valeurEffet, true))); es.setCondition(new Condition()); j1.ajouterEquipement(es); @@ -81,7 +81,7 @@ class GestionnaireEquipementsTest { int valeurEffet = 3; - CarteEquipementStat es = new CarteEquipementStat("AddDamage", "desc"); + CarteEquipementStat es = new CarteEquipementStat(null,null); es.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_DAMAGE, valeurEffet, true))); es.setCondition(new Condition()); j1.ajouterEquipement(es); diff --git a/tests/main/IATest.java b/tests/main/IATest.java index 5bd6014..a88b9b6 100644 --- a/tests/main/IATest.java +++ b/tests/main/IATest.java @@ -237,9 +237,9 @@ public class IATest { public void choixEquipementTest() { //setup List equips = new ArrayList<>(); - equips.add(new CarteEquipementEffet("lol","mdr")); - equips.add(new CarteEquipementEffet("lol1","mdr1")); - equips.add(new CarteEquipementStat("lol2","mdr2")); + equips.add(new CarteEquipementEffet(null,null)); + equips.add(new CarteEquipementEffet(null,null)); + equips.add(new CarteEquipementStat(null,null)); //on choisit l'equipement avec les stat en priorite assertTrue(jIA.choisirEquipement(equips) instanceof CarteEquipementStat); diff --git a/tests/main/PlateauTest.java b/tests/main/PlateauTest.java index 4580e33..02390fe 100644 --- a/tests/main/PlateauTest.java +++ b/tests/main/PlateauTest.java @@ -54,33 +54,33 @@ class PlateauTest { p = new Plateau(joueurs); - List> list1 = new ArrayList<>(); - List> list2 = new ArrayList<>(); + List list1 = new ArrayList<>(); + List list2 = new ArrayList<>(); for(int i = 0; i < 60; i++) { - CartePiochable carte1 = new CartePiochable("Eau bénite", "Soin 2"); + CartePiochable carte1 = new CartePiochable(CartePiochable.Type.LUMIERE,"Eau bénite", "Soin 2"); carte1.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, 2, true))); list1.add(carte1); - CartePiochable carte2 = new CartePiochable("Eau maudite", "Damage 2"); + CartePiochable carte2 = new CartePiochable(CartePiochable.Type.TENEBRE,"Eau maudite", "Damage 2"); carte2.setEffet(new EffetSelf(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP, -2, true))); list2.add(carte2); } - Pioche piocheLumiere = new Pioche(list1); - Pioche piocheTenebre = new Pioche(list2); + Pioche piocheLumiere = new Pioche(CartePiochable.Type.LUMIERE,list1); + Pioche piocheTenebre = new Pioche(CartePiochable.Type.TENEBRE,list2); - CarteLieu lieu1 = new CarteLieuType("Antre de l'Ermite","desc",new Point(2,3),piocheTenebre); - CarteLieu lieu2 = new CarteLieuType("Cimetière","desc",new Point(-1,8),piocheTenebre); + CarteLieu lieu1 = new CarteLieuType(CartePiochable.Type.TENEBRE,"Antre de l'Ermite","desc",new Point(2,3),piocheTenebre); + CarteLieu lieu2 = new CarteLieuType(CartePiochable.Type.TENEBRE,"Cimetière","desc",new Point(-1,8),piocheTenebre); CarteLieu lieu3 = new CarteLieu("Forêt hantée","desc",new Point(-1,9)); lieu3.setEffet(new EffetChoisirEffet(new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,-2,true)), new EffetChoisirCible(new ActionAltererStatistiquesJoueur(Joueur.PLAYER_HP,1,true)))); - CarteLieu lieu4 = new CarteLieuType("Monastère","desc",new Point(-1,6),piocheLumiere); + CarteLieu lieu4 = new CarteLieuType(CartePiochable.Type.LUMIERE,"Monastère","desc",new Point(-1,6),piocheLumiere); - CarteLieu lieu5 = new CarteLieuType("Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre); + CarteLieu lieu5 = new CarteLieuType(CartePiochable.Type.LUMIERE,"Sanctuaire Ancien","desc",new Point(4,5),piocheTenebre); CarteLieu lieu6 = new CarteLieu("Sanctuaire Ancien","desc",new Point(-1,9)); lieu6.setEffet(new EffetChoisirCible(new ActionVoler(ActionVoler.VOLER)));