From ae8c5be578b698b98bee82d7dcf5264bdb519be0 Mon Sep 17 00:00:00 2001
From: Evan Kranzler <theelk801@gmail.com>
Date: Thu, 20 Jun 2019 12:55:50 -0400
Subject: [PATCH] Implemented Ogre Siegebreaker

---
 .../src/mage/cards/o/OgreSiegebreaker.java    | 53 +++++++++++++++++++
 Mage.Sets/src/mage/sets/CoreSet2020.java      |  1 +
 2 files changed, 54 insertions(+)
 create mode 100644 Mage.Sets/src/mage/cards/o/OgreSiegebreaker.java

diff --git a/Mage.Sets/src/mage/cards/o/OgreSiegebreaker.java b/Mage.Sets/src/mage/cards/o/OgreSiegebreaker.java
new file mode 100644
index 0000000000..5d1eadf111
--- /dev/null
+++ b/Mage.Sets/src/mage/cards/o/OgreSiegebreaker.java
@@ -0,0 +1,53 @@
+package mage.cards.o;
+
+import mage.MageInt;
+import mage.abilities.Ability;
+import mage.abilities.common.SimpleActivatedAbility;
+import mage.abilities.costs.mana.ManaCostsImpl;
+import mage.abilities.effects.common.DestroyTargetEffect;
+import mage.cards.CardImpl;
+import mage.cards.CardSetInfo;
+import mage.constants.CardType;
+import mage.constants.SubType;
+import mage.filter.FilterPermanent;
+import mage.filter.common.FilterCreaturePermanent;
+import mage.filter.predicate.permanent.WasDealtDamageThisTurnPredicate;
+import mage.target.TargetPermanent;
+
+import java.util.UUID;
+
+/**
+ * @author TheElk801
+ */
+public final class OgreSiegebreaker extends CardImpl {
+
+    private static final FilterPermanent filter
+            = new FilterCreaturePermanent("creature that was dealt damage this turn");
+
+    static {
+        filter.add(new WasDealtDamageThisTurnPredicate());
+    }
+
+    public OgreSiegebreaker(UUID ownerId, CardSetInfo setInfo) {
+        super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{B}{R}");
+
+        this.subtype.add(SubType.OGRE);
+        this.subtype.add(SubType.BERSERKER);
+        this.power = new MageInt(4);
+        this.toughness = new MageInt(3);
+
+        // {2}{B}{R}: Destroy target creature that was dealt damage this turn.
+        Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl("{2}{B}{R}"));
+        ability.addTarget(new TargetPermanent(filter));
+        this.addAbility(ability);
+    }
+
+    private OgreSiegebreaker(final OgreSiegebreaker card) {
+        super(card);
+    }
+
+    @Override
+    public OgreSiegebreaker copy() {
+        return new OgreSiegebreaker(this);
+    }
+}
diff --git a/Mage.Sets/src/mage/sets/CoreSet2020.java b/Mage.Sets/src/mage/sets/CoreSet2020.java
index a9ca37a829..485f03c9e1 100644
--- a/Mage.Sets/src/mage/sets/CoreSet2020.java
+++ b/Mage.Sets/src/mage/sets/CoreSet2020.java
@@ -77,6 +77,7 @@ public final class CoreSet2020 extends ExpansionSet {
         cards.add(new SetCardInfo("Moldervine Reclamation", 214, Rarity.UNCOMMON, mage.cards.m.MoldervineReclamation.class));
         cards.add(new SetCardInfo("Negate", 69, Rarity.COMMON, mage.cards.n.Negate.class));
         cards.add(new SetCardInfo("Octoprophet", 70, Rarity.COMMON, mage.cards.o.Octoprophet.class));
+        cards.add(new SetCardInfo("Ogre Siegebreaker", 215, Rarity.UNCOMMON, mage.cards.o.OgreSiegebreaker.class));
         cards.add(new SetCardInfo("Pacifism", 32, Rarity.COMMON, mage.cards.p.Pacifism.class));
         cards.add(new SetCardInfo("Planar Cleansing", 33, Rarity.RARE, mage.cards.p.PlanarCleansing.class));
         cards.add(new SetCardInfo("Pulse of Murasa", 189, Rarity.UNCOMMON, mage.cards.p.PulseOfMurasa.class));