diff --git a/forge-game/src/main/java/forge/game/ability/effects/PhasesEffect.java b/forge-game/src/main/java/forge/game/ability/effects/PhasesEffect.java index 8e35af293e3..cce889e8c4c 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/PhasesEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/PhasesEffect.java @@ -96,7 +96,7 @@ public class PhasesEffect extends SpellAbilityEffect { } } else { // just phase out for (final Card tgtC : tgtCards) { - if (!tgtC.isPhasedOut()) { + if (!tgtC.isPhasedOut() && !StaticAbilityCantPhase.cantPhaseOut(tgtC)) { tgtC.phase(false); if (tgtC.isPhasedOut()) { if (sa.hasParam("RememberAffected")) { 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 3f70d5f726a..c048a9fd30e 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -5570,6 +5570,9 @@ public class Card extends GameEntity implements Comparable, IHasSVars { // CR 702.26g if (!getAllAttachedCards().isEmpty()) { for (final Card eq : getAllAttachedCards()) { + if (!eq.isPhasedOut() && StaticAbilityCantPhase.cantPhaseOut(eq)) { + continue; + } if (eq.isPhasedOut() == phasingIn) { eq.phase(fromUntapStep, false); }