From 8b96079f6e70166a319d1c16d8f33a138a89ba5a Mon Sep 17 00:00:00 2001 From: Northmoc Date: Sat, 24 Jul 2021 13:04:27 -0400 Subject: [PATCH 1/4] EffectEffect add set to Emblem imagekey --- .../main/java/forge/game/ability/effects/EffectEffect.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java b/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java index 445d03088ed..e70b6e39ebb 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java @@ -123,6 +123,8 @@ public class EffectEffect extends SpellAbilityEffect { } String image; + String set = hostCard.getSetCode().toLowerCase(); + StringBuilder imageSet = new StringBuilder(); if (sa.hasParam("Image")) { image = ImageKeys.getTokenKey(sa.getParam("Image")); } else if (name.startsWith("Emblem")) { // try to get the image from name @@ -135,6 +137,8 @@ public class EffectEffect extends SpellAbilityEffect { } else { // use host image image = hostCard.getImageKey(); } + imageSet.append(image).append("_").append(set); + image = imageSet.toString(); for (Player controller : effectOwner) { final Card eff = createEffect(sa, controller, name, image); From 97225782c177720d15e2c6f06b573133fe320913 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Sat, 24 Jul 2021 13:05:06 -0400 Subject: [PATCH 2/4] Emblems - common rarity --- .../main/java/forge/game/ability/effects/EffectEffect.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java b/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java index e70b6e39ebb..e34e1b33c9e 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java @@ -9,6 +9,7 @@ import com.google.common.collect.Lists; import forge.GameCommand; import forge.ImageKeys; +import forge.card.CardRarity; import forge.game.Game; import forge.game.GameObject; import forge.game.ability.AbilityFactory; @@ -143,7 +144,11 @@ public class EffectEffect extends SpellAbilityEffect { for (Player controller : effectOwner) { final Card eff = createEffect(sa, controller, name, image); eff.setSetCode(sa.getHostCard().getSetCode()); - eff.setRarity(sa.getHostCard().getRarity()); + if (name.startsWith("Emblem")) { + eff.setRarity(CardRarity.Common); + } else { + eff.setRarity(sa.getHostCard().getRarity()); + } // Abilities and triggers work the same as they do for Token // Grant abilities From 377cbca39be3d8c626d4d36253ddee3190e26d0a Mon Sep 17 00:00:00 2001 From: Northmoc Date: Sat, 24 Jul 2021 13:06:13 -0400 Subject: [PATCH 3/4] Add extra try for "setless" token image (Android) --- .../src/forge/util/LibGDXImageFetcher.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/forge-gui-mobile/src/forge/util/LibGDXImageFetcher.java b/forge-gui-mobile/src/forge/util/LibGDXImageFetcher.java index 7ed53b0ce69..b07265a7e70 100644 --- a/forge-gui-mobile/src/forge/util/LibGDXImageFetcher.java +++ b/forge-gui-mobile/src/forge/util/LibGDXImageFetcher.java @@ -76,6 +76,19 @@ public class LibGDXImageFetcher extends ImageFetcher { break; } catch (IOException e) { System.out.println("Failed to download card [" + destPath + "] image: " + e.getMessage()); + if (urlToDownload.contains("tokens")) { + int setIndex = urlToDownload.lastIndexOf('_'); + int typeIndex = urlToDownload.lastIndexOf('.'); + String setlessFilename = urlToDownload.substring(0, setIndex); + String extension = urlToDownload.substring(typeIndex); + urlToDownload = setlessFilename+extension; + try { + doFetch(tofullBorder(urlToDownload)); + break; + } catch (IOException t) { + System.out.println("Failed to download setless token [" + destPath + "]: " + e.getMessage()); + } + } } } } From 222448d29ce92d3aef12409f8c33c443869c4073 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Sat, 24 Jul 2021 13:06:47 -0400 Subject: [PATCH 4/4] Add extra try for "setless" token image (Desktop) --- .../src/main/java/forge/util/SwingImageFetcher.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/forge-gui-desktop/src/main/java/forge/util/SwingImageFetcher.java b/forge-gui-desktop/src/main/java/forge/util/SwingImageFetcher.java index 85643483aa7..54d36b41d91 100644 --- a/forge-gui-desktop/src/main/java/forge/util/SwingImageFetcher.java +++ b/forge-gui-desktop/src/main/java/forge/util/SwingImageFetcher.java @@ -88,6 +88,19 @@ public class SwingImageFetcher extends ImageFetcher { break; } catch (IOException e) { System.err.println("Failed to download card [" + destPath + "] image: " + e.getMessage()); + if (urlToDownload.contains("tokens")) { + int setIndex = urlToDownload.lastIndexOf('_'); + int typeIndex = urlToDownload.lastIndexOf('.'); + String setlessFilename = urlToDownload.substring(0, setIndex); + String extension = urlToDownload.substring(typeIndex); + urlToDownload = setlessFilename+extension; + try { + doFetch(tofullBorder(urlToDownload)); + break; + } catch (IOException t) { + System.err.println("Failed to download setless token [" + destPath + "]: " + e.getMessage()); + } + } } } }