diff --git a/Mage.Sets/src/mage/cards/a/Aluren.java b/Mage.Sets/src/mage/cards/a/Aluren.java index b032bdf8f3a..8397fa65c91 100644 --- a/Mage.Sets/src/mage/cards/a/Aluren.java +++ b/Mage.Sets/src/mage/cards/a/Aluren.java @@ -74,7 +74,7 @@ class AlurenRuleEffect extends ContinuousEffectImpl { public AlurenRuleEffect() { super(Duration.WhileOnBattlefield, Outcome.Detriment); - staticText = "Any player may play creature cards with converted mana cost 3 or less without paying their mana cost"; + staticText = "Any player may cast creature cards with converted mana cost 3 or less without paying their mana cost"; } public AlurenRuleEffect(final AlurenRuleEffect effect) { diff --git a/Mage.Sets/src/mage/cards/a/AvariceAmulet.java b/Mage.Sets/src/mage/cards/a/AvariceAmulet.java index cf772fe3ff1..70aec2e44e9 100644 --- a/Mage.Sets/src/mage/cards/a/AvariceAmulet.java +++ b/Mage.Sets/src/mage/cards/a/AvariceAmulet.java @@ -45,7 +45,7 @@ public final class AvariceAmulet extends CardImpl { ability.addEffect(effect); this.addAbility(ability); - // When equipped creature dies, target opponent gains control of Avarice Amulet. + // Whenever equipped creature dies, target opponent gains control of Avarice Amulet. ability = new DiesAttachedTriggeredAbility(new AvariceAmuletChangeControlEffect(), "equipped creature", false); ability.addTarget(new TargetOpponent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/f/Fluctuator.java b/Mage.Sets/src/mage/cards/f/Fluctuator.java index db73ce83db4..ca95d7d0803 100644 --- a/Mage.Sets/src/mage/cards/f/Fluctuator.java +++ b/Mage.Sets/src/mage/cards/f/Fluctuator.java @@ -43,7 +43,7 @@ public final class Fluctuator extends CardImpl { class FluctuatorEffect extends CostModificationEffectImpl { - private static final String effectText = "Cycling abilities you activate cost you up to {2} less to activate"; + private static final String effectText = "Cycling abilities you activate cost up to {2} less to activate"; public FluctuatorEffect() { super(Duration.Custom, Outcome.Benefit, CostModificationType.REDUCE_COST); diff --git a/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java b/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java index d90cc470085..69983349c42 100644 --- a/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java +++ b/Mage.Sets/src/mage/cards/l/LionsEyeDiamond.java @@ -42,8 +42,8 @@ public final class LionsEyeDiamond extends CardImpl { class LionsEyeDiamondAbility extends ActivatedManaAbilityImpl { public LionsEyeDiamondAbility() { - super(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(3), new SacrificeSourceCost()); - this.addCost(new DiscardHandCost()); + super(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(3), new DiscardHandCost()); + this.addCost(new SacrificeSourceCost()); this.netMana.add(new Mana(0, 0, 0, 0, 0, 0, 3, 0)); } diff --git a/Mage/src/main/java/mage/abilities/common/AttacksAloneTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/AttacksAloneTriggeredAbility.java index b8e819da4b8..f88cf4762ea 100644 --- a/Mage/src/main/java/mage/abilities/common/AttacksAloneTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/AttacksAloneTriggeredAbility.java @@ -37,7 +37,7 @@ public class AttacksAloneTriggeredAbility extends TriggeredAbilityImpl { @Override public boolean checkTrigger(GameEvent event, Game game) { - if(game.getActivePlayerId().equals(this.controllerId) ) { + if(game.isActivePlayer(this.controllerId) ) { UUID creatureId = this.getSourceId(); if(creatureId != null) { if(game.getCombat().attacksAlone() && Objects.equals(creatureId, game.getCombat().getAttackers().get(0))) { diff --git a/Mage/src/main/java/mage/abilities/common/SacrificeIfCastAtInstantTimeTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/SacrificeIfCastAtInstantTimeTriggeredAbility.java index 2e00f8551fb..9fac7a0a948 100644 --- a/Mage/src/main/java/mage/abilities/common/SacrificeIfCastAtInstantTimeTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/SacrificeIfCastAtInstantTimeTriggeredAbility.java @@ -43,7 +43,7 @@ public class SacrificeIfCastAtInstantTimeTriggeredAbility extends TriggeredAbili // CHECK Spell spell = game.getStack().getSpell(event.getTargetId()); if (spell != null && spell.getSourceId().equals(getSourceId())) { - return !(game.isMainPhase() && game.getActivePlayerId().equals(event.getPlayerId()) && game.getStack().size() == 1); + return !(game.isMainPhase() && game.isActivePlayer(event.getPlayerId()) && game.getStack().size() == 1); } return false; } diff --git a/Mage/src/main/java/mage/abilities/common/delayed/PactDelayedTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/delayed/PactDelayedTriggeredAbility.java index 5b5ff0795f5..1bb565531ab 100644 --- a/Mage/src/main/java/mage/abilities/common/delayed/PactDelayedTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/delayed/PactDelayedTriggeredAbility.java @@ -36,7 +36,7 @@ public class PactDelayedTriggeredAbility extends DelayedTriggeredAbility { @Override public boolean checkTrigger(GameEvent event, Game game) { - return game.getActivePlayerId().equals(this.getControllerId()); + return game.isActivePlayer(this.getControllerId()); } diff --git a/Mage/src/main/java/mage/abilities/condition/common/IsStepCondition.java b/Mage/src/main/java/mage/abilities/condition/common/IsStepCondition.java index ea19fed5592..070fb08b36b 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/IsStepCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/IsStepCondition.java @@ -26,7 +26,7 @@ public class IsStepCondition implements Condition { @Override public boolean apply(Game game, Ability source) { - return phaseStep == game.getStep().getType() && (!onlyDuringYourSteps || game.getActivePlayerId().equals(source.getControllerId())); + return phaseStep == game.getStep().getType() && (!onlyDuringYourSteps || game.isActivePlayer(source.getControllerId())); } @Override diff --git a/Mage/src/main/java/mage/abilities/condition/common/MyMainPhaseCondition.java b/Mage/src/main/java/mage/abilities/condition/common/MyMainPhaseCondition.java index dc53a3a610e..ae960029b08 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/MyMainPhaseCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/MyMainPhaseCondition.java @@ -20,7 +20,7 @@ public enum MyMainPhaseCondition implements Condition { @Override public boolean apply(Game game, Ability source) { - return game.getActivePlayerId().equals(source.getControllerId()) && + return game.isActivePlayer(source.getControllerId()) && turnPhases.contains(game.getTurn().getPhase().getType()); } } diff --git a/Mage/src/main/java/mage/abilities/condition/common/MyTurnBeforeAttackersDeclaredCondition.java b/Mage/src/main/java/mage/abilities/condition/common/MyTurnBeforeAttackersDeclaredCondition.java index c78e4d8438d..abe44f72e2e 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/MyTurnBeforeAttackersDeclaredCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/MyTurnBeforeAttackersDeclaredCondition.java @@ -16,7 +16,7 @@ public enum MyTurnBeforeAttackersDeclaredCondition implements Condition { @Override public boolean apply(Game game, Ability source) { - if (game.getActivePlayerId().equals(source.getControllerId())) { + if (game.isActivePlayer(source.getControllerId())) { TurnPhase turnPhase = game.getTurn().getPhase().getType(); if (turnPhase == TurnPhase.BEGINNING || turnPhase == TurnPhase.PRECOMBAT_MAIN) { return true; diff --git a/Mage/src/main/java/mage/abilities/condition/common/MyTurnCondition.java b/Mage/src/main/java/mage/abilities/condition/common/MyTurnCondition.java index a8a6126ee74..70309455a54 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/MyTurnCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/MyTurnCondition.java @@ -10,7 +10,7 @@ public enum MyTurnCondition implements Condition { @Override public boolean apply(Game game, Ability source) { - return game.getActivePlayerId().equals(source.getControllerId()); + return game.isActivePlayer(source.getControllerId()); } @Override diff --git a/Mage/src/main/java/mage/abilities/effects/ContinuousEffectImpl.java b/Mage/src/main/java/mage/abilities/effects/ContinuousEffectImpl.java index d80c1d61975..f908f16fd99 100644 --- a/Mage/src/main/java/mage/abilities/effects/ContinuousEffectImpl.java +++ b/Mage/src/main/java/mage/abilities/effects/ContinuousEffectImpl.java @@ -180,7 +180,7 @@ public abstract class ContinuousEffectImpl extends EffectImpl implements Continu Player player = game.getPlayer(startingControllerId); if (player != null) { if (player.isInGame()) { - return game.getActivePlayerId().equals(startingControllerId) && game.getTurnNum() != startingTurn; + return game.isActivePlayer(startingControllerId) && game.getTurnNum() != startingTurn; } return player.hasReachedNextTurnAfterLeaving(); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DetainAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DetainAllEffect.java index 9cb85eaa08d..410568577fa 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DetainAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DetainAllEffect.java @@ -77,7 +77,7 @@ class DetainAllRestrictionEffect extends RestrictionEffect { for (FixedTarget fixedTarget : this.detainedObjects) { Permanent permanent = game.getPermanent(fixedTarget.getFirst(game, source)); if (permanent != null) { - permanent.addInfo(new StringBuilder("detain").append(getId()).toString(), "[Detained]", game); + permanent.addInfo("detain" + getId(), "[Detained]", game); } } } @@ -85,11 +85,11 @@ class DetainAllRestrictionEffect extends RestrictionEffect { @Override public boolean isInactive(Ability source, Game game) { if (game.getPhase().getStep().getType() == PhaseStep.UNTAP && game.getStep().getStepPart() == Step.StepPart.PRE) { - if (game.getActivePlayerId().equals(source.getControllerId()) || game.getPlayer(source.getControllerId()).hasReachedNextTurnAfterLeaving()) { + if (game.isActivePlayer(source.getControllerId()) || game.getPlayer(source.getControllerId()).hasReachedNextTurnAfterLeaving()) { for (FixedTarget fixedTarget : this.detainedObjects) { Permanent permanent = game.getPermanent(fixedTarget.getFirst(game, source)); if (permanent != null) { - permanent.addInfo(new StringBuilder("detain").append(getId()).toString(), "", game); + permanent.addInfo("detain" + getId(), "", game); } } return true; diff --git a/Mage/src/main/java/mage/abilities/effects/common/DetainTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DetainTargetEffect.java index 8ab62eee6dd..57b2a4c89ff 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DetainTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DetainTargetEffect.java @@ -118,7 +118,7 @@ class DetainRestrictionEffect extends RestrictionEffect { @Override public boolean isInactive(Ability source, Game game) { if (game.getPhase().getStep().getType() == PhaseStep.UNTAP && game.getStep().getStepPart() == Step.StepPart.PRE) { - if (game.getActivePlayerId().equals(source.getControllerId()) || game.getPlayer(source.getControllerId()).hasReachedNextTurnAfterLeaving()) { + if (game.isActivePlayer(source.getControllerId()) || game.getPlayer(source.getControllerId()).hasReachedNextTurnAfterLeaving()) { for (UUID targetId : this.getTargetPointer().getTargets(game, source)) { Permanent permanent = game.getPermanent(targetId); if (permanent != null) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepSourceEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepSourceEffect.java index 7ce2f8b92a4..c5351ce1fc4 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepSourceEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepSourceEffect.java @@ -60,7 +60,7 @@ public class DontUntapInControllersNextUntapStepSourceEffect extends ContinuousR } // remember the turn of the untap step the effect has to be applied if (event.getType() == GameEvent.EventType.UNTAP_STEP - && game.getActivePlayerId().equals(source.getControllerId())) { + && game.isActivePlayer(source.getControllerId())) { if (validForTurnNum == game.getTurnNum()) { // the turn has a second untap step but the effect is already related to the first untap step discard(); return false; @@ -70,7 +70,7 @@ public class DontUntapInControllersNextUntapStepSourceEffect extends ContinuousR // skip untap action if (game.getTurn().getStepType() == PhaseStep.UNTAP && event.getType() == GameEvent.EventType.UNTAP - && game.getActivePlayerId().equals(source.getControllerId()) + && game.isActivePlayer(source.getControllerId()) && event.getTargetId().equals(source.getSourceId())) { discard(); return true; diff --git a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepTargetEffect.java index 2fa58dbf5cd..49d5651cbf7 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersNextUntapStepTargetEffect.java @@ -101,8 +101,8 @@ public class DontUntapInControllersNextUntapStepTargetEffect extends ContinuousR for (UUID targetId : getTargetPointer().getTargets(game, source)) { Permanent permanent = game.getPermanent(targetId); if (permanent != null) { - if (game.getActivePlayerId().equals(permanent.getControllerId()) - && ((onlyIfControlledByPlayer == null) || (game.getActivePlayerId().equals(onlyIfControlledByPlayer)))) { // if effect works only for specific player, all permanents have to be set to handled in that players untap step + if (game.isActivePlayer(permanent.getControllerId()) + && ((onlyIfControlledByPlayer == null) || (game.isActivePlayer(onlyIfControlledByPlayer)))) { // if effect works only for specific player, all permanents have to be set to handled in that players untap step if (!handledTargetsDuringTurn.containsKey(targetId)) { // it's the untep step of the current controller and the effect was not handled for this target yet, so do it now handledTargetsDuringTurn.put(targetId, false); @@ -127,8 +127,8 @@ public class DontUntapInControllersNextUntapStepTargetEffect extends ContinuousR && !handledTargetsDuringTurn.get(event.getTargetId()) && getTargetPointer().getTargets(game, source).contains(event.getTargetId())) { Permanent permanent = game.getPermanent(event.getTargetId()); - if (permanent != null && game.getActivePlayerId().equals(permanent.getControllerId())) { - if ((onlyIfControlledByPlayer == null) || game.getActivePlayerId().equals(onlyIfControlledByPlayer)) { // If onlyIfControlledByPlayer is set, then don't apply unless we're currently controlled by the specified player. + if (permanent != null && game.isActivePlayer(permanent.getControllerId())) { + if ((onlyIfControlledByPlayer == null) || game.isActivePlayer(onlyIfControlledByPlayer)) { // If onlyIfControlledByPlayer is set, then don't apply unless we're currently controlled by the specified player. handledTargetsDuringTurn.put(event.getTargetId(), !twoSteps); return true; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepAllEffect.java index 152ec2f29ce..e95c011f0c6 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepAllEffect.java @@ -76,7 +76,7 @@ public class DontUntapInControllersUntapStepAllEffect extends ContinuousRuleModi default: throw new RuntimeException("Type of TargetController not supported!"); } - if (game.getActivePlayerId().equals(permanent.getControllerId()) && // controller's untap step + if (game.isActivePlayer(permanent.getControllerId()) && // controller's untap step filter.match(permanent, source.getSourceId(), source.getControllerId(), game)) { return true; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepTargetEffect.java index a5fae993f38..f825e6da9fb 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInControllersUntapStepTargetEffect.java @@ -59,7 +59,7 @@ public class DontUntapInControllersUntapStepTargetEffect extends ContinuousRuleM for (UUID targetId : targetPointer.getTargets(game, source)) { if (event.getTargetId().equals(targetId)) { Permanent permanent = game.getPermanent(targetId); - if (permanent != null && game.getActivePlayerId().equals(permanent.getControllerId())) { + if (permanent != null && game.isActivePlayer(permanent.getControllerId())) { return true; } } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInPlayersNextUntapStepAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInPlayersNextUntapStepAllEffect.java index ba35b495d04..9fca3ecdb77 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DontUntapInPlayersNextUntapStepAllEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DontUntapInPlayersNextUntapStepAllEffect.java @@ -81,7 +81,7 @@ public class DontUntapInPlayersNextUntapStepAllEffect extends ContinuousRuleModi } // remember the turn of the untap step the effect has to be applied if (event.getType() == EventType.UNTAP_STEP) { - if (game.getActivePlayerId().equals(getTargetPointer().getFirst(game, source))) { + if (game.isActivePlayer(getTargetPointer().getFirst(game, source))) { if (validForTurnNum == game.getTurnNum()) { // the turn has a second untap step but the effect is already related to the first untap step discard(); return false; @@ -100,7 +100,7 @@ public class DontUntapInPlayersNextUntapStepAllEffect extends ContinuousRuleModi if (controller != null && !game.isOpponent(controller, permanent.getControllerId())) { return false; } - if (game.getActivePlayerId().equals(permanent.getControllerId()) + if (game.isActivePlayer(permanent.getControllerId()) && // controller's untap step filter.match(permanent, source.getSourceId(), source.getControllerId(), game)) { return true; diff --git a/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java index 6711b025212..a74f8d79626 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java @@ -44,7 +44,7 @@ public class PopulateEffect extends OneShotEffect { public PopulateEffect(String prefixText) { super(Outcome.Copy); - this.staticText = (!prefixText.isEmpty() ? prefixText + " p" : "P") + "opulate (Put a token onto the battlefield that's a copy of a creature token you control.)"; + this.staticText = (!prefixText.isEmpty() ? prefixText + " p" : "P") + "opulate (Create a token that's a copy of a creature token you control.)"; } public PopulateEffect(final PopulateEffect effect) { diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java index d511d6e5d2f..881e3190246 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityTargetEffect.java @@ -88,7 +88,7 @@ public class GainAbilityTargetEffect extends ContinuousEffectImpl { return true; } if (durationPhaseStep != null && durationPhaseStep == game.getPhase().getStep().getType()) { - if (!sameStep && game.getActivePlayerId().equals(durationPlayerId) || game.getPlayer(durationPlayerId).hasReachedNextTurnAfterLeaving()) { + if (!sameStep && game.isActivePlayer(durationPlayerId) || game.getPlayer(durationPlayerId).hasReachedNextTurnAfterLeaving()) { return true; } } else { diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/InvestigateEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/InvestigateEffect.java index 395b4fb37b2..5f0aaf40644 100644 --- a/Mage/src/main/java/mage/abilities/effects/keyword/InvestigateEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/keyword/InvestigateEffect.java @@ -19,7 +19,7 @@ public class InvestigateEffect extends CreateTokenEffect { public InvestigateEffect() { super(new ClueArtifactToken()); - this.staticText = "Investigate. (Create a colorless Clue artifact token onto the battlefield with \"{2}, Sacrifice this artifact: Draw a card.\")"; + this.staticText = "Investigate. (Create a colorless Clue artifact token with \"{2}, Sacrifice this artifact: Draw a card.\")"; } public InvestigateEffect(final InvestigateEffect effect) { diff --git a/Mage/src/main/java/mage/abilities/keyword/ExaltedAbility.java b/Mage/src/main/java/mage/abilities/keyword/ExaltedAbility.java index 2f89fa3dcd7..1fe2febcd42 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ExaltedAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ExaltedAbility.java @@ -35,7 +35,7 @@ public class ExaltedAbility extends TriggeredAbilityImpl { @Override public boolean checkTrigger(GameEvent event, Game game) { - if (game.getActivePlayerId().equals(this.controllerId)) { + if (game.isActivePlayer(this.controllerId)) { if (game.getCombat().attacksAlone()) { this.getEffects().get(0).setTargetPointer(new FixedTarget(game.getCombat().getAttackers().get(0))); return true; diff --git a/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java b/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java index db20407e78e..5e411a5c370 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ForecastAbility.java @@ -45,7 +45,7 @@ public class ForecastAbility extends LimitedTimesPerTurnActivatedAbility { public ActivationStatus canActivate(UUID playerId, Game game) { // May be activated only during the upkeep step of the card's owner // Because it can only be activated from a players hand it should be ok to check here with controllerId instead of card.getOwnerId(). - if (!game.getActivePlayerId().equals(controllerId) || PhaseStep.UPKEEP != game.getStep().getType()) { + if (!game.isActivePlayer(controllerId) || PhaseStep.UPKEEP != game.getStep().getType()) { return ActivationStatus.getFalse(); } return super.canActivate(playerId, game); diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/ControllerIsActivePlayerPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/ControllerIsActivePlayerPredicate.java index e67b02e0862..1f0b7009741 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/ControllerIsActivePlayerPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/ControllerIsActivePlayerPredicate.java @@ -17,7 +17,7 @@ public class ControllerIsActivePlayerPredicate implements Predicate { if(input.getControllerId() == null){ return false; } - return game.getActivePlayerId().equals(input.getControllerId()); + return game.isActivePlayer(input.getControllerId()); } @Override diff --git a/Mage/src/main/java/mage/game/permanent/PermanentImpl.java b/Mage/src/main/java/mage/game/permanent/PermanentImpl.java index c90b047103b..bb11ca0f8fe 100644 --- a/Mage/src/main/java/mage/game/permanent/PermanentImpl.java +++ b/Mage/src/main/java/mage/game/permanent/PermanentImpl.java @@ -316,7 +316,7 @@ public abstract class PermanentImpl extends CardImpl implements Permanent { @Override public void beginningOfTurn(Game game) { - if (game.getActivePlayerId().equals(this.controllerId)) { + if (game.isActivePlayer(this.controllerId)) { this.controlledFromStartOfControllerTurn = true; } } diff --git a/Mage/src/main/java/mage/players/PlayerImpl.java b/Mage/src/main/java/mage/players/PlayerImpl.java index 111f48d01fb..a552eb9ae1d 100644 --- a/Mage/src/main/java/mage/players/PlayerImpl.java +++ b/Mage/src/main/java/mage/players/PlayerImpl.java @@ -1470,7 +1470,7 @@ public abstract class PlayerImpl implements Player, Serializable { } protected boolean isActivePlayer(Game game) { - return game.getActivePlayerId().equals(this.playerId); + return game.isActivePlayer(this.playerId); } @Override