[DSK] Implement Hushwood Verge

This commit is contained in:
theelk801 2024-09-04 11:09:54 -04:00
parent c7ed33f145
commit f2251bf15f
3 changed files with 62 additions and 2 deletions

View file

@ -24,7 +24,7 @@ import java.util.UUID;
*/ */
public final class GloomlakeVerge extends CardImpl { public final class GloomlakeVerge extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("you control a Island or a Swamp"); private static final FilterPermanent filter = new FilterPermanent("you control an Island or a Swamp");
static { static {
filter.add(Predicates.or( filter.add(Predicates.or(
@ -34,7 +34,7 @@ public final class GloomlakeVerge extends CardImpl {
} }
private static final Condition condition = new PermanentsOnTheBattlefieldCondition(filter); private static final Condition condition = new PermanentsOnTheBattlefieldCondition(filter);
private static final Hint hint = new ConditionHint(condition, "You control a Island or a Swamp"); private static final Hint hint = new ConditionHint(condition, "You control an Island or a Swamp");
public GloomlakeVerge(UUID ownerId, CardSetInfo setInfo) { public GloomlakeVerge(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");

View file

@ -0,0 +1,59 @@
package mage.cards.h;
import mage.Mana;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.effects.mana.BasicManaEffect;
import mage.abilities.hint.ConditionHint;
import mage.abilities.hint.Hint;
import mage.abilities.mana.ActivateIfConditionManaAbility;
import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.predicate.Predicates;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class HushwoodVerge extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("you control a Forest or a Plains");
static {
filter.add(Predicates.or(
SubType.FOREST.getPredicate(),
SubType.PLAINS.getPredicate()
));
}
private static final Condition condition = new PermanentsOnTheBattlefieldCondition(filter);
private static final Hint hint = new ConditionHint(condition, "You control a Forest or a Plains");
public HushwoodVerge(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
// {T}: Add {G}.
this.addAbility(new GreenManaAbility());
// {T}: Add {W}. Activate only if you control a Forest or a Plains.
this.addAbility(new ActivateIfConditionManaAbility(
Zone.BATTLEFIELD, new BasicManaEffect(Mana.WhiteMana(1)), new TapSourceCost(), condition
).addHint(hint));
}
private HushwoodVerge(final HushwoodVerge card) {
super(card);
}
@Override
public HushwoodVerge copy() {
return new HushwoodVerge(this);
}
}

View file

@ -46,6 +46,7 @@ public final class DuskmournHouseOfHorror extends ExpansionSet {
cards.add(new SetCardInfo("Glimmer Seeker", 14, Rarity.UNCOMMON, mage.cards.g.GlimmerSeeker.class)); cards.add(new SetCardInfo("Glimmer Seeker", 14, Rarity.UNCOMMON, mage.cards.g.GlimmerSeeker.class));
cards.add(new SetCardInfo("Gloomlake Verge", 260, Rarity.RARE, mage.cards.g.GloomlakeVerge.class)); cards.add(new SetCardInfo("Gloomlake Verge", 260, Rarity.RARE, mage.cards.g.GloomlakeVerge.class));
cards.add(new SetCardInfo("Grasping Longneck", 180, Rarity.COMMON, mage.cards.g.GraspingLongneck.class)); cards.add(new SetCardInfo("Grasping Longneck", 180, Rarity.COMMON, mage.cards.g.GraspingLongneck.class));
cards.add(new SetCardInfo("Hushwood Verge", 261, Rarity.RARE, mage.cards.h.HushwoodVerge.class));
cards.add(new SetCardInfo("Island", 273, Rarity.LAND, mage.cards.basiclands.Island.class, FULL_ART_BFZ_VARIOUS)); cards.add(new SetCardInfo("Island", 273, Rarity.LAND, mage.cards.basiclands.Island.class, FULL_ART_BFZ_VARIOUS));
cards.add(new SetCardInfo("Lakeside Shack", 262, Rarity.COMMON, mage.cards.l.LakesideShack.class)); cards.add(new SetCardInfo("Lakeside Shack", 262, Rarity.COMMON, mage.cards.l.LakesideShack.class));
cards.add(new SetCardInfo("Leyline of Hope", 18, Rarity.RARE, mage.cards.l.LeylineOfHope.class)); cards.add(new SetCardInfo("Leyline of Hope", 18, Rarity.RARE, mage.cards.l.LeylineOfHope.class));