[TLE] Implement Elephant-Mandrill

This commit is contained in:
theelk801 2025-11-14 10:54:08 -05:00
parent d10863b844
commit 80f604943d
2 changed files with 70 additions and 0 deletions

View file

@ -0,0 +1,69 @@
package mage.cards.e;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
import mage.abilities.effects.common.CreateTokenAllEffect;
import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.hint.Hint;
import mage.abilities.hint.ValueHint;
import mage.abilities.keyword.ReachAbility;
import mage.abilities.triggers.BeginningOfCombatTriggeredAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterArtifactPermanent;
import mage.game.permanent.token.FoodToken;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class ElephantMandrill extends CardImpl {
private static final FilterPermanent filter = new FilterArtifactPermanent("artifact your opponents control");
static {
filter.add(TargetController.OPPONENT.getOwnerPredicate());
}
private static final DynamicValue xValue = new PermanentsOnBattlefieldCount(filter);
private static final Hint hint = new ValueHint("Artifacts your opponents control", xValue);
public ElephantMandrill(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}");
this.subtype.add(SubType.ELEPHANT);
this.subtype.add(SubType.MONKEY);
this.power = new MageInt(3);
this.toughness = new MageInt(2);
// Reach
this.addAbility(ReachAbility.getInstance());
// When this creature enters, each player creates a Food token.
this.addAbility(new EntersBattlefieldTriggeredAbility(
new CreateTokenAllEffect(new FoodToken(), TargetController.EACH_PLAYER)
));
// At the beginning of combat on your turn, this creature gets +1/+1 until end of turn for each artifact your opponents control.
this.addAbility(new BeginningOfCombatTriggeredAbility(
new BoostSourceEffect(xValue, xValue, Duration.EndOfTurn)
).addHint(hint));
}
private ElephantMandrill(final ElephantMandrill card) {
super(card);
}
@Override
public ElephantMandrill copy() {
return new ElephantMandrill(this);
}
}

View file

@ -104,6 +104,7 @@ public final class AvatarTheLastAirbenderEternal extends ExpansionSet {
cards.add(new SetCardInfo("Eel-Hounds", 250, Rarity.UNCOMMON, mage.cards.e.EelHounds.class));
cards.add(new SetCardInfo("Eladamri's Call", 48, Rarity.MYTHIC, mage.cards.e.EladamrisCall.class));
cards.add(new SetCardInfo("Elemental Bond", 40, Rarity.MYTHIC, mage.cards.e.ElementalBond.class));
cards.add(new SetCardInfo("Elephant-Mandrill", 138, Rarity.UNCOMMON, mage.cards.e.ElephantMandrill.class));
cards.add(new SetCardInfo("Elephant-Rat", 228, Rarity.COMMON, mage.cards.e.ElephantRat.class));
cards.add(new SetCardInfo("Empty City Ruse", 3, Rarity.MYTHIC, mage.cards.e.EmptyCityRuse.class));
cards.add(new SetCardInfo("Enlightened Tutor", 305, Rarity.RARE, mage.cards.e.EnlightenedTutor.class));