From 379f9699e8021a7ea45f1401a32a6ecd4a030df9 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Fri, 29 May 2020 09:12:08 +0200 Subject: [PATCH] Player Human: fix chooseSingleEntityForEffect --- forge-game/src/main/java/forge/game/Game.java | 10 ++++++++++ .../main/java/forge/player/PlayerControllerHuman.java | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/forge-game/src/main/java/forge/game/Game.java b/forge-game/src/main/java/forge/game/Game.java index 1b2884070d5..80ba2048dd9 100644 --- a/forge-game/src/main/java/forge/game/Game.java +++ b/forge-game/src/main/java/forge/game/Game.java @@ -545,6 +545,16 @@ public class Game { } } + public Card findByView(CardView view) { + CardIdVisitor visit = new CardIdVisitor(view.getId()); + if (ZoneType.Stack.equals(view.getZone())) { + visit.visitAll(getStackZone()); + } else { + visit.visitAll(getPlayer(view.getController()).getZone(view.getZone())); + } + return visit.getFound(); + } + public Card findById(int id) { CardIdVisitor visit = new CardIdVisitor(id); this.forEachCardInGame(visit); diff --git a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java index d0c6b7d6a8a..1053ceddca4 100644 --- a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java +++ b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java @@ -465,7 +465,7 @@ public class PlayerControllerHuman extends PlayerController implements IGameCont gameCacheChoose.getTrackableKeys(), delayedReveal, isOptional); endTempShowCards(); - if (result != null || !gameCacheChoose.containsKey(result)) { + if (result == null || !gameCacheChoose.containsKey(result)) { return null; } return gameCacheChoose.get(result); @@ -3014,7 +3014,7 @@ public class PlayerControllerHuman extends PlayerController implements IGameCont } public Card getCard(final CardView cardView) { - return getGame().findById(cardView.getId()); + return getGame().findByView(cardView); } public CardCollection getCardList(Iterable cardViews) {