Fixed Issue#146: Creature moving to exile zone instead graveyard

This commit is contained in:
magenoxx 2013-02-25 21:01:48 +04:00
parent cd7b0f5b08
commit f3ae9c85a6
12 changed files with 52 additions and 49 deletions

View file

@ -27,9 +27,6 @@
*/
package mage.sets.gatecrash;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants;
import mage.Constants.CardType;
import mage.Constants.Outcome;
@ -55,6 +52,10 @@ import mage.target.common.TargetCreatureOrPlayerAmount;
import mage.target.targetpointer.FixedTarget;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* GATECRASH FAQ 11.01.2013
*
@ -198,8 +199,8 @@ class AureliasFuryDamagedByWatcher extends WatcherImpl<AureliasFuryDamagedByWatc
public AureliasFuryDamagedByWatcher(final AureliasFuryDamagedByWatcher watcher) {
super(watcher);
this.damagedCreatures = watcher.damagedCreatures;
this.damagedPlayers = watcher.damagedPlayers;
this.damagedCreatures.addAll(watcher.damagedCreatures);
this.damagedPlayers.addAll(watcher.damagedPlayers);
}
@Override

View file

@ -27,9 +27,6 @@
*/
package mage.sets.iceage;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants;
import mage.Constants.CardType;
import mage.Constants.Rarity;
@ -52,6 +49,10 @@ import mage.game.permanent.Permanent;
import mage.target.common.TargetCreaturePermanent;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
*
* @author Plopman
@ -105,7 +106,7 @@ class BlockedByWatcher extends WatcherImpl<BlockedByWatcher> {
public BlockedByWatcher(final BlockedByWatcher watcher) {
super(watcher);
this.blockedByWatcher = watcher.blockedByWatcher;
this.blockedByWatcher.addAll(watcher.blockedByWatcher);
}
@Override

View file

@ -110,7 +110,7 @@ class FaithsRewardWatcher extends WatcherImpl<FaithsRewardWatcher> {
public FaithsRewardWatcher(final FaithsRewardWatcher watcher) {
super(watcher);
this.cards = (ArrayList<UUID>) watcher.cards.clone();
this.cards.addAll(watcher.cards);
}
@Override

View file

@ -27,15 +27,8 @@
*/
package mage.sets.newphyrexia;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants;
import mage.Constants.CardType;
import mage.Constants.Rarity;
import mage.Constants.TurnPhase;
import mage.Constants.WatcherScope;
import mage.Constants.Zone;
import mage.Constants.*;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.ZoneChangeTriggeredAbility;
@ -47,6 +40,10 @@ import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
*
* @author BetaSteward
@ -149,7 +146,7 @@ class CathedralMembraneWatcher extends WatcherImpl<CathedralMembraneWatcher> {
public CathedralMembraneWatcher(final CathedralMembraneWatcher watcher) {
super(watcher);
this.blockedCreatures = watcher.blockedCreatures;
this.blockedCreatures.addAll(watcher.blockedCreatures);
}
@Override

View file

@ -30,6 +30,7 @@ package mage.sets.scarsofmirrodin;
import mage.Constants;
import mage.Constants.CardType;
import mage.Constants.Rarity;
import mage.Constants.WatcherScope;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.ActivateOncePerTurnActivatedAbility;
@ -40,15 +41,16 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.continious.BoostSourceEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.filter.common.FilterNonlandPermanent;
import mage.game.Game;
import mage.game.events.DamagedPlayerEvent;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.watchers.WatcherImpl;
import java.util.*;
import mage.Constants.WatcherScope;
import mage.filter.common.FilterNonlandPermanent;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* @author nantuko
@ -125,9 +127,7 @@ class SteelHellkiteWatcher extends WatcherImpl<SteelHellkiteWatcher> {
public SteelHellkiteWatcher(final SteelHellkiteWatcher watcher) {
super(watcher);
for (UUID playerId: watcher.damagedPlayers) {
damagedPlayers.add(playerId);
}
damagedPlayers.addAll(watcher.damagedPlayers);
}
@Override

View file

@ -27,13 +27,8 @@
*/
package mage.sets.zendikar;
import java.util.UUID;
import mage.Constants;
import mage.Constants.CardType;
import mage.Constants.Duration;
import mage.Constants.Outcome;
import mage.Constants.Rarity;
import mage.Constants.WatcherScope;
import mage.Constants.*;
import mage.abilities.Ability;
import mage.abilities.TriggeredAbilityImpl;
import mage.abilities.common.SimpleStaticAbility;
@ -50,6 +45,8 @@ import mage.players.Player;
import mage.target.common.TargetCardInLibrary;
import mage.watchers.WatcherImpl;
import java.util.UUID;
/**
*
* @author jeffwadsworth
@ -122,6 +119,7 @@ class CardsDrawnControllerWatcher extends WatcherImpl<CardsDrawnControllerWatche
public CardsDrawnControllerWatcher(final CardsDrawnControllerWatcher watcher) {
super(watcher);
this.cardsDrawn = watcher.cardsDrawn;
}
@Override

View file

@ -27,9 +27,6 @@
*/
package mage.sets.zendikar;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants;
import mage.Constants.CardType;
import mage.Constants.Outcome;
@ -49,6 +46,10 @@ import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
*
* @author jeffwadsworth
@ -142,7 +143,7 @@ class BlockedByWatcher extends WatcherImpl<BlockedByWatcher> {
public BlockedByWatcher(final BlockedByWatcher watcher) {
super(watcher);
this.blockedByWatcher = watcher.blockedByWatcher;
this.blockedByWatcher.addAll(watcher.blockedByWatcher);
}
@Override

View file

@ -27,7 +27,6 @@
*/
package mage.sets.zendikar;
import java.util.UUID;
import mage.Constants.CardType;
import mage.Constants.Rarity;
import mage.Constants.WatcherScope;
@ -43,6 +42,8 @@ import mage.players.Player;
import mage.target.TargetPlayer;
import mage.watchers.WatcherImpl;
import java.util.UUID;
/**
*
* @author jeffwadsworth
@ -114,6 +115,7 @@ class CardsDrawnOpponentWatcher extends WatcherImpl<CardsDrawnOpponentWatcher> {
public CardsDrawnOpponentWatcher(final CardsDrawnOpponentWatcher watcher) {
super(watcher);
this.cardsDrawn = watcher.cardsDrawn;
}
@Override

View file

@ -49,7 +49,7 @@ public class AttackedThisTurnWatcher extends WatcherImpl<AttackedThisTurnWatcher
public AttackedThisTurnWatcher(final AttackedThisTurnWatcher watcher) {
super(watcher);
this.attackedThisTurnCreatures = watcher.attackedThisTurnCreatures;
this.attackedThisTurnCreatures.addAll(watcher.attackedThisTurnCreatures);
}
@Override

View file

@ -27,15 +27,16 @@
*/
package mage.watchers.common;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants.WatcherScope;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
*
* @author BetaSteward_at_googlemail.com
@ -50,7 +51,7 @@ public class DamagedByWatcher extends WatcherImpl<DamagedByWatcher> {
public DamagedByWatcher(final DamagedByWatcher watcher) {
super(watcher);
this.damagedCreatures = watcher.damagedCreatures;
this.damagedCreatures.addAll(watcher.damagedCreatures);
}
@Override

View file

@ -27,15 +27,16 @@
*/
package mage.watchers.common;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants.WatcherScope;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* Watcher stores whitch sources did damage to a player
*
@ -52,7 +53,7 @@ public class PlayerDamagedBySourceWatcher extends WatcherImpl<PlayerDamagedBySou
public PlayerDamagedBySourceWatcher(final PlayerDamagedBySourceWatcher watcher) {
super(watcher);
this.damageSources = watcher.damageSources;
this.damageSources.addAll(watcher.damageSources);
}
@Override

View file

@ -27,15 +27,16 @@
*/
package mage.watchers.common;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.Constants.WatcherScope;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import mage.watchers.WatcherImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* Watcher stores which sources did damage to anything.
*
@ -51,7 +52,7 @@ public class SourceDidDamageWatcher extends WatcherImpl<SourceDidDamageWatcher>
public SourceDidDamageWatcher(final SourceDidDamageWatcher watcher) {
super(watcher);
this.damageSources = watcher.damageSources;
this.damageSources.addAll(watcher.damageSources);
}
@Override