Demonstrate: fix copy order

This commit is contained in:
TRT
2022-03-31 09:40:17 +02:00
parent 0b05a7809b
commit ef00f41bcc
3 changed files with 5 additions and 2 deletions

View File

@@ -158,6 +158,9 @@ public class CopySpellAbilityEffect extends SpellAbilityEffect {
} else {
for (int i = 0; i < amount; i++) {
SpellAbility copy = CardFactory.copySpellAbilityAndPossiblyHost(sa, chosenSA, controller);
if (sa.hasParam("IgnoreFreeze")) {
copy.putParam("IgnoreFreeze", "True");
}
if (sa.hasParam("MayChooseTarget")) {
copy.setMayChooseNewTargets(true);
}

View File

@@ -1022,7 +1022,7 @@ public class CardFactoryUtil {
inst.addTrigger(parsedTrigger);
} else if (keyword.equals("Demonstrate")) {
final String trigScript = "Mode$ SpellCast | ValidCard$ Card.Self | TriggerDescription$ Demonstrate (" + inst.getReminderText() + ")";
final String youCopyStr = "DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | MayChooseTarget$ True | Optional$ True | RememberCopies$ True";
final String youCopyStr = "DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | MayChooseTarget$ True | Optional$ True | RememberCopies$ True | IgnoreFreeze$ True";
final String chooseOppStr = "DB$ ChoosePlayer | Defined$ You | Choices$ Player.Opponent | ConditionDefined$ Remembered | ConditionPresent$ Spell";
final String oppCopyStr = "DB$ CopySpellAbility | Controller$ ChosenPlayer | Defined$ TriggeredSpellAbility | MayChooseTarget$ True | ConditionDefined$ Remembered | ConditionPresent$ Spell";
final String cleanupStr = "DB$ Cleanup | ClearRemembered$ True | ClearChosenPlayer$ True";

View File

@@ -273,7 +273,7 @@ public class MagicStack /* extends MyObservable */ implements Iterable<SpellAbil
}
}
if (frozen) {
if (frozen && !sp.hasParam("IgnoreFreeze")) {
si = new SpellAbilityStackInstance(sp);
frozenStack.push(si);
return;