diff --git a/Mage/src/main/java/mage/abilities/abilityword/KinshipAbility.java b/Mage/src/main/java/mage/abilities/abilityword/KinshipAbility.java index cf29034173..f48a73e433 100644 --- a/Mage/src/main/java/mage/abilities/abilityword/KinshipAbility.java +++ b/Mage/src/main/java/mage/abilities/abilityword/KinshipAbility.java @@ -102,7 +102,7 @@ class KinshipBaseEffect extends OneShotEffect { if (controller.chooseUse(outcome, new StringBuilder("Kinship - Reveal ").append(card.getLogName()).append('?').toString(), source, game)) { controller.revealCards(sourcePermanent.getName(), cards, game); for (Effect effect : kinshipEffects) { - effect.setTargetPointer(new FixedTarget(card.getId())); + effect.setTargetPointer(new FixedTarget(card.getId(), game)); if (effect.getEffectType() == EffectType.ONESHOT) { effect.apply(game, source); } else { diff --git a/Mage/src/main/java/mage/abilities/common/BecomesBlockedByCreatureTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/BecomesBlockedByCreatureTriggeredAbility.java index a61cad97f9..80bdb8296d 100644 --- a/Mage/src/main/java/mage/abilities/common/BecomesBlockedByCreatureTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/BecomesBlockedByCreatureTriggeredAbility.java @@ -46,7 +46,7 @@ public class BecomesBlockedByCreatureTriggeredAbility extends TriggeredAbilityIm return false; } for (Effect effect : this.getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getSourceId())); + effect.setTargetPointer(new FixedTarget(event.getSourceId(), game)); } return true; } diff --git a/Mage/src/main/java/mage/abilities/common/BecomesTappedTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/BecomesTappedTriggeredAbility.java index 60169f7b08..0d1ead46bd 100644 --- a/Mage/src/main/java/mage/abilities/common/BecomesTappedTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/BecomesTappedTriggeredAbility.java @@ -15,7 +15,7 @@ import mage.target.targetpointer.FixedTarget; /** * - * @author Jeff + * @author jeffwadsworth */ public class BecomesTappedTriggeredAbility extends TriggeredAbilityImpl { @@ -57,7 +57,7 @@ public class BecomesTappedTriggeredAbility extends TriggeredAbilityImpl { Permanent permanent = game.getPermanent(event.getTargetId()); if (filter.match(permanent, getSourceId(), getControllerId(), game)) { if (setTargetPointer) { - this.getEffects().setTargetPointer(new FixedTarget(event.getTargetId())); + this.getEffects().setTargetPointer(new FixedTarget(event.getTargetId(), game)); } return true; } diff --git a/Mage/src/main/java/mage/abilities/common/BlocksTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/BlocksTriggeredAbility.java index 4b63f81624..780daf5bbe 100644 --- a/Mage/src/main/java/mage/abilities/common/BlocksTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/BlocksTriggeredAbility.java @@ -47,7 +47,7 @@ public class BlocksTriggeredAbility extends TriggeredAbilityImpl { if (event.getSourceId().equals(this.getSourceId())) { if (setTargetPointer) { for (Effect effect : this.getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } } return true; diff --git a/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureAttachedTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureAttachedTriggeredAbility.java index 1af62161b7..60e86de639 100644 --- a/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureAttachedTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureAttachedTriggeredAbility.java @@ -51,7 +51,7 @@ public class DealsDamageToACreatureAttachedTriggeredAbility extends TriggeredAbi && attachment.isAttachedTo(event.getSourceId())) { if (setTargetPointer) { for (Effect effect : this.getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); effect.setValue("damage", event.getAmount()); } } diff --git a/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureTriggeredAbility.java index 53bbf49c14..1dcc7f4ec6 100644 --- a/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/DealsDamageToACreatureTriggeredAbility.java @@ -61,7 +61,7 @@ public class DealsDamageToACreatureTriggeredAbility extends TriggeredAbilityImpl } if (setTargetPointer) { for (Effect effect : this.getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); effect.setValue("damage", event.getAmount()); } } diff --git a/Mage/src/main/java/mage/abilities/common/DealsDamageToOpponentTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/DealsDamageToOpponentTriggeredAbility.java index a733c5c0ac..9af79f042d 100644 --- a/Mage/src/main/java/mage/abilities/common/DealsDamageToOpponentTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/DealsDamageToOpponentTriggeredAbility.java @@ -62,7 +62,7 @@ public class DealsDamageToOpponentTriggeredAbility extends TriggeredAbilityImpl } if(setTargetPointer) { for (Effect effect : getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); effect.setValue("damage", event.getAmount()); } } diff --git a/Mage/src/main/java/mage/abilities/common/DealtDamageAndDiedTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/DealtDamageAndDiedTriggeredAbility.java index 8ef3f6d672..a80afc1013 100644 --- a/Mage/src/main/java/mage/abilities/common/DealtDamageAndDiedTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/DealtDamageAndDiedTriggeredAbility.java @@ -67,7 +67,7 @@ public class DealtDamageAndDiedTriggeredAbility extends TriggeredAbilityImpl { if (damageDealt) { if (this.setTargetPointer == SetTargetPointer.PERMANENT) { for (Effect effect : getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } } return true; diff --git a/Mage/src/main/java/mage/abilities/common/DealtDamageAttachedTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/DealtDamageAttachedTriggeredAbility.java index 5c8d338cca..e5ca0a8b8d 100644 --- a/Mage/src/main/java/mage/abilities/common/DealtDamageAttachedTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/DealtDamageAttachedTriggeredAbility.java @@ -53,7 +53,7 @@ public class DealtDamageAttachedTriggeredAbility extends TriggeredAbilityImpl { effect.setValue("damage", event.getAmount()); switch(setTargetPointer) { case PERMANENT: - effect.setTargetPointer(new FixedTarget(targetId)); + effect.setTargetPointer(new FixedTarget(targetId, game)); break; case PLAYER: effect.setTargetPointer(new FixedTarget(game.getPermanentOrLKIBattlefield(targetId).getControllerId())); diff --git a/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksAllTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksAllTriggeredAbility.java index 900d7f8d5c..1a92950bcd 100644 --- a/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksAllTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/EntersBattlefieldOrAttacksAllTriggeredAbility.java @@ -103,7 +103,7 @@ public class EntersBattlefieldOrAttacksAllTriggeredAbility extends TriggeredAbil for (Effect effect : this.getEffects()) { switch (setTargetPointer) { case PERMANENT: - effect.setTargetPointer(new FixedTarget(attacker.getId())); + effect.setTargetPointer(new FixedTarget(attacker.getId(), game)); break; case PLAYER: UUID playerId = controlledText ? attacker.getControllerId() : game.getCombat().getDefendingPlayerId(attacker.getId(), game); diff --git a/Mage/src/main/java/mage/abilities/common/ExploitCreatureTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/ExploitCreatureTriggeredAbility.java index 2549419578..aadc2f1902 100644 --- a/Mage/src/main/java/mage/abilities/common/ExploitCreatureTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/ExploitCreatureTriggeredAbility.java @@ -65,7 +65,7 @@ public class ExploitCreatureTriggeredAbility extends TriggeredAbilityImpl { if (event.getSourceId().equals(getSourceId())) { for (Effect effect : getEffects()) { if (setTargetPointer == SetTargetPointer.PERMANENT) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } } return true; diff --git a/Mage/src/main/java/mage/abilities/common/OpponentSacrificesPermanentTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/OpponentSacrificesPermanentTriggeredAbility.java index 7d1075f9eb..7cefb76c25 100644 --- a/Mage/src/main/java/mage/abilities/common/OpponentSacrificesPermanentTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/OpponentSacrificesPermanentTriggeredAbility.java @@ -31,7 +31,7 @@ public class OpponentSacrificesPermanentTriggeredAbility extends TriggeredAbilit MageObject object = game.getLastKnownInformation(event.getTargetId(), Zone.BATTLEFIELD); if (object instanceof Permanent) { for (Effect effect : getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } return true; } diff --git a/Mage/src/main/java/mage/abilities/common/TurnedFaceUpAllTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/TurnedFaceUpAllTriggeredAbility.java index 7ece1e1a7c..f1b4536854 100644 --- a/Mage/src/main/java/mage/abilities/common/TurnedFaceUpAllTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/TurnedFaceUpAllTriggeredAbility.java @@ -70,7 +70,7 @@ public class TurnedFaceUpAllTriggeredAbility extends TriggeredAbilityImpl { if (filter.match(permanent, getSourceId(), getControllerId(), game)) { if (setTargetPointer) { for (Effect effect : getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } } return true; diff --git a/Mage/src/main/java/mage/abilities/common/TurnedFaceUpSourceTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/TurnedFaceUpSourceTriggeredAbility.java index c1a44ffe6e..954c983252 100644 --- a/Mage/src/main/java/mage/abilities/common/TurnedFaceUpSourceTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/TurnedFaceUpSourceTriggeredAbility.java @@ -52,7 +52,7 @@ public class TurnedFaceUpSourceTriggeredAbility extends TriggeredAbilityImpl { if (event.getTargetId().equals(this.getSourceId())) { if (setTargetPointer) { for (Effect effect: getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } } return true; diff --git a/Mage/src/main/java/mage/abilities/effects/CreateTokenCopySourceEffect.java b/Mage/src/main/java/mage/abilities/effects/CreateTokenCopySourceEffect.java index 3ea6862211..94ad0b02f0 100644 --- a/Mage/src/main/java/mage/abilities/effects/CreateTokenCopySourceEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/CreateTokenCopySourceEffect.java @@ -45,7 +45,7 @@ public class CreateTokenCopySourceEffect extends OneShotEffect { CreateTokenCopyTargetEffect effect = new CreateTokenCopyTargetEffect( source.getControllerId(), null, false, number, tapped, false ); - effect.setTargetPointer(new FixedTarget(source.getSourceId())); + effect.setTargetPointer(new FixedTarget(source.getSourceId(), game)); return effect.apply(game, source); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/CipherEffect.java b/Mage/src/main/java/mage/abilities/effects/common/CipherEffect.java index 19585e2a31..8dc9bdfbfd 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/CipherEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/CipherEffect.java @@ -74,7 +74,7 @@ public class CipherEffect extends OneShotEffect { String ruleText = "you may cast a copy of " + sourceCard.getLogName() + " without paying its mana cost"; Ability ability = new DealsCombatDamageToAPlayerTriggeredAbility(new CipherStoreEffect(source.getSourceId(), ruleText), true); ContinuousEffect effect = new GainAbilityTargetEffect(ability, Duration.Custom); - effect.setTargetPointer(new FixedTarget(target.getFirstTarget())); + effect.setTargetPointer(new FixedTarget(target.getFirstTarget(), game)); game.addEffect(effect, source); if (!game.isSimulation()) { game.informPlayers(sourceCard.getLogName() + ": Spell ciphered to " + targetCreature.getLogName()); diff --git a/Mage/src/main/java/mage/abilities/effects/common/CrewsVehicleSourceTriggeredAbility.java b/Mage/src/main/java/mage/abilities/effects/common/CrewsVehicleSourceTriggeredAbility.java index 36cbab3a33..214cb25fa1 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/CrewsVehicleSourceTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/effects/common/CrewsVehicleSourceTriggeredAbility.java @@ -34,7 +34,7 @@ public class CrewsVehicleSourceTriggeredAbility extends TriggeredAbilityImpl { if (event.getTargetId().equals(getSourceId())) { for (Effect effect : getEffects()) { // set the vehicle id as target - effect.setTargetPointer(new FixedTarget(event.getSourceId())); + effect.setTargetPointer(new FixedTarget(event.getSourceId(), game)); } return true; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/DestroyTargetAtBeginningOfNextEndStepEffect.java b/Mage/src/main/java/mage/abilities/effects/common/DestroyTargetAtBeginningOfNextEndStepEffect.java index 2fe56edee7..bf15998a40 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/DestroyTargetAtBeginningOfNextEndStepEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/DestroyTargetAtBeginningOfNextEndStepEffect.java @@ -31,7 +31,7 @@ public class DestroyTargetAtBeginningOfNextEndStepEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { DestroyTargetEffect effect = new DestroyTargetEffect(); - effect.setTargetPointer(new FixedTarget(source.getFirstTarget())); + effect.setTargetPointer(new FixedTarget(source.getFirstTarget(), game)); AtTheBeginOfNextEndStepDelayedTriggeredAbility delayedAbility = new AtTheBeginOfNextEndStepDelayedTriggeredAbility(effect); game.addDelayedTriggeredAbility(delayedAbility, source); 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 bd47815c0e..26da099df0 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/PopulateEffect.java @@ -78,7 +78,7 @@ public class PopulateEffect extends OneShotEffect { Effect effect = new CreateTokenCopyTargetEffect( null, null, false, 1, tappedAndAttacking, tappedAndAttacking ); - effect.setTargetPointer(new FixedTarget(target.getFirstTarget())); + effect.setTargetPointer(new FixedTarget(target.getFirstTarget(), game)); return effect.apply(game, source); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/UnlessPaysDelayedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/UnlessPaysDelayedEffect.java index 9d7e603744..c17a7038b5 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/UnlessPaysDelayedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/UnlessPaysDelayedEffect.java @@ -1,4 +1,3 @@ - package mage.abilities.effects.common; import java.util.UUID; @@ -13,7 +12,6 @@ import mage.constants.Outcome; import mage.constants.PhaseStep; import mage.game.Game; import mage.game.events.GameEvent; -import mage.game.events.GameEvent.EventType; import mage.target.targetpointer.FixedTarget; /** diff --git a/Mage/src/main/java/mage/abilities/effects/common/combat/GoadTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/combat/GoadTargetEffect.java index 578536f1d7..e2aca00701 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/combat/GoadTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/combat/GoadTargetEffect.java @@ -50,10 +50,10 @@ public class GoadTargetEffect extends OneShotEffect { or the player that goaded it. (2016-08-23) */ ContinuousEffect effect = new AttacksIfAbleTargetEffect(Duration.UntilYourNextTurn); - effect.setTargetPointer(new FixedTarget(getTargetPointer().getFirst(game, source))); + effect.setTargetPointer(new FixedTarget(getTargetPointer().getFirst(game, source), game)); game.addEffect(effect, source); effect = new CantAttackControllerDueToGoadEffect(Duration.UntilYourNextTurn); // remember current controller - effect.setTargetPointer(new FixedTarget(getTargetPointer().getFirst(game, source))); + effect.setTargetPointer(new FixedTarget(getTargetPointer().getFirst(game, source), game)); game.addEffect(effect, source); game.informPlayers(controller.getLogName() + " is goading " + targetCreature.getLogName()); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesChosenCreatureTypeTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesChosenCreatureTypeTargetEffect.java index ef3759eaa9..8d0620cbee 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesChosenCreatureTypeTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesChosenCreatureTypeTargetEffect.java @@ -71,7 +71,7 @@ public class BecomesChosenCreatureTypeTargetEffect extends OneShotEffect { if (chosenType != null && !chosenType.isEmpty()) { // ADD TYPE TO TARGET ContinuousEffect effect = new BecomesCreatureTypeTargetEffect(duration, SubType.byDescription(chosenType)); - effect.setTargetPointer(new FixedTarget(getTargetPointer().getFirst(game, source))); + effect.setTargetPointer(new FixedTarget(getTargetPointer().getFirst(game, source), game)); game.addEffect(effect, source); return true; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesColorOrColorsTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesColorOrColorsTargetEffect.java index 752659b501..1ebf39d254 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesColorOrColorsTargetEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BecomesColorOrColorsTargetEffect.java @@ -74,7 +74,7 @@ public class BecomesColorOrColorsTargetEffect extends OneShotEffect { String colors = new String(sb); ObjectColor chosenColors = new ObjectColor(colors); ContinuousEffect effect = new BecomesColorTargetEffect(chosenColors, duration); - effect.setTargetPointer(new FixedTarget(source.getFirstTarget())); + effect.setTargetPointer(new FixedTarget(source.getFirstTarget(), game)); game.addEffect(effect, source); return true; diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java index 1e9c895a25..506e4867a1 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/BoostEquippedEffect.java @@ -61,7 +61,7 @@ public class BoostEquippedEffect extends ContinuousEffectImpl { if (fixedTarget) { Permanent equipment = game.getPermanent(source.getSourceId()); if (equipment != null && equipment.getAttachedTo() != null) { - this.setTargetPointer(new FixedTarget(equipment.getAttachedTo())); + this.setTargetPointer(new FixedTarget(equipment.getAttachedTo(), game)); } } super.init(source, game); // inits the target pointer so call it after setting the targetPointer diff --git a/Mage/src/main/java/mage/abilities/keyword/AwakenAbility.java b/Mage/src/main/java/mage/abilities/keyword/AwakenAbility.java index 381f7c42a2..9148905463 100644 --- a/Mage/src/main/java/mage/abilities/keyword/AwakenAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/AwakenAbility.java @@ -103,7 +103,7 @@ public class AwakenAbility extends SpellAbility { } } if (targetId != null) { - FixedTarget fixedTarget = new FixedTarget(targetId); + FixedTarget fixedTarget = new FixedTarget(targetId, game); ContinuousEffect continuousEffect = new BecomesCreatureTargetEffect(new AwakenElementalToken(), false, true, Duration.Custom); continuousEffect.setTargetPointer(fixedTarget); game.addEffect(continuousEffect, source); diff --git a/Mage/src/main/java/mage/abilities/keyword/EvolveAbility.java b/Mage/src/main/java/mage/abilities/keyword/EvolveAbility.java index 5b21034d34..1fe14aaf1b 100644 --- a/Mage/src/main/java/mage/abilities/keyword/EvolveAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/EvolveAbility.java @@ -88,7 +88,7 @@ public class EvolveAbility extends TriggeredAbilityImpl { && triggeringCreature.isControlledBy(this.controllerId)) { Permanent sourceCreature = game.getPermanent(sourceId); if (sourceCreature != null && isPowerOrThoughnessGreater(sourceCreature, triggeringCreature)) { - this.getEffects().get(0).setTargetPointer(new FixedTarget(event.getTargetId())); + this.getEffects().get(0).setTargetPointer(new FixedTarget(event.getTargetId(), game)); return true; } } diff --git a/Mage/src/main/java/mage/abilities/keyword/FlankingAbility.java b/Mage/src/main/java/mage/abilities/keyword/FlankingAbility.java index ce887d86e0..3c7319a71e 100644 --- a/Mage/src/main/java/mage/abilities/keyword/FlankingAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/FlankingAbility.java @@ -38,7 +38,7 @@ public class FlankingAbility extends TriggeredAbilityImpl { if (!hasFlankingAbility) { for (Effect effect : this.getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getSourceId())); + effect.setTargetPointer(new FixedTarget(event.getSourceId(), game)); } return true; } diff --git a/Mage/src/main/java/mage/abilities/keyword/ForetellAbility.java b/Mage/src/main/java/mage/abilities/keyword/ForetellAbility.java index 045cfd7085..8a20a4bb06 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ForetellAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ForetellAbility.java @@ -139,7 +139,7 @@ public class ForetellAbility extends SpecialAction { // exile the card face-down effect.setWithName(false); - effect.setTargetPointer(new FixedTarget(card.getId())); + effect.setTargetPointer(new FixedTarget(card.getId(), game)); effect.apply(game, source); card.setFaceDown(true, game); game.addEffect(new ForetellAddCostEffect(new MageObjectReference(card, game)), source); diff --git a/Mage/src/main/java/mage/abilities/keyword/GraftAbility.java b/Mage/src/main/java/mage/abilities/keyword/GraftAbility.java index ea143e5fd4..bc588c22f2 100644 --- a/Mage/src/main/java/mage/abilities/keyword/GraftAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/GraftAbility.java @@ -72,7 +72,7 @@ public class GraftAbility extends TriggeredAbilityImpl { && sourcePermanent.getCounters(game).containsKey(CounterType.P1P1) && filter.match(permanent, game)) { for (Effect effect : this.getEffects()) { - effect.setTargetPointer(new FixedTarget(event.getTargetId())); + effect.setTargetPointer(new FixedTarget(event.getTargetId(), game)); } return true; } diff --git a/Mage/src/main/java/mage/abilities/keyword/HauntAbility.java b/Mage/src/main/java/mage/abilities/keyword/HauntAbility.java index d487b1bfe5..a9582a551a 100644 --- a/Mage/src/main/java/mage/abilities/keyword/HauntAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/HauntAbility.java @@ -201,7 +201,7 @@ class HauntEffect extends OneShotEffect { .append(source.getSourceId().toString()) .append(card.getZoneChangeCounter(game) + hauntedCreature.getZoneChangeCounter(game)).toString(); // in case it is blinked - game.getState().setValue(key, new FixedTarget(targetPointer.getFirst(game, source))); + game.getState().setValue(key, new FixedTarget(targetPointer.getFirst(game, source), game)); card.addInfo("hauntinfo", new StringBuilder("Haunting ").append(hauntedCreature.getLogName()).toString(), game); hauntedCreature.addInfo("hauntinfo", new StringBuilder("Haunted by ").append(card.getLogName()).toString(), game); game.informPlayers(new StringBuilder(card.getName()).append(" haunting ").append(hauntedCreature.getLogName()).toString()); diff --git a/Mage/src/main/java/mage/game/command/emblems/DarettiScrapSavantEmblem.java b/Mage/src/main/java/mage/game/command/emblems/DarettiScrapSavantEmblem.java index 15f3f4e331..e9481b5ce9 100644 --- a/Mage/src/main/java/mage/game/command/emblems/DarettiScrapSavantEmblem.java +++ b/Mage/src/main/java/mage/game/command/emblems/DarettiScrapSavantEmblem.java @@ -58,7 +58,7 @@ class DarettiScrapSavantTriggeredAbility extends TriggeredAbilityImpl { if (zEvent.isDiesEvent() && zEvent.getTarget().isArtifact(game) && zEvent.getTarget().isOwnedBy(this.controllerId)) { - this.getEffects().setTargetPointer(new FixedTarget(zEvent.getTargetId())); + this.getEffects().setTargetPointer(new FixedTarget(zEvent.getTargetId(), game)); return true; } return false;