implement [MH3] Voidpouncer

This commit is contained in:
Susucre 2024-06-01 16:17:15 +02:00
parent 085bca915f
commit 371ee07b34
3 changed files with 63 additions and 4 deletions

View file

@ -1,7 +1,6 @@
package mage.cards.a;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldAbility;
import mage.abilities.condition.common.KickedCondition;
@ -16,14 +15,15 @@ import mage.counters.CounterType;
import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class ArcticMerfolk extends CardImpl {
public ArcticMerfolk(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}");
this.subtype.add(SubType.MERFOLK);
this.power = new MageInt(1);
@ -37,7 +37,7 @@ public final class ArcticMerfolk extends CardImpl {
// If Arctic Merfolk was kicked, it enters the battlefield with a +1/+1 counter on it.
this.addAbility(new EntersBattlefieldAbility(
new AddCountersSourceEffect(CounterType.P1P1.createInstance()),
KickedCondition.ONCE,"If Arctic Merfolk was kicked, it enters the battlefield with a +1/+1 counter on it.",""));
KickedCondition.ONCE, "If {this} was kicked, it enters the battlefield with a +1/+1 counter on it.", ""));
}
private ArcticMerfolk(final ArcticMerfolk card) {

View file

@ -0,0 +1,58 @@
package mage.cards.v;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldAbility;
import mage.abilities.condition.common.KickedCondition;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.abilities.keyword.DevoidAbility;
import mage.abilities.keyword.HasteAbility;
import mage.abilities.keyword.KickerAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.counters.CounterType;
import java.util.UUID;
/**
* @author Susucr
*/
public final class Voidpouncer extends CardImpl {
public Voidpouncer(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}");
this.subtype.add(SubType.ELDRAZI);
this.power = new MageInt(3);
this.toughness = new MageInt(1);
// Devoid
this.addAbility(new DevoidAbility(this.color));
// Kicker {2}{C}
this.addAbility(new KickerAbility("{2}{C}"));
// If Voidpouncer was kicked, it enters the battlefield with two +1/+1 counters and a trample counter on it and with haste.
Ability ability = new EntersBattlefieldAbility(
new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)),
KickedCondition.ONCE,
"If {this} was kicked, it enters the battlefield with two +1/+1 counter and a trample counter on it and with haste.", ""
);
ability.addEffect(new AddCountersSourceEffect(CounterType.TRAMPLE.createInstance()));
ability.addEffect(new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.Custom));
this.addAbility(ability);
}
private Voidpouncer(final Voidpouncer card) {
super(card);
}
@Override
public Voidpouncer copy() {
return new Voidpouncer(this);
}
}

View file

@ -270,6 +270,7 @@ public final class ModernHorizons3 extends ExpansionSet {
cards.add(new SetCardInfo("Urza's Incubator", 297, Rarity.RARE, mage.cards.u.UrzasIncubator.class));
cards.add(new SetCardInfo("Utter Insignificance", 78, Rarity.COMMON, mage.cards.u.UtterInsignificance.class));
cards.add(new SetCardInfo("Victimize", 278, Rarity.UNCOMMON, mage.cards.v.Victimize.class));
cards.add(new SetCardInfo("Voidpouncer", 143, Rarity.COMMON, mage.cards.v.Voidpouncer.class));
cards.add(new SetCardInfo("Voltstorm Angel", 46, Rarity.UNCOMMON, mage.cards.v.VoltstormAngel.class));
cards.add(new SetCardInfo("Warped Tusker", 16, Rarity.COMMON, mage.cards.w.WarpedTusker.class));
cards.add(new SetCardInfo("Warren Soultrader", 110, Rarity.RARE, mage.cards.w.WarrenSoultrader.class));