From c591031f48b19d1ae65985ea95422fd8c085e87f Mon Sep 17 00:00:00 2001 From: drdev Date: Fri, 3 Oct 2014 10:34:35 +0000 Subject: [PATCH] Prevent having the same cards revealed multiple times --- .../main/java/forge/game/player/DelayedReveal.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/forge-game/src/main/java/forge/game/player/DelayedReveal.java b/forge-game/src/main/java/forge/game/player/DelayedReveal.java index bd5d350cf7f..009bb0f3eac 100644 --- a/forge-game/src/main/java/forge/game/player/DelayedReveal.java +++ b/forge-game/src/main/java/forge/game/player/DelayedReveal.java @@ -7,10 +7,11 @@ import forge.game.zone.ZoneType; //Stores information to reveal cards after a delay unless those cards can be revealed in the same dialog as cards being selected public class DelayedReveal { - public final Collection cards; - public final ZoneType zone; - public final Player owner; - public final String messagePrefix; + private final Collection cards; + private final ZoneType zone; + private final Player owner; + private final String messagePrefix; + private boolean revealed; public DelayedReveal(Collection cards0, ZoneType zone0, Player owner0) { this(cards0, zone0, owner0, null); @@ -23,6 +24,8 @@ public class DelayedReveal { } public void reveal(PlayerController controller) { + if (revealed) { return; } //avoid revealing more than once + revealed = true; controller.reveal(cards, zone, owner, messagePrefix); } }