From f7dfdea36142ea86a6d7cd76619d21c464b8dd6e Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Wed, 13 Nov 2024 14:13:16 +0800 Subject: [PATCH] update clone and copy effect --- .../src/main/java/forge/game/ability/effects/CloneEffect.java | 2 ++ .../java/forge/game/ability/effects/CopyPermanentEffect.java | 2 ++ forge-game/src/main/java/forge/game/card/Card.java | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java index 7b5750284d5..9a7a17f216e 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java @@ -199,6 +199,8 @@ public class CloneEffect extends SpellAbilityEffect { if (sa.hasParam("RememberCloneOrigin")) { tgtCard.addRemembered(cardToCopy); } + // spire + tgtCard.setChosenColorSpire(cardToCopy.getChosenColorSpire()); game.fireEvent(new GameEventCardStatsChanged(tgtCard)); } diff --git a/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java index 08ac7418f67..93c138e9a28 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java @@ -318,6 +318,8 @@ public class CopyPermanentEffect extends TokenEffectBase { copy.setState(copy.getCurrentStateName(), true, true); } } + // spire + copy.setChosenColorSpire(original.getChosenColorSpire()); copy.setTokenSpawningAbility(sa); copy.setGamePieceType(GamePieceType.TOKEN); diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index 7350fe5adcd..4be24e98ae8 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -2119,7 +2119,7 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr public boolean hasChosenColor(String s) { return chosenColors != null && chosenColors.contains(s); } - public final Iterable getChosenColorSpire() { + public final List getChosenColorSpire() { if (chosenColorSpire == null) { return Lists.newArrayList(); }