diff --git a/Mage.Sets/src/mage/cards/c/ClockworkServant.java b/Mage.Sets/src/mage/cards/c/ClockworkServant.java
new file mode 100644
index 00000000000..7e9d9496308
--- /dev/null
+++ b/Mage.Sets/src/mage/cards/c/ClockworkServant.java
@@ -0,0 +1,59 @@
+package mage.cards.c;
+
+import mage.MageInt;
+import mage.abilities.Ability;
+import mage.abilities.common.EntersBattlefieldTriggeredAbility;
+import mage.abilities.condition.Condition;
+import mage.abilities.condition.common.AdamantCondition;
+import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
+import mage.abilities.effects.common.DrawCardSourceControllerEffect;
+import mage.cards.CardImpl;
+import mage.cards.CardSetInfo;
+import mage.constants.CardType;
+import mage.constants.SubType;
+import mage.game.Game;
+import mage.watchers.common.ManaSpentToCastWatcher;
+
+import java.util.Arrays;
+import java.util.UUID;
+
+/**
+ * @author TheElk801
+ */
+public final class ClockworkServant extends CardImpl {
+
+ public ClockworkServant(UUID ownerId, CardSetInfo setInfo) {
+ super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{3}");
+
+ this.subtype.add(SubType.GNOME);
+ this.power = new MageInt(2);
+ this.toughness = new MageInt(3);
+
+ // Adamant - When Clockwork Servant enters the battlefield, if at least three mana of the same color was spent to cast it, draw a card.
+ this.addAbility(new ConditionalInterveningIfTriggeredAbility(
+ new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1)),
+ ClockworkServantCondition.instance, "
Adamant — When {this} enters the battlefield, " +
+ "if at least three mana of the same color was spent to cast it, draw a card."
+ ), new ManaSpentToCastWatcher());
+ }
+
+ private ClockworkServant(final ClockworkServant card) {
+ super(card);
+ }
+
+ @Override
+ public ClockworkServant copy() {
+ return new ClockworkServant(this);
+ }
+}
+
+enum ClockworkServantCondition implements Condition {
+ instance;
+
+ @Override
+ public boolean apply(Game game, Ability source) {
+ return Arrays
+ .stream(AdamantCondition.values())
+ .anyMatch(adamantCondition -> adamantCondition.apply(game, source));
+ }
+}
\ No newline at end of file
diff --git a/Mage.Sets/src/mage/sets/ThroneOfEldraine.java b/Mage.Sets/src/mage/sets/ThroneOfEldraine.java
index c5b8c508190..1276b76e948 100644
--- a/Mage.Sets/src/mage/sets/ThroneOfEldraine.java
+++ b/Mage.Sets/src/mage/sets/ThroneOfEldraine.java
@@ -52,6 +52,7 @@ public final class ThroneOfEldraine extends ExpansionSet {
cards.add(new SetCardInfo("Chulane, Teller of Tales", 326, Rarity.MYTHIC, mage.cards.c.ChulaneTellerOfTales.class));
cards.add(new SetCardInfo("Clackbridge Troll", 84, Rarity.RARE, mage.cards.c.ClackbridgeTroll.class));
cards.add(new SetCardInfo("Claim the Firstborn", 118, Rarity.UNCOMMON, mage.cards.c.ClaimTheFirstborn.class));
+ cards.add(new SetCardInfo("Clockwork Servant", 216, Rarity.UNCOMMON, mage.cards.c.ClockworkServant.class));
cards.add(new SetCardInfo("Command Tower", 333, Rarity.COMMON, mage.cards.c.CommandTower.class));
cards.add(new SetCardInfo("Corridor Monitor", 41, Rarity.COMMON, mage.cards.c.CorridorMonitor.class));
cards.add(new SetCardInfo("Crystal Slipper", 119, Rarity.COMMON, mage.cards.c.CrystalSlipper.class));
diff --git a/Mage/src/main/java/mage/abilities/condition/common/AdamantCondition.java b/Mage/src/main/java/mage/abilities/condition/common/AdamantCondition.java
index 63b511921e6..ae6fb8f11f4 100644
--- a/Mage/src/main/java/mage/abilities/condition/common/AdamantCondition.java
+++ b/Mage/src/main/java/mage/abilities/condition/common/AdamantCondition.java
@@ -11,8 +11,6 @@ import mage.watchers.common.ManaSpentToCastWatcher;
/**
* @author TheElk801
*/
-
-
public enum AdamantCondition implements Condition {
WHITE(ColoredManaSymbol.W),
BLUE(ColoredManaSymbol.U),
@@ -20,7 +18,7 @@ public enum AdamantCondition implements Condition {
RED(ColoredManaSymbol.R),
GREEN(ColoredManaSymbol.G);
- protected ColoredManaSymbol coloredManaSymbol;
+ private final ColoredManaSymbol coloredManaSymbol;
private AdamantCondition(ColoredManaSymbol coloredManaSymbol) {
this.coloredManaSymbol = coloredManaSymbol;
@@ -29,7 +27,7 @@ public enum AdamantCondition implements Condition {
@Override
public boolean apply(Game game, Ability source) {
if (source.getAbilityType() == AbilityType.SPELL) {
- return (source.getManaCostsToPay().getPayment().getColor(coloredManaSymbol) > 0);
+ return source.getManaCostsToPay().getPayment().getColor(coloredManaSymbol) > 2;
}
ManaSpentToCastWatcher watcher = game.getState().getWatcher(ManaSpentToCastWatcher.class, source.getSourceId());
if (watcher == null) {