Fix special actions going through frozen stack (#8642)

This commit is contained in:
tool4ever
2025-09-04 21:16:46 +02:00
committed by GitHub
parent f1d448509e
commit 055cd40fb1

View File

@@ -331,6 +331,12 @@ public class MagicStack /* extends MyObservable */ implements Iterable<SpellAbil
}
}
if (sp instanceof AbilityStatic || (sp.isTrigger() && sp.getTrigger().getOverridingAbility() instanceof AbilityStatic)) {
AbilityUtils.resolve(sp);
// AbilityStatic should do nothing below
return;
}
if (si == null && sp.isActivatedAbility() && !sp.isCopied()) {
// if not already copied use a fresh instance
SpellAbility original = sp;
@@ -354,12 +360,6 @@ public class MagicStack /* extends MyObservable */ implements Iterable<SpellAbil
addAbilityActivatedThisTurn(sp, source);
}
if (sp instanceof AbilityStatic || (sp.isTrigger() && sp.getTrigger().getOverridingAbility() instanceof AbilityStatic)) {
AbilityUtils.resolve(sp);
// AbilityStatic should do nothing below
return;
}
// The ability is added to stack HERE
si = push(sp, si, id);