Building 10, 12, 13 added

This commit is contained in:
2026-03-15 22:29:55 +01:00
parent cce93847a9
commit 020ba874de
4 changed files with 82 additions and 1 deletions
@@ -0,0 +1,38 @@
package it.polimi.ingsw.gc14.Model.Cards.Building.Effects;
import it.polimi.ingsw.gc14.Model.Cards.Building.EffectType;
import it.polimi.ingsw.gc14.Model.Cards.BuildingCard;
import it.polimi.ingsw.gc14.Model.Cards.TribeCards.Character;
import it.polimi.ingsw.gc14.Model.Cards.TribeCards.CharacterType;
import it.polimi.ingsw.gc14.Model.Player;
import java.util.HashMap;
public class Building10 extends BuildingCard {
public Building10(int era, int price) {
super(era,price);
effectType= EffectType.FINAL;
effectId=10;
}
@Override
public BuildingCard clone() {
return new Building8(getEra(),getPrice());
}
@Override
public void applyEffect(Player player) {
HashMap<CharacterType,Integer> map = new HashMap<CharacterType,Integer>();
for(CharacterType t : CharacterType.values())
{
map.put(t, 0);
}
for(Character c : player.getCharacterCards())
{
map.merge(c.getType(), 1, Integer::sum);
}
int numberOfSet = map.values().stream().min(Integer::compareTo).get();
player.addPrestige(6 * numberOfSet);
}
}
@@ -0,0 +1,22 @@
package it.polimi.ingsw.gc14.Model.Cards.Building.Effects;
import it.polimi.ingsw.gc14.Model.Cards.Building.EffectType;
import it.polimi.ingsw.gc14.Model.Cards.BuildingCard;
import it.polimi.ingsw.gc14.Model.Player;
public class Building12 extends BuildingCard {
public Building12(int era, int price) {
super(era,price);
effectType= EffectType.ON_ROUND_END;
effectId=12;
}
@Override
public BuildingCard clone() {
return new Building12(getEra(),getPrice());
}
@Override
// TODO
public void applyEffect(Player player) {
}
}
@@ -0,0 +1,21 @@
package it.polimi.ingsw.gc14.Model.Cards.Building.Effects;
import it.polimi.ingsw.gc14.Model.Cards.Building.EffectType;
import it.polimi.ingsw.gc14.Model.Cards.BuildingCard;
import it.polimi.ingsw.gc14.Model.Player;
public class Building13 extends BuildingCard{
public Building13(int era, int price) {
super(era,price);
effectType= EffectType.FINAL;
effectId=13;
}
@Override
public BuildingCard clone() {
return new Building13(getEra(),getPrice());
}
@Override
public void applyEffect(Player player) {
player.addPrestige(25);
}
}
@@ -13,7 +13,7 @@ public class Building8 extends BuildingCard {
public Building8(int era, int price) {
super(era,price);
effectType= EffectType.FINAL;
effectId=5;
effectId=8;
}
@Override
public BuildingCard clone() {