From 21421a510b3611bc109958f3a508e22920aa5b70 Mon Sep 17 00:00:00 2001 From: Muz Ali Date: Sun, 25 Jan 2026 21:06:07 -0600 Subject: [PATCH] Update with 2026 promos --- .../dl/sources/ScryfallImageSupportCards.java | 3 ++- Mage.Sets/src/mage/sets/MagicFest2026.java | 26 +++++++++++++++++++ Mage.Sets/src/mage/sets/SecretLairPromo.java | 3 ++- 3 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 Mage.Sets/src/mage/sets/MagicFest2026.java diff --git a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportCards.java b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportCards.java index 01f26a871c2..9a05c3f98c7 100644 --- a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportCards.java +++ b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportCards.java @@ -615,6 +615,7 @@ public class ScryfallImageSupportCards { add("MAR"); // Marvel Universe add("TLA"); // Avatar: The Last Airbender add("TLE"); // Avatar: The Last Airbender Eternal + add("PF26"); // MagicFest 2026 add("ECL"); // Lorwyn Eclipsed add("ECC"); // Lorwyn Eclipsed Commander add("TMT"); // Teenage Mutant Ninja Turtles @@ -744,7 +745,7 @@ public class ScryfallImageSupportCards { // LTR - 0 number for tokens only // Scryfall has a bug, for some reason this link doesn't work with ?format=image even though it works with ?format=json // and ?format=text. Base url fails because language is qya and not en and alternate url fails because of this bug - // TODO: This should be reverted when Scryfall fixes the bug + // TODO: This should be reverted when Scryfall fixes the bug // put("LTR/The One Ring/001", "https://api.scryfall.com/cards/ltr/0/"); put("LTR/The One Ring/001", "https://api.scryfall.com/cards/ltr/0/qya?format=image"); diff --git a/Mage.Sets/src/mage/sets/MagicFest2026.java b/Mage.Sets/src/mage/sets/MagicFest2026.java new file mode 100644 index 00000000000..5836f7f4091 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicFest2026.java @@ -0,0 +1,26 @@ +package mage.sets; + +import mage.cards.ExpansionSet; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/pf26 + * + * @author muz + */ +public class MagicFest2026 extends ExpansionSet { + + private static final MagicFest2026 instance = new MagicFest2026(); + + public static MagicFest2026 getInstance() { + return instance; + } + + private MagicFest2026() { + super("MagicFest 2026", "PF26", ExpansionSet.buildDate(2026, 1, 1), SetType.PROMOTIONAL); + hasBasicLands = false; + + cards.add(new SetCardInfo("Wayfarer's Bauble", "1F", Rarity.RARE, mage.cards.w.WayfarersBauble.class, FULL_ART)); + } +} diff --git a/Mage.Sets/src/mage/sets/SecretLairPromo.java b/Mage.Sets/src/mage/sets/SecretLairPromo.java index 5c17194773c..5f510f98321 100644 --- a/Mage.Sets/src/mage/sets/SecretLairPromo.java +++ b/Mage.Sets/src/mage/sets/SecretLairPromo.java @@ -19,7 +19,7 @@ public class SecretLairPromo extends ExpansionSet { super("Secret Lair Promo", "SLP", ExpansionSet.buildDate(2023, 2, 17), SetType.PROMOTIONAL); this.hasBoosters = false; this.hasBasicLands = true; - + cards.add(new SetCardInfo("An Offer You Can't Refuse", 7, Rarity.RARE, mage.cards.a.AnOfferYouCantRefuse.class)); cards.add(new SetCardInfo("Brainstorm", 1, Rarity.RARE, mage.cards.b.Brainstorm.class)); cards.add(new SetCardInfo("Dark Ritual", 16, Rarity.RARE, mage.cards.d.DarkRitual.class)); @@ -63,6 +63,7 @@ public class SecretLairPromo extends ExpansionSet { cards.add(new SetCardInfo("Supreme Verdict", 26, Rarity.RARE, mage.cards.s.SupremeVerdict.class, FULL_ART)); cards.add(new SetCardInfo("Swamp", 33, Rarity.LAND, mage.cards.basiclands.Swamp.class, FULL_ART_BFZ_VARIOUS)); cards.add(new SetCardInfo("Swords to Plowshares", 20, Rarity.RARE, mage.cards.s.SwordsToPlowshares.class)); + cards.add(new SetCardInfo("Tamiyo, Inquisitive Student", 49, Rarity.MYTHIC, mage.cards.t.TamiyoInquisitiveStudent.class)); cards.add(new SetCardInfo("Ugin, the Spirit Dragon", 6, Rarity.MYTHIC, mage.cards.u.UginTheSpiritDragon.class)); cards.add(new SetCardInfo("Unholy Heat", 4, Rarity.RARE, mage.cards.u.UnholyHeat.class)); cards.add(new SetCardInfo("Valakut, the Molten Pinnacle", 14, Rarity.RARE, mage.cards.v.ValakutTheMoltenPinnacle.class));