diff --git a/src/main/java/forge/CardLists.java b/src/main/java/forge/CardLists.java index c235b29a23d..ee63fb297cd 100644 --- a/src/main/java/forge/CardLists.java +++ b/src/main/java/forge/CardLists.java @@ -28,7 +28,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; -import forge.card.CardSplitType; import forge.card.spellability.SpellAbility; import forge.game.ai.ComputerUtilCard; import forge.game.player.Player; diff --git a/src/main/java/forge/ImageCache.java b/src/main/java/forge/ImageCache.java index 582bd8ac0ff..ca80a7d74b6 100644 --- a/src/main/java/forge/ImageCache.java +++ b/src/main/java/forge/ImageCache.java @@ -200,7 +200,7 @@ public class ImageCache { hasManyPictures = cntPictures > 1; } else { // without set number of pictures equals number of urls provided in Svar:Picture - String urls = backFace ? card.getPictureOtherSideUrl() : card.getPictureUrl(); + String urls = card.getPictureUrl(backFace); cntPictures = StringUtils.countMatches(urls, "\\") + 1; // raise the art index limit to the maximum of the sets this card was printed in @@ -239,6 +239,10 @@ public class ImageCache { } } + public static boolean hasBackFacePicture(CardPrinted cp) { + return cp.getRules().getSplitType() == CardSplitType.Transform; // do we take other image for flipped cards? + } + public static String getSetFolder(String edition) { return !NewConstants.CACHE_CARD_PICS_SUBDIR.containsKey(edition) ? Singletons.getModel().getEditions().getCode2ByCode(edition) // by default 2-letter codes from MWS are used @@ -247,8 +251,8 @@ public class ImageCache { private static String getNameToUse(CardPrinted cp, boolean backFace) { final CardRules card = cp.getRules(); - if (backFace) { - if ( card.getSplitType() == CardSplitType.Transform ) + if (backFace ) { + if ( hasBackFacePicture(cp) ) return card.getOtherPart().getName(); else return null; diff --git a/src/main/java/forge/card/CardRules.java b/src/main/java/forge/card/CardRules.java index 916a55e5229..8f5a0972c11 100644 --- a/src/main/java/forge/card/CardRules.java +++ b/src/main/java/forge/card/CardRules.java @@ -161,8 +161,7 @@ public final class CardRules implements ICardCharacteristics { // Downloadable image private String dlUrl; private String dlUrlOtherSide; - public String getPictureUrl() { return dlUrl; } - public String getPictureOtherSideUrl() { return dlUrlOtherSide; } + public String getPictureUrl(boolean backface ) { return backface ? dlUrlOtherSide : dlUrl; } public void setDlUrls(String[] dlUrls) { this.dlUrl = dlUrls[0]; this.dlUrlOtherSide = dlUrls[1]; } public final List getReplacements() { diff --git a/src/main/java/forge/card/cardfactory/CardFactoryUtil.java b/src/main/java/forge/card/cardfactory/CardFactoryUtil.java index 9ed92e42588..7d969b7507c 100644 --- a/src/main/java/forge/card/cardfactory/CardFactoryUtil.java +++ b/src/main/java/forge/card/cardfactory/CardFactoryUtil.java @@ -40,7 +40,6 @@ import forge.Constant; import forge.CounterType; import forge.GameEntity; import forge.Singletons; -import forge.card.CardSplitType; import forge.card.ability.AbilityFactory; import forge.card.ability.AbilityUtils; import forge.card.ability.ApiType; diff --git a/src/main/java/forge/card/spellability/SpellAbilityRequirements.java b/src/main/java/forge/card/spellability/SpellAbilityRequirements.java index 9edc31f1fe3..9978017329f 100644 --- a/src/main/java/forge/card/spellability/SpellAbilityRequirements.java +++ b/src/main/java/forge/card/spellability/SpellAbilityRequirements.java @@ -22,7 +22,6 @@ import java.util.ArrayList; import forge.Card; import forge.CardCharacteristicName; import forge.Singletons; -import forge.card.CardSplitType; import forge.card.ability.AbilityUtils; import forge.card.cost.CostPayment; import forge.game.zone.Zone; diff --git a/src/main/java/forge/game/GameAction.java b/src/main/java/forge/game/GameAction.java index 0dd3b86c954..573a4d9d681 100644 --- a/src/main/java/forge/game/GameAction.java +++ b/src/main/java/forge/game/GameAction.java @@ -35,7 +35,6 @@ import forge.CardUtil; import forge.Command; import forge.CounterType; import forge.GameEntity; -import forge.card.CardSplitType; import forge.card.CardType; import forge.card.TriggerReplacementBase; import forge.card.ability.effects.AttachEffect; diff --git a/src/main/java/forge/game/GameActionPlay.java b/src/main/java/forge/game/GameActionPlay.java index 48be8fef092..3fca1b06895 100644 --- a/src/main/java/forge/game/GameActionPlay.java +++ b/src/main/java/forge/game/GameActionPlay.java @@ -10,7 +10,6 @@ import forge.CardCharacteristicName; import forge.CardColor; import forge.CardLists; import forge.CardPredicates; -import forge.card.CardSplitType; import forge.card.MagicColor; import forge.card.ability.AbilityUtils; import forge.card.ability.ApiType; diff --git a/src/main/java/forge/gui/CardDetailPanel.java b/src/main/java/forge/gui/CardDetailPanel.java index 64d572a1077..539d123e34c 100644 --- a/src/main/java/forge/gui/CardDetailPanel.java +++ b/src/main/java/forge/gui/CardDetailPanel.java @@ -41,7 +41,6 @@ import forge.CounterType; import forge.GameEntity; import forge.Singletons; import forge.card.CardEdition; -import forge.card.CardSplitType; import forge.game.player.Player; import forge.game.zone.ZoneType; import forge.gui.toolbox.FLabel; diff --git a/src/main/java/forge/gui/MigrationSourceAnalyzer.java b/src/main/java/forge/gui/MigrationSourceAnalyzer.java index 1e3c1c10ac5..7d5443b9be2 100644 --- a/src/main/java/forge/gui/MigrationSourceAnalyzer.java +++ b/src/main/java/forge/gui/MigrationSourceAnalyzer.java @@ -32,7 +32,6 @@ import forge.ImageCache; import forge.Singletons; import forge.card.CardEdition; import forge.card.CardRules; -import forge.card.CardSplitType; import forge.card.EditionCollection; import forge.item.CardDb; import forge.item.CardPrinted; @@ -295,7 +294,7 @@ public class MigrationSourceAnalyzer { private void _addDefaultPicNames(CardPrinted c, boolean backFace) { CardRules card = c.getRules(); - String urls = backFace ? card.getPictureOtherSideUrl() : card.getPictureUrl(); + String urls = card.getPictureUrl(backFace); if (StringUtils.isEmpty(urls)) { return; } int numPics = 1 + StringUtils.countMatches(urls, "\\"); @@ -325,7 +324,7 @@ public class MigrationSourceAnalyzer { for (CardPrinted c : CardDb.instance().getAllCards()) { _addDefaultPicNames(c, false); - if ( c.getRules().getSplitType() == CardSplitType.Transform) + if (ImageCache.hasBackFacePicture(c)) _addDefaultPicNames(c, true); } @@ -364,10 +363,9 @@ public class MigrationSourceAnalyzer { private static void _addSetCards(Map cardFileNames, Iterable library, Predicate filter) { for (CardPrinted c : Iterables.filter(library, filter)) { - boolean hasBackFacePicture = null != c.getRules().getPictureOtherSideUrl(); String filename = ImageCache.getImageKey(c, false, true) + ".jpg"; cardFileNames.put(filename, filename); - if (hasBackFacePicture) { + if (ImageCache.hasBackFacePicture(c)) { filename = ImageCache.getImageKey(c, true, true) + ".jpg"; cardFileNames.put(filename, filename); } @@ -397,10 +395,9 @@ public class MigrationSourceAnalyzer { }; for (CardPrinted c : Iterables.filter(CardDb.variants().getAllCards(), predPlanes)) { - boolean hasBackFacePciture = null != c.getRules().getPictureOtherSideUrl(); String baseName = ImageCache.getImageKey(c,false, true); _nameUpdates.put(baseName + ".full.jpg", baseName + ".jpg"); - if (hasBackFacePciture) { + if (ImageCache.hasBackFacePicture(c)) { baseName = ImageCache.getImageKey(c, true, true); _nameUpdates.put(baseName + ".full.jpg", baseName + ".jpg"); } diff --git a/src/main/java/forge/gui/download/GuiDownloadPicturesLQ.java b/src/main/java/forge/gui/download/GuiDownloadPicturesLQ.java index 8a860a31d17..d8cdffc811e 100644 --- a/src/main/java/forge/gui/download/GuiDownloadPicturesLQ.java +++ b/src/main/java/forge/gui/download/GuiDownloadPicturesLQ.java @@ -25,7 +25,6 @@ import org.apache.commons.lang3.StringUtils; import forge.ImageCache; import forge.card.CardRules; -import forge.card.CardSplitType; import forge.item.CardDb; import forge.item.CardPrinted; import forge.properties.NewConstants; @@ -42,7 +41,7 @@ public class GuiDownloadPicturesLQ extends GuiDownloader { for (CardPrinted c : CardDb.instance().getAllCards()) { addDLObject(c, downloads, false); - if ( c.getRules().getSplitType() == CardSplitType.Transform) + if (ImageCache.hasBackFacePicture(c)) addDLObject(c, downloads, true); } @@ -58,7 +57,7 @@ public class GuiDownloadPicturesLQ extends GuiDownloader { private void addDLObject(CardPrinted c, Map downloads, boolean backFace) { CardRules cardRules = c.getRules(); - String urls = backFace ? cardRules.getPictureOtherSideUrl() : cardRules.getPictureUrl(); + String urls = cardRules.getPictureUrl(backFace); if (StringUtils.isEmpty(urls)) { return; } diff --git a/src/main/java/forge/gui/download/GuiDownloadSetPicturesLQ.java b/src/main/java/forge/gui/download/GuiDownloadSetPicturesLQ.java index 53413d88837..7bafc810f38 100644 --- a/src/main/java/forge/gui/download/GuiDownloadSetPicturesLQ.java +++ b/src/main/java/forge/gui/download/GuiDownloadSetPicturesLQ.java @@ -27,7 +27,6 @@ import com.google.common.collect.Iterables; import forge.ImageCache; import forge.card.CardEdition; -import forge.card.CardSplitType; import forge.item.CardDb; import forge.item.CardPrinted; import forge.properties.NewConstants; @@ -51,7 +50,7 @@ public class GuiDownloadSetPicturesLQ extends GuiDownloader { String url = ImageCache.getDownloadUrl(c, false); addDLObject(url, ImageCache.getImageKey(c, false, true), downloads); - if ( c.getRules().getSplitType() == CardSplitType.Transform ) { + if (ImageCache.hasBackFacePicture(c)) { String url2 = ImageCache.getDownloadUrl(c, true); addDLObject(url2, ImageCache.getImageKey(c, true, true), downloads); } diff --git a/src/main/java/forge/view/arcane/CardPanel.java b/src/main/java/forge/view/arcane/CardPanel.java index 25727b1d538..8e049bd4ac3 100644 --- a/src/main/java/forge/view/arcane/CardPanel.java +++ b/src/main/java/forge/view/arcane/CardPanel.java @@ -41,7 +41,6 @@ import forge.CounterType; import forge.ImageCache; import forge.Singletons; import forge.card.CardEdition; -import forge.card.CardSplitType; import forge.card.mana.ManaCost; import forge.gui.CardContainer; import forge.gui.toolbox.CardFaceSymbols;