diff --git a/Mage.Sets/src/mage/cards/w/Wrench.java b/Mage.Sets/src/mage/cards/w/Wrench.java new file mode 100644 index 00000000000..09190d86993 --- /dev/null +++ b/Mage.Sets/src/mage/cards/w/Wrench.java @@ -0,0 +1,64 @@ +package mage.cards.w; + +import mage.abilities.Ability; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.costs.common.TapSourceCost; +import mage.abilities.costs.mana.GenericManaCost; +import mage.abilities.effects.common.TapTargetEffect; +import mage.abilities.effects.common.continuous.BoostEquippedEffect; +import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect; +import mage.abilities.keyword.EquipAbility; +import mage.abilities.keyword.VigilanceAbility; +import mage.abilities.token.ClueAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.AttachmentType; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.SubType; +import mage.target.common.TargetControlledCreaturePermanent; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; + +/** + * @author Cguy7777 + */ +public final class Wrench extends CardImpl { + + public Wrench(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{W}"); + + this.subtype.add(SubType.CLUE); + this.subtype.add(SubType.EQUIPMENT); + + // Equipped creature gets +1/+1 and has vigilance and "{3}, {T}: Tap target creature." + Ability boostAbility = new SimpleStaticAbility(new BoostEquippedEffect(1, 1)); + boostAbility.addEffect(new GainAbilityAttachedEffect(VigilanceAbility.getInstance(), AttachmentType.EQUIPMENT) + .setText("and has vigilance")); + + SimpleActivatedAbility tapAbility = new SimpleActivatedAbility(new TapTargetEffect(), new GenericManaCost(3)); + tapAbility.addCost(new TapSourceCost()); + tapAbility.addTarget(new TargetCreaturePermanent()); + boostAbility.addEffect(new GainAbilityAttachedEffect(tapAbility, AttachmentType.EQUIPMENT) + .setText("and \"{3}, {T}: Tap target creature.\"")); + + this.addAbility(boostAbility); + + // {2}, Sacrifice Wrench: Draw a card. + this.addAbility(new ClueAbility(true)); + + // Equip {2} + this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false)); + } + + private Wrench(final Wrench card) { + super(card); + } + + @Override + public Wrench copy() { + return new Wrench(this); + } +} diff --git a/Mage.Sets/src/mage/sets/RavnicaClueEdition.java b/Mage.Sets/src/mage/sets/RavnicaClueEdition.java index 115a03abc66..e7cf57754e9 100644 --- a/Mage.Sets/src/mage/sets/RavnicaClueEdition.java +++ b/Mage.Sets/src/mage/sets/RavnicaClueEdition.java @@ -259,6 +259,7 @@ public final class RavnicaClueEdition extends ExpansionSet { cards.add(new SetCardInfo("Wildsize", 179, Rarity.COMMON, mage.cards.w.Wildsize.class)); cards.add(new SetCardInfo("Wildwood Patrol", 180, Rarity.COMMON, mage.cards.w.WildwoodPatrol.class)); cards.add(new SetCardInfo("Wojek Bodyguard", 154, Rarity.COMMON, mage.cards.w.WojekBodyguard.class)); + cards.add(new SetCardInfo("Wrench", 7, Rarity.UNCOMMON, mage.cards.w.Wrench.class)); cards.add(new SetCardInfo("Yeva's Forcemage", 181, Rarity.COMMON, mage.cards.y.YevasForcemage.class)); } }