From 5c41be49bd726232b6a9b3ca8a03b4d49c77dfd0 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Fri, 12 May 2023 12:17:27 +0800 Subject: [PATCH] update Specialize ImageKey - fix image not updating when specialized.. --- .../src/main/java/forge/game/card/Card.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) 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 2e8cb693437..d706f2bf938 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -5879,6 +5879,29 @@ public class Card extends GameEntity implements Comparable, IHasSVars { public final void setImageKey(final String iFN) { getCardForUi().currentState.setImageKey(iFN); } + public final void setImageKey(final IPaperCard ipc, final CardStateName stateName) { + if (ipc == null) + return; + switch (stateName) { + case SpecializeB: + setImageKey(ipc.getCardBSpecImageKey()); + break; + case SpecializeR: + setImageKey(ipc.getCardRSpecImageKey()); + break; + case SpecializeG: + setImageKey(ipc.getCardGSpecImageKey()); + break; + case SpecializeU: + setImageKey(ipc.getCardUSpecImageKey()); + break; + case SpecializeW: + setImageKey(ipc.getCardWSpecImageKey()); + break; + default: + break; + } + } public String getImageKey(CardStateName state) { CardState c = getCardForUi().states.get(state); @@ -6003,6 +6026,7 @@ public class Card extends GameEntity implements Comparable, IHasSVars { } public final void setSpecialized(final boolean bool) { specialized = bool; + setImageKey(getPaperCard(), getCurrentStateName()); } public final boolean canSpecialize() { return getRules() != null && getRules().getSplitType() == CardSplitType.Specialize;