From 9a4fba65ef40b017d36f83c522d9a5f50bc04013 Mon Sep 17 00:00:00 2001
From: Evan Kranzler <theelk801@gmail.com>
Date: Thu, 2 Jun 2022 19:32:11 -0400
Subject: [PATCH] [CLB] Implemented Wizards of Thay

---
 Mage.Sets/src/mage/cards/w/WizardsOfThay.java | 58 +++++++++++++++++++
 .../CommanderLegendsBattleForBaldursGate.java |  1 +
 2 files changed, 59 insertions(+)
 create mode 100644 Mage.Sets/src/mage/cards/w/WizardsOfThay.java

diff --git a/Mage.Sets/src/mage/cards/w/WizardsOfThay.java b/Mage.Sets/src/mage/cards/w/WizardsOfThay.java
new file mode 100644
index 0000000000..cb75daccc6
--- /dev/null
+++ b/Mage.Sets/src/mage/cards/w/WizardsOfThay.java
@@ -0,0 +1,58 @@
+package mage.cards.w;
+
+import mage.MageInt;
+import mage.abilities.common.SimpleStaticAbility;
+import mage.abilities.effects.common.continuous.CastAsThoughItHadFlashAllEffect;
+import mage.abilities.effects.common.cost.SpellsCostReductionControllerEffect;
+import mage.abilities.keyword.MyriadAbility;
+import mage.cards.CardImpl;
+import mage.cards.CardSetInfo;
+import mage.constants.CardType;
+import mage.constants.Duration;
+import mage.constants.SubType;
+import mage.filter.FilterCard;
+import mage.filter.common.FilterInstantOrSorceryCard;
+
+import java.util.UUID;
+
+/**
+ * @author TheElk801
+ */
+public final class WizardsOfThay extends CardImpl {
+
+    private static final FilterCard filter = new FilterInstantOrSorceryCard("Instant and sorcery spells");
+    private static final FilterCard filter2 = new FilterCard("sorcery spells");
+
+    static {
+        filter2.add(CardType.SORCERY.getPredicate());
+    }
+
+    public WizardsOfThay(UUID ownerId, CardSetInfo setInfo) {
+        super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{U}");
+
+        this.subtype.add(SubType.HUMAN);
+        this.subtype.add(SubType.WIZARD);
+        this.power = new MageInt(3);
+        this.toughness = new MageInt(3);
+
+        // Myriad
+        this.addAbility(new MyriadAbility());
+
+        // Instant and sorcery spells you cast cost {1} less to cast.
+        this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1)));
+
+        // You may cast sorcery spells as though they had flash.
+        this.addAbility(new SimpleStaticAbility(
+                new CastAsThoughItHadFlashAllEffect(Duration.WhileOnBattlefield, filter2)
+        ));
+    }
+
+    private WizardsOfThay(final WizardsOfThay card) {
+        super(card);
+    }
+
+    @Override
+    public WizardsOfThay copy() {
+        return new WizardsOfThay(this);
+    }
+}
diff --git a/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java b/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java
index 22ede80286..f9a7b0ab70 100644
--- a/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java
+++ b/Mage.Sets/src/mage/sets/CommanderLegendsBattleForBaldursGate.java
@@ -581,6 +581,7 @@ public final class CommanderLegendsBattleForBaldursGate extends ExpansionSet {
         cards.add(new SetCardInfo("Wilson, Refined Grizzly", 261, Rarity.UNCOMMON, mage.cards.w.WilsonRefinedGrizzly.class));
         cards.add(new SetCardInfo("Windbrisk Heights", 930, Rarity.RARE, mage.cards.w.WindbriskHeights.class));
         cards.add(new SetCardInfo("Winter Eladrin", 104, Rarity.COMMON, mage.cards.w.WinterEladrin.class));
+        cards.add(new SetCardInfo("Wizards of Thay", 105, Rarity.RARE, mage.cards.w.WizardsOfThay.class));
         cards.add(new SetCardInfo("Woe Strider", 774, Rarity.RARE, mage.cards.w.WoeStrider.class));
         cards.add(new SetCardInfo("Wyll, Blade of Frontiers", 208, Rarity.RARE, mage.cards.w.WyllBladeOfFrontiers.class));
         cards.add(new SetCardInfo("Wyrm's Crossing Patrol", 51, Rarity.COMMON, mage.cards.w.WyrmsCrossingPatrol.class));