From 0de4cf28f5251780f65cdabac1360813209d2bac Mon Sep 17 00:00:00 2001
From: Evan Kranzler <theelk801@gmail.com>
Date: Fri, 31 May 2019 20:25:57 -0400
Subject: [PATCH] Implemented Trustworthy Scout

---
 .../src/mage/cards/t/TrustworthyScout.java    | 57 +++++++++++++++++++
 Mage.Sets/src/mage/sets/ModernHorizons.java   |  1 +
 2 files changed, 58 insertions(+)
 create mode 100644 Mage.Sets/src/mage/cards/t/TrustworthyScout.java

diff --git a/Mage.Sets/src/mage/cards/t/TrustworthyScout.java b/Mage.Sets/src/mage/cards/t/TrustworthyScout.java
new file mode 100644
index 0000000000..10474a88bb
--- /dev/null
+++ b/Mage.Sets/src/mage/cards/t/TrustworthyScout.java
@@ -0,0 +1,57 @@
+package mage.cards.t;
+
+import mage.MageInt;
+import mage.abilities.Ability;
+import mage.abilities.common.SimpleActivatedAbility;
+import mage.abilities.costs.common.ExileSourceFromGraveCost;
+import mage.abilities.costs.mana.ManaCostsImpl;
+import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect;
+import mage.cards.CardImpl;
+import mage.cards.CardSetInfo;
+import mage.constants.CardType;
+import mage.constants.SubType;
+import mage.constants.Zone;
+import mage.filter.FilterCard;
+import mage.filter.predicate.mageobject.NamePredicate;
+import mage.target.common.TargetCardInLibrary;
+
+import java.util.UUID;
+
+/**
+ * @author TheElk801
+ */
+public final class TrustworthyScout extends CardImpl {
+
+    private static final FilterCard filter = new FilterCard("card named Trustworthy Scout");
+
+    static {
+        filter.add(new NamePredicate("Trustworthy Scout"));
+    }
+
+    public TrustworthyScout(UUID ownerId, CardSetInfo setInfo) {
+        super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}");
+
+        this.subtype.add(SubType.HUMAN);
+        this.subtype.add(SubType.SCOUT);
+        this.power = new MageInt(2);
+        this.toughness = new MageInt(2);
+
+        // {1}{W}, Exile Trustworthy Scout from your graveyard: Search your library for a card named Trustworthy Scout, reveal it, put it into your hand, then shuffle your library.
+        Ability ability = new SimpleActivatedAbility(
+                Zone.GRAVEYARD,
+                new SearchLibraryPutInHandEffect(
+                        new TargetCardInLibrary(filter), true
+                ), new ManaCostsImpl("{1}{W}"));
+        ability.addCost(new ExileSourceFromGraveCost());
+        this.addAbility(ability);
+    }
+
+    private TrustworthyScout(final TrustworthyScout card) {
+        super(card);
+    }
+
+    @Override
+    public TrustworthyScout copy() {
+        return new TrustworthyScout(this);
+    }
+}
diff --git a/Mage.Sets/src/mage/sets/ModernHorizons.java b/Mage.Sets/src/mage/sets/ModernHorizons.java
index 8e67c4e301..582157e255 100644
--- a/Mage.Sets/src/mage/sets/ModernHorizons.java
+++ b/Mage.Sets/src/mage/sets/ModernHorizons.java
@@ -216,6 +216,7 @@ public final class ModernHorizons extends ExpansionSet {
         cards.add(new SetCardInfo("Treetop Ambusher", 186, Rarity.COMMON, mage.cards.t.TreetopAmbusher.class));
         cards.add(new SetCardInfo("Tribute Mage", 73, Rarity.UNCOMMON, mage.cards.t.TributeMage.class));
         cards.add(new SetCardInfo("Trumpeting Herd", 187, Rarity.COMMON, mage.cards.t.TrumpetingHerd.class));
+        cards.add(new SetCardInfo("Trustworthy Scout", 33, Rarity.COMMON, mage.cards.t.TrustworthyScout.class));
         cards.add(new SetCardInfo("Twin-Silk Spider", 188, Rarity.COMMON, mage.cards.t.TwinSilkSpider.class));
         cards.add(new SetCardInfo("Twisted Reflection", 74, Rarity.UNCOMMON, mage.cards.t.TwistedReflection.class));
         cards.add(new SetCardInfo("Umezawa's Charm", 111, Rarity.COMMON, mage.cards.u.UmezawasCharm.class));