From b6b586a865014d7a2547a6fb0d320bced4750aca Mon Sep 17 00:00:00 2001 From: drdev Date: Sat, 7 Dec 2013 17:38:52 +0000 Subject: [PATCH] Make {X} appear before generic on card overlays --- .../forge/gui/toolbox/CardFaceSymbols.java | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/forge-gui/src/main/java/forge/gui/toolbox/CardFaceSymbols.java b/forge-gui/src/main/java/forge/gui/toolbox/CardFaceSymbols.java index f12eb506b8b..fda8c2e34d6 100644 --- a/forge-gui/src/main/java/forge/gui/toolbox/CardFaceSymbols.java +++ b/forge-gui/src/main/java/forge/gui/toolbox/CardFaceSymbols.java @@ -149,21 +149,36 @@ public class CardFaceSymbols { return; } + int xpos = x; + final int offset = 14; final int genericManaCost = manaCost.getGenericCost(); final boolean hasGeneric = (genericManaCost > 0) || manaCost.isPureGeneric(); final List shards = manaCost.getShards(); - int xpos = x; - final int offset = 14; if (hasGeneric) { + for (final ManaCostShard s : shards) { //render X shards before generic + if (s == ManaCostShard.X) { + CardFaceSymbols.drawSymbol(s.getImageKey(), skin, g, xpos, y); + xpos += offset; + } + } + final String sGeneric = Integer.toString(genericManaCost); CardFaceSymbols.drawSymbol(sGeneric, skin, g, xpos, y); xpos += offset; + + for (final ManaCostShard s : shards) { //render non-X shards after generic + if (s != ManaCostShard.X) { + CardFaceSymbols.drawSymbol(s.getImageKey(), skin, g, xpos, y); + xpos += offset; + } + } } - - for (final ManaCostShard s : shards) { - CardFaceSymbols.drawSymbol(s.getImageKey(), skin, g, xpos, y); - xpos += offset; + else { //if no generic, just render shards in order + for (final ManaCostShard s : shards) { + CardFaceSymbols.drawSymbol(s.getImageKey(), skin, g, xpos, y); + xpos += offset; + } } }