[EOE] Implement Eumidian Hatchery

This commit is contained in:
theelk801 2025-07-12 11:24:27 -04:00
parent c0ed0197ad
commit 2b73fc9487
2 changed files with 52 additions and 0 deletions

View file

@ -0,0 +1,50 @@
package mage.cards.e;
import mage.abilities.Ability;
import mage.abilities.common.PutIntoGraveFromBattlefieldSourceTriggeredAbility;
import mage.abilities.costs.common.PayLifeCost;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.CountersSourceCount;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.counters.CounterType;
import mage.game.permanent.token.XiraBlackInsectToken;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class EumidianHatchery extends CardImpl {
private static final DynamicValue xValue = new CountersSourceCount(CounterType.HATCHLING);
public EumidianHatchery(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
// {T}, Pay 1 life: Add {B}. Put a hatchling counter on this land.
Ability ability = new BlackManaAbility();
ability.addCost(new PayLifeCost(1));
ability.addEffect(new AddCountersSourceEffect(CounterType.HATCHLING.createInstance()));
this.addAbility(ability);
// When this land is put into a graveyard from the battlefield, for each hatchling counter on it, create a 1/1 black Insect creature token with flying.
this.addAbility(new PutIntoGraveFromBattlefieldSourceTriggeredAbility(
new CreateTokenEffect(new XiraBlackInsectToken(), xValue)
.setText("for each hatchling counter on it, create a 1/1 black Insect creature token with flying")
));
}
private EumidianHatchery(final EumidianHatchery card) {
super(card);
}
@Override
public EumidianHatchery copy() {
return new EumidianHatchery(this);
}
}

View file

@ -64,6 +64,8 @@ public final class EdgeOfEternitiesCommander extends ExpansionSet {
cards.add(new SetCardInfo("Escape to the Wilds", 115, Rarity.RARE, mage.cards.e.EscapeToTheWilds.class));
cards.add(new SetCardInfo("Etched Oracle", 136, Rarity.UNCOMMON, mage.cards.e.EtchedOracle.class));
cards.add(new SetCardInfo("Etherium Sculptor", 72, Rarity.COMMON, mage.cards.e.EtheriumSculptor.class));
cards.add(new SetCardInfo("Eumidian Hatchery", 20, Rarity.RARE, mage.cards.e.EumidianHatchery.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Eumidian Hatchery", 40, Rarity.RARE, mage.cards.e.EumidianHatchery.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Everflowing Chalice", 137, Rarity.UNCOMMON, mage.cards.e.EverflowingChalice.class));
cards.add(new SetCardInfo("Evolving Wilds", 158, Rarity.COMMON, mage.cards.e.EvolvingWilds.class));
cards.add(new SetCardInfo("Exotic Orchard", 159, Rarity.RARE, mage.cards.e.ExoticOrchard.class));