From e29eea791cb2e798ead8d34ab9a90a5fe7b38592 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Thu, 12 Mar 2015 16:54:30 +0100 Subject: [PATCH] * Fixed null pointer exception for tooltip and triggered abilities (made a kind of workaround and it's still unclear to me what caused this problems). --- .../mage/client/util/gui/GuiDisplayUtil.java | 35 +++++++++++-------- .../org/mage/plugins/card/CardPluginImpl.java | 2 +- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/util/gui/GuiDisplayUtil.java b/Mage.Client/src/main/java/mage/client/util/gui/GuiDisplayUtil.java index d13da77a3ff..51be991cda3 100644 --- a/Mage.Client/src/main/java/mage/client/util/gui/GuiDisplayUtil.java +++ b/Mage.Client/src/main/java/mage/client/util/gui/GuiDisplayUtil.java @@ -14,6 +14,7 @@ import javax.swing.*; import java.awt.*; import java.net.URL; import java.util.ArrayList; +import mage.constants.Rarity; import org.mage.plugins.card.utils.impl.ImageManagerImpl; public class GuiDisplayUtil { @@ -221,21 +222,27 @@ public class GuiDisplayUtil { } buffer.append(getTypes(card)); buffer.append(""); - switch (card.getRarity()) { - case RARE: - buffer.append(""); - break; - case UNCOMMON: - buffer.append(""); - break; - case COMMON: - buffer.append(""); - break; - case MYTHIC: - buffer.append(""); - break; + String rarity ; + if (card.getRarity() == null) { + rarity = Rarity.COMMON.getCode(); + buffer.append(""); + }else { + switch (card.getRarity()) { + case RARE: + buffer.append(""); + break; + case UNCOMMON: + buffer.append(""); + break; + case COMMON: + buffer.append(""); + break; + case MYTHIC: + buffer.append(""); + break; + } + rarity = card.getRarity().getCode(); } - String rarity = card.getRarity().getCode(); if (card.getExpansionSetCode() != null) { buffer.append(ManaSymbols.replaceSetCodeWithHTML(card.getExpansionSetCode().toUpperCase(), rarity)); } diff --git a/Mage.Client/src/main/java/org/mage/plugins/card/CardPluginImpl.java b/Mage.Client/src/main/java/org/mage/plugins/card/CardPluginImpl.java index 4ced3318ab7..937caff535e 100644 --- a/Mage.Client/src/main/java/org/mage/plugins/card/CardPluginImpl.java +++ b/Mage.Client/src/main/java/org/mage/plugins/card/CardPluginImpl.java @@ -90,7 +90,7 @@ public class CardPluginImpl implements CardPlugin { @Override public MagePermanent getMageCard(CardView permanent, Dimension dimension, UUID gameId, ActionCallback callback, boolean canBeFoil, boolean loadImage) { CardPanel cardPanel = new CardPanel(permanent, gameId, loadImage, callback, false, dimension); - boolean implemented = !permanent.getRarity().equals(Rarity.NA); + boolean implemented = permanent.getRarity() != null && !permanent.getRarity().equals(Rarity.NA); cardPanel.setShowCastingCost(implemented); return cardPanel; }