diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Effect0.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Effect0.java index b326914..accf0f5 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Effect0.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Effect0.java @@ -2,14 +2,41 @@ package it.polimi.ingsw.gc14.Model.Cards.Building.Effects; import it.polimi.ingsw.gc14.Model.Cards.Building.BuildingEffect; import it.polimi.ingsw.gc14.Model.Cards.Building.EffectType; +import it.polimi.ingsw.gc14.Model.Cards.TribeCard; +import it.polimi.ingsw.gc14.Model.Cards.TribeCards.CharacterType; import it.polimi.ingsw.gc14.Model.Player; import java.util.ArrayList; +import java.util.HashMap; +import java.util.Set; public class Effect0 extends BuildingEffect { + + boolean purchased ; + int numSet; public Effect0() { super(EffectType.CARDSET,0); + purchased = false; + numSet = 0; } + + + public void setSetCards(Player player) + { + + if(purchased) + { + return; + } + HashMap map = new HashMap(); + for(TribeCard c : player.getTribeCards()) + { + + } + purchased = true; + + } + @Override public void applyEffect(ArrayList players) { for (Player p : players) { diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Character.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Character.java index 4018ff6..e55b50d 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Character.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Character.java @@ -17,4 +17,5 @@ public abstract class Character extends TribeCard { public String toString() { return super.toString()+" "+type.toString(); } + public abstract Character clone() ; } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Artist.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Artist.java index 79e1d39..eab672f 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Artist.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Artist.java @@ -16,5 +16,10 @@ public class Artist extends Character { public String toString() { return super.toString(); } + + @Override + public Artist clone() { + return new Artist(getEra()); + } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Builder.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Builder.java index 62fc165..956bffe 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Builder.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Builder.java @@ -22,7 +22,10 @@ public class Builder extends Character this.reductionValue = reductionValue; } @Override - public String toString() { return super.toString()+" Reduction Value: " + String.valueOf(reductionValue); + public String toString() { return super.toString()+" Reduction Value: " + String.valueOf(reductionValue); } + @Override + public Builder clone() { + return new Builder(getEra(),reductionValue); } } \ No newline at end of file diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Gatherers.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Gatherers.java index 835f8bb..da3888a 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Gatherers.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Gatherers.java @@ -16,4 +16,9 @@ public class Gatherers extends Character { public String toString() { return super.toString(); } + + @Override + public Gatherers clone() { + return new Gatherers(getEra()); + } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Hunter.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Hunter.java index 52c6845..30552c7 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Hunter.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Hunter.java @@ -28,4 +28,9 @@ public class Hunter extends Character { public String toString() { return super.toString() + "Icon: " + String.valueOf(icon); } + + @Override + public Hunter clone() { + return new Hunter(getEra(),icon); + } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Inventor.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Inventor.java index 6dfb865..50b9d6a 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Inventor.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Inventor.java @@ -29,4 +29,9 @@ public class Inventor extends Character { public String toString() { return super.toString() + " Symbol:" + String.valueOf(icon); } + + @Override + public Inventor clone() { + return new Inventor(getEra(),icon); + } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Shaman.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Shaman.java index f3179c7..df3bb64 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Shaman.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/Shaman.java @@ -28,4 +28,9 @@ public class Shaman extends Character { public String toString() { return super.toString() + "icon: " + String.valueOf(icon); } + + @Override + public Shaman clone() { + return new Shaman(getEra(),icon); + } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Player.java b/src/main/java/it/polimi/ingsw/gc14/Model/Player.java index 62b6e38..e7d7afb 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Player.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Player.java @@ -14,9 +14,9 @@ public class Player { return UserName; } - private ArrayList TribeCards; - public ArrayList getTribeCards() { - return TribeCards; + private ArrayList CharacterCards; + public ArrayList getCharacterCards() { + return CharacterCards.clone(); } private ArrayList BuildingCards; diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java index 28df87f..af19c11 100644 --- a/src/main/java/module-info.java +++ b/src/main/java/module-info.java @@ -4,6 +4,7 @@ module it.polimi.ingsw.gc14 { requires org.controlsfx.controls; requires java.rmi; + requires java.smartcardio; opens it.polimi.ingsw.gc14 to javafx.fxml; exports it.polimi.ingsw.gc14;