diff --git a/Mage.Common/src/mage/view/CardView.java b/Mage.Common/src/mage/view/CardView.java index b7cba207e9a..a66937fd272 100644 --- a/Mage.Common/src/mage/view/CardView.java +++ b/Mage.Common/src/mage/view/CardView.java @@ -93,7 +93,7 @@ public class CardView implements Serializable { this.manaCost = card.getManaCost().getSymbols(); this.convertedManaCost = card.getManaCost().convertedManaCost(); if (card instanceof PermanentToken) { - this.rarity = Rarity.NA; + this.rarity = Rarity.COMMON; } else { this.rarity = card.getRarity(); } diff --git a/Mage.Plugins/Mage.Card.Plugin/src/main/java/org/mage/plugins/card/info/CardInfoPaneImpl.java b/Mage.Plugins/Mage.Card.Plugin/src/main/java/org/mage/plugins/card/info/CardInfoPaneImpl.java index 4d6c4c5c025..ab83d14ce50 100644 --- a/Mage.Plugins/Mage.Card.Plugin/src/main/java/org/mage/plugins/card/info/CardInfoPaneImpl.java +++ b/Mage.Plugins/Mage.Card.Plugin/src/main/java/org/mage/plugins/card/info/CardInfoPaneImpl.java @@ -2,7 +2,6 @@ package org.mage.plugins.card.info; import mage.Constants; import mage.components.CardInfoPane; -import mage.game.permanent.Permanent; import mage.utils.CardUtil; import mage.utils.ThreadUtils; import mage.view.CardView; @@ -39,30 +38,31 @@ public class CardInfoPaneImpl extends JEditorPane implements CardInfoPane { ThreadUtils.threadPool.submit(new Runnable() { public void run() { - if (!card.equals(currentCard)) return; - - String manaCost = ""; - for (String m : card.getManaCost()) { - manaCost += m; - } - String castingCost = UI.getDisplayManaCost(manaCost); - castingCost = ManaSymbols.replaceSymbolsWithHTML(castingCost, false); - - int symbolCount = 0; - int offset = 0; - while ((offset = castingCost.indexOf(" rules = card.getRules(); - List rulings = new ArrayList(rules); try { + if (!card.equals(currentCard)) return; + + String manaCost = ""; + for (String m : card.getManaCost()) { + manaCost += m; + } + String castingCost = UI.getDisplayManaCost(manaCost); + castingCost = ManaSymbols.replaceSymbolsWithHTML(castingCost, false); + + int symbolCount = 0; + int offset = 0; + while ((offset = castingCost.indexOf(" rules = card.getRules(); + List rulings = new ArrayList(rules); + if (card instanceof PermanentView) { - List counters = ((PermanentView)card).getCounters(); + List counters = ((PermanentView) card).getCounters(); int count = counters != null ? counters.size() : 0; if (count > 0) { StringBuilder sb = new StringBuilder(); int index = 0; - for (CounterView counter: ((PermanentView)card).getCounters()) { + for (CounterView counter : ((PermanentView) card).getCounters()) { if (counter.getCount() > 0) { if (index == 0) { sb.append("Counters: "); @@ -76,102 +76,105 @@ public class CardInfoPaneImpl extends JEditorPane implements CardInfoPane { rulings.add(sb.toString()); } } + + + boolean smallImages = true; + int fontSize = 11; + + String fontFamily = "tahoma"; + /*if (prefs.fontFamily == CardFontFamily.arial) + fontFamily = "arial"; + else if (prefs.fontFamily == CardFontFamily.verdana) { + fontFamily = "verdana"; + }*/ + + final StringBuffer buffer = new StringBuffer(512); + buffer.append(""); + buffer.append(""); + buffer.append("
"); + buffer.append(card.getName()); + buffer.append(""); + buffer.append(castingCost); + buffer.append("
"); + buffer.append("
"); + 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 = card.getRarity().getCode(); + if (card.getExpansionSetCode() != null) { + buffer.append(ManaSymbols.replaceSetCodeWithHTML(card.getExpansionSetCode().toUpperCase(), rarity)); + } + buffer.append("
"); + + String pt = ""; + if (CardUtil.isCreature(card)) { + pt = card.getPower() + "/" + card.getToughness(); + } else if (CardUtil.isPlaneswalker(card)) { + pt = card.getLoyalty().toString(); + } + if (pt.length() > 0) { + buffer.append("
"); + buffer.append(""); + buffer.append(pt); + buffer.append(""); + buffer.append("
"); + } + + String legal = ""; + if (rulings.size() > 0) { + legal = legal.replaceAll("#([^#]+)#", "$1"); + legal = legal.replaceAll("\\s*//\\s*", "
"); + legal = legal.replace("\r\n", "
"); + legal += "
"; + for (String ruling : rulings) { + legal += "

"; + legal += ruling; + legal += "

"; + } + } + + + if (legal.length() > 0) { + //buffer.append("
"); + legal = legal.replaceAll("\\{this\\}", card.getName()); + legal = legal.replaceAll("\\{source\\}", card.getName()); + buffer.append(ManaSymbols.replaceSymbolsWithHTML(legal, smallImages)); + } + + buffer.append("
"); + + SwingUtilities.invokeLater(new Runnable() { + public void run() { + if (!card.equals(currentCard)) return; + setText(buffer.toString()); + //System.out.println(buffer.toString()); + setCaretPosition(0); + //ThreadUtils.sleep(300); + } + }); + } catch (Exception e) { e.printStackTrace(); } - - boolean smallImages = true; - int fontSize = 11; - - String fontFamily = "tahoma"; - /*if (prefs.fontFamily == CardFontFamily.arial) - fontFamily = "arial"; - else if (prefs.fontFamily == CardFontFamily.verdana) { - fontFamily = "verdana"; - }*/ - - final StringBuffer buffer = new StringBuffer(512); - buffer.append(""); - buffer.append(""); - buffer.append("
"); - buffer.append(card.getName()); - buffer.append(""); - buffer.append(castingCost); - buffer.append("
"); - buffer.append("
"); - 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 = card.getRarity().getCode(); - buffer.append(ManaSymbols.replaceSetCodeWithHTML(card.getExpansionSetCode().toUpperCase(), rarity)); - buffer.append("
"); - - String pt = ""; - if (CardUtil.isCreature(card)) { - pt = card.getPower() + "/" + card.getToughness(); - } else if (CardUtil.isPlaneswalker(card)) { - pt = card.getLoyalty().toString(); - } - if (pt.length() > 0) { - buffer.append("
"); - buffer.append(""); - buffer.append(pt); - buffer.append(""); - buffer.append("
"); - } - - String legal = ""; - if (rulings.size() > 0) { - legal = legal.replaceAll("#([^#]+)#", "$1"); - legal = legal.replaceAll("\\s*//\\s*", "
"); - legal = legal.replace("\r\n", "
"); - legal += "
"; - for (String ruling : rulings) { - legal += "

"; - legal += ruling; - legal += "

"; - } - } - - - - if (legal.length() > 0) { - //buffer.append("
"); - legal = legal.replaceAll("\\{this\\}", card.getName()); - legal = legal.replaceAll("\\{source\\}", card.getName()); - buffer.append(ManaSymbols.replaceSymbolsWithHTML(legal, smallImages)); - } - - buffer.append("
"); - - SwingUtilities.invokeLater(new Runnable() { - public void run() { - if (!card.equals(currentCard)) return; - setText(buffer.toString()); - //System.out.println(buffer.toString()); - setCaretPosition(0); - //ThreadUtils.sleep(300); - } - }); } }); }