diff --git a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java index 33d1317a1b8..c19eb435121 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java @@ -432,7 +432,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect { final Player player = sa.getActivatingPlayer(); final Card hostCard = sa.getHostCard(); final Game game = player.getGame(); - final List commandCards = Lists.newArrayList(); + final CardCollection commandCards = new CardCollection(); ZoneType destination = ZoneType.smartValueOf(sa.getParam("Destination")); final List origin = Lists.newArrayList(); @@ -719,11 +719,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect { //reveal command cards that changes zone from command zone to player's hand if (!commandCards.isEmpty()) { - for (Player observer : game.getPlayers()){ - if(!observer.isAI() && !observer.getController().isAI() && observer != player) { - observer.getController().reveal(new CardCollection(commandCards), player.getZone(ZoneType.Hand).getZoneType(), player, "Revealed cards in "); - } - } + game.getAction().reveal(commandCards, player, true, "Revealed cards in "); } triggerList.triggerChangesZoneAll(game); diff --git a/forge-game/src/main/java/forge/game/ability/effects/SetStateEffect.java b/forge-game/src/main/java/forge/game/ability/effects/SetStateEffect.java index 8a2e673c231..31fa50157a9 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/SetStateEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/SetStateEffect.java @@ -1,6 +1,5 @@ package forge.game.ability.effects; -import com.google.common.collect.Lists; import forge.card.CardStateName; import forge.game.Game; import forge.game.GameEntityCounterTable; @@ -59,7 +58,7 @@ public class SetStateEffect extends SpellAbilityEffect { final boolean manifestUp = sa.hasParam("ManifestUp"); final boolean hiddenAgenda = sa.hasParam("HiddenAgenda"); final boolean optional = sa.hasParam("Optional"); - final List transformedCards = Lists.newArrayList(); + final CardCollection transformedCards = new CardCollection(); GameEntityCounterTable table = new GameEntityCounterTable(); @@ -137,12 +136,7 @@ public class SetStateEffect extends SpellAbilityEffect { } table.triggerCountersPutAll(game); if (!transformedCards.isEmpty()) { - //reveal transformed cards to human player/controller except activating player - for (Player observer : game.getPlayers()){ - if(!observer.isAI() && !observer.getController().isAI() && observer != p) { - observer.getController().reveal(new CardCollection(transformedCards), p.getZone(ZoneType.Battlefield).getZoneType(), p, "Transformed cards in "); - } - } + game.getAction().reveal(transformedCards, p, true, "Transformed cards in "); } } } diff --git a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java index 16bf9c0cde0..28d55534e43 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java @@ -4405,12 +4405,7 @@ public class CardFactoryUtil { String sb = TextUtil.concatWithSpace(getActivatingPlayer().toString(),"has suspended", c.getName(), "with", String.valueOf(counters),"time counters on it."); game.getGameLog().add(GameLogEntryType.STACK_RESOLVE, sb); //reveal suspended card - for (Player p : game.getPlayers()){ - if(!p.isAI() && !p.getController().isAI()) { - //reveal card to human player/controller only - p.getController().reveal(new CardCollection(c), c.getZone().getZoneType(), c.getOwner(), c.getName() + " is suspended with " + counters + " time counters in "); - } - } + game.getAction().reveal(new CardCollection(c), c.getOwner(), true, c.getName() + " is suspended with " + counters + " time counters in "); } }; final StringBuilder sbDesc = new StringBuilder();