forked from External/mage
[MKM] Implement Hedge Whisperer (#11857)
This commit is contained in:
parent
98fef0db10
commit
6ead910cfc
2 changed files with 73 additions and 0 deletions
72
Mage.Sets/src/mage/cards/h/HedgeWhisperer.java
Normal file
72
Mage.Sets/src/mage/cards/h/HedgeWhisperer.java
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
package mage.cards.h;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.ActivateAsSorceryActivatedAbility;
|
||||
import mage.abilities.common.SkipUntapOptionalAbility;
|
||||
import mage.abilities.condition.common.SourceTappedCondition;
|
||||
import mage.abilities.costs.common.CollectEvidenceCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.effects.common.continuous.BecomesCreatureTargetEffect;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.game.permanent.token.custom.CreatureToken;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author Cguy7777
|
||||
*/
|
||||
public final class HedgeWhisperer extends CardImpl {
|
||||
|
||||
public HedgeWhisperer(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{G}");
|
||||
|
||||
this.subtype.add(SubType.ELF);
|
||||
this.subtype.add(SubType.DRUID);
|
||||
this.subtype.add(SubType.DETECTIVE);
|
||||
this.power = new MageInt(0);
|
||||
this.toughness = new MageInt(3);
|
||||
|
||||
// You may choose not to untap Hedge Whisperer during your untap step.
|
||||
this.addAbility(new SkipUntapOptionalAbility());
|
||||
|
||||
// {3}{G}, {T}, Collect evidence 4: Target land you control becomes a 5/5 green Plant Boar creature with haste
|
||||
// for as long as Hedge Whisperer remains tapped. It's still a land. Activate only as a sorcery.
|
||||
BecomesCreatureTargetEffect effect = new BecomesCreatureTargetEffect(
|
||||
new CreatureToken(5, 5, "5/5 green Plant Boar creature with haste")
|
||||
.withColor("G")
|
||||
.withSubType(SubType.PLANT)
|
||||
.withSubType(SubType.BOAR)
|
||||
.withAbility(HasteAbility.getInstance()),
|
||||
false, true, Duration.Custom);
|
||||
|
||||
Ability ability = new ActivateAsSorceryActivatedAbility(
|
||||
new ConditionalContinuousEffect(
|
||||
effect,
|
||||
SourceTappedCondition.TAPPED,
|
||||
"target land you control becomes a 5/5 green Plant Boar creature with haste for as long as {this} remains tapped. It's still a land"),
|
||||
new ManaCostsImpl<>("{3}{G}"));
|
||||
ability.addCost(new TapSourceCost());
|
||||
ability.addCost(new CollectEvidenceCost(4));
|
||||
ability.addTarget(new TargetPermanent(StaticFilters.FILTER_CONTROLLED_PERMANENT_LAND));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
private HedgeWhisperer(final HedgeWhisperer card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HedgeWhisperer copy() {
|
||||
return new HedgeWhisperer(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -127,6 +127,7 @@ public final class MurdersAtKarlovManor extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Hard-Hitting Question", 164, Rarity.UNCOMMON, mage.cards.h.HardHittingQuestion.class));
|
||||
cards.add(new SetCardInfo("Harried Dronesmith", 131, Rarity.UNCOMMON, mage.cards.h.HarriedDronesmith.class));
|
||||
cards.add(new SetCardInfo("Hedge Maze", 262, Rarity.RARE, mage.cards.h.HedgeMaze.class));
|
||||
cards.add(new SetCardInfo("Hedge Whisperer", 165, Rarity.UNCOMMON, mage.cards.h.HedgeWhisperer.class));
|
||||
cards.add(new SetCardInfo("Homicide Investigator", 86, Rarity.RARE, mage.cards.h.HomicideInvestigator.class));
|
||||
cards.add(new SetCardInfo("Hotshot Investigators", 60, Rarity.COMMON, mage.cards.h.HotshotInvestigators.class));
|
||||
cards.add(new SetCardInfo("Hunted Bonebrute", 87, Rarity.RARE, mage.cards.h.HuntedBonebrute.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue