From 41abf876a2ef11a08b98d246037c3dde3b1186b6 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Fri, 7 May 2021 08:42:17 +0800 Subject: [PATCH] [Mobile] Fix NPE on FChoiceList.java --- forge-gui-mobile/src/forge/toolbox/FChoiceList.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/forge-gui-mobile/src/forge/toolbox/FChoiceList.java b/forge-gui-mobile/src/forge/toolbox/FChoiceList.java index 5787180555e..01a9428cf8e 100644 --- a/forge-gui-mobile/src/forge/toolbox/FChoiceList.java +++ b/forge-gui-mobile/src/forge/toolbox/FChoiceList.java @@ -4,6 +4,7 @@ import static forge.card.CardRenderer.MANA_SYMBOL_SIZE; import java.util.ArrayList; import java.util.Collections; +import java.util.EnumSet; import java.util.List; import com.badlogic.gdx.utils.Align; @@ -24,6 +25,7 @@ import forge.card.mana.ManaCostParser; import forge.game.card.CardView; import forge.game.card.IHasCardView; import forge.game.player.PlayerView; +import forge.game.zone.ZoneType; import forge.item.InventoryItem; import forge.item.PaperCard; import forge.itemmanager.AdvancedSearch.FilterOperator; @@ -515,7 +517,8 @@ public class FChoiceList extends FList implements ActivateHandler { @Override public void drawValue(Graphics g, T value, FSkinFont font, FSkinColor foreColor, boolean pressed, float x, float y, float w, float h) { - CardView cv = ((IHasCardView)value).getCardView(); + //should fix NPE ie Thief of Sanity, Gonti... etc + CardView cv = ((IHasCardView)value).getCardView().isFaceDown() && ((IHasCardView)value).getCardView().isInZone(EnumSet.of(ZoneType.Exile)) ? ((IHasCardView)value).getCardView().getBackup() : ((IHasCardView)value).getCardView(); boolean showAlternate = showAlternate(cv, value.toString()); CardRenderer.drawCardWithOverlays(g, cv, x, y, VStack.CARD_WIDTH, VStack.CARD_HEIGHT, CardStackPosition.Top, false, showAlternate, true);