From 8331f92775b64c067cf0e10623663f2fe89db8e8 Mon Sep 17 00:00:00 2001 From: Agetian Date: Sun, 27 Aug 2017 04:12:19 +0000 Subject: [PATCH] - GameState: added support for counters in exile zone (e.g. via Mairsil) and for face-down cards in exile (e.g. via Bomat Courier). --- forge-ai/src/main/java/forge/ai/GameState.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/GameState.java b/forge-ai/src/main/java/forge/ai/GameState.java index 8ead3925bee..8b5f7386c53 100644 --- a/forge-ai/src/main/java/forge/ai/GameState.java +++ b/forge-ai/src/main/java/forge/ai/GameState.java @@ -262,11 +262,6 @@ public abstract class GameState { } else if (c.getCurrentStateName().equals(CardStateName.Meld)) { newText.append("|Meld"); } - Map counters = c.getCounters(); - if (!counters.isEmpty()) { - newText.append("|Counters:"); - newText.append(countersToString(counters)); - } if (c.getEquipping() != null) { newText.append("|Attaching:").append(c.getEquipping().getId()); } else if (c.getFortifying() != null) { @@ -311,6 +306,18 @@ public abstract class GameState { if (c.getExiledWith() != null) { newText.append("|ExiledWith:").append(c.getExiledWith().getId()); } + if (c.isFaceDown()) { + newText.append("|FaceDown"); // Exiled face down + } + } + + if (zoneType == ZoneType.Battlefield || zoneType == ZoneType.Exile) { + // A card can have counters on the battlefield and in exile (e.g. exiled by Mairsil, the Pretender) + Map counters = c.getCounters(); + if (!counters.isEmpty()) { + newText.append("|Counters:"); + newText.append(countersToString(counters)); + } } if (c.getGame().getCombat() != null) {