diff --git a/forge-ai/src/main/java/forge/ai/ability/AmassAi.java b/forge-ai/src/main/java/forge/ai/ability/AmassAi.java index c69ab0841a9..60eefabbae4 100644 --- a/forge-ai/src/main/java/forge/ai/ability/AmassAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/AmassAi.java @@ -34,7 +34,7 @@ public class AmassAi extends SpellAbilityAi { } final String type = sa.getParam("Type"); StringBuilder sb = new StringBuilder("b_0_0_"); - sb.append(type.toLowerCase()).append("_army"); + sb.append(sa.getOriginalParam("Type").toLowerCase()).append("_army"); final String tokenScript = sb.toString(); final int amount = AbilityUtils.calculateAmount(host, sa.getParamOrDefault("Num", "1"), sa); diff --git a/forge-game/src/main/java/forge/game/CardTraitBase.java b/forge-game/src/main/java/forge/game/CardTraitBase.java index 146c4d872e5..427b2c1468a 100644 --- a/forge-game/src/main/java/forge/game/CardTraitBase.java +++ b/forge-game/src/main/java/forge/game/CardTraitBase.java @@ -86,6 +86,10 @@ public abstract class CardTraitBase extends GameObject implements IHasCardView, return mapParams.get(key); } + public String getOriginalParam(String key) { + return originalMapParams.get(key); + } + public boolean hasParam(String key) { return mapParams.containsKey(key); } diff --git a/forge-game/src/main/java/forge/game/ability/effects/AmassEffect.java b/forge-game/src/main/java/forge/game/ability/effects/AmassEffect.java index b3044562f03..c55c6d84a89 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/AmassEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/AmassEffect.java @@ -63,7 +63,7 @@ public class AmassEffect extends TokenEffectBase { MutableBoolean combatChanged = new MutableBoolean(false); StringBuilder sb = new StringBuilder("b_0_0_"); - sb.append(type.toLowerCase()).append("_army"); + sb.append(sa.getOriginalParam("Type").toLowerCase()).append("_army"); final Card result = TokenInfo.getProtoType(sb.toString(), sa, activator, false); // need to alter the token to add the Type from the Parameter