diff --git a/forge-game/src/main/java/forge/game/card/CardFactory.java b/forge-game/src/main/java/forge/game/card/CardFactory.java index f71a724b424..cea6061e3f1 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactory.java +++ b/forge-game/src/main/java/forge/game/card/CardFactory.java @@ -798,7 +798,7 @@ public class CardFactory { } if (sa.hasParam("RemoveCardTypes")) { - state.removeCardTypes(); + state.removeCardTypes(sa.hasParam("RemoveSubTypes")); } state.addType(types); diff --git a/forge-game/src/main/java/forge/game/card/CardState.java b/forge-game/src/main/java/forge/game/card/CardState.java index 5e0e731de21..ebbb59a1096 100644 --- a/forge-game/src/main/java/forge/game/card/CardState.java +++ b/forge-game/src/main/java/forge/game/card/CardState.java @@ -155,8 +155,11 @@ public class CardState extends GameObject implements IHasSVars { } } - public final void removeCardTypes() { + public final void removeCardTypes(boolean sanisfy) { type.removeCardTypes(); + if (sanisfy) { + type.sanisfySubtypes(); + } } public final void setCreatureTypes(Collection ctypes) {