Skip to content

Commit

Permalink
[DFT] Implement Aatchik, Emerald Radian (#13254)
Browse files Browse the repository at this point in the history
* [DSK] Implement Kaito, Bane of Monsters

* add author to emblem

* Fixes for review

* Implement Aatchik

* Remove extra Kaito line

* back out changes

* Changes for PR

---------

Co-authored-by: Evan Kranzler <[email protected]>
  • Loading branch information
jackd149 and theelk801 authored Jan 24, 2025
1 parent f669bdd commit 86df1d1
Show file tree
Hide file tree
Showing 2 changed files with 65 additions and 0 deletions.
64 changes: 64 additions & 0 deletions Mage.Sets/src/mage/cards/a/AatchikEmeraldRadian.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package mage.cards.a;

import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.DiesCreatureTriggeredAbility;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.dynamicvalue.common.CardsInControllerGraveyardCount;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.LoseLifeOpponentsEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SuperType;
import mage.counters.CounterType;
import mage.filter.FilterCard;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.AnotherPredicate;
import mage.game.permanent.token.InsectToken;
import mage.constants.SubType;

/**
*
* @author jackd149
*/
public final class AatchikEmeraldRadian extends CardImpl {
private static final FilterCard filter1 = new FilterCard("artifact and/or creature card");
private static final FilterControlledPermanent filter2 = new FilterControlledPermanent(SubType.INSECT, "another Insect you control");
private static final CardsInControllerGraveyardCount count = new CardsInControllerGraveyardCount(filter1);

static {
filter1.add(Predicates.or(CardType.ARTIFACT.getPredicate(), CardType.CREATURE.getPredicate()));
filter2.add(AnotherPredicate.instance);
}

public AatchikEmeraldRadian(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}{B}{G}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.INSECT);
this.subtype.add(SubType.DRUID);

this.power = new MageInt(3);
this.toughness = new MageInt(3);

// When Aatchik, Emerald Radian enters, create a 1/1 green Insect creature token for each actifact and/or creature card in your graveyard.
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new InsectToken(), count)));

// Whenever another insect you control dies, put a +1/+1 counter on Aatchik. Each opponent loses 1 life.
DiesCreatureTriggeredAbility otherInsectDiesAbility = new DiesCreatureTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false, filter2);
otherInsectDiesAbility.addEffect(new LoseLifeOpponentsEffect(1));
this.addAbility(otherInsectDiesAbility);
}

private AatchikEmeraldRadian(final AatchikEmeraldRadian card) {
super(card);
}

@Override
public AatchikEmeraldRadian copy() {
return new AatchikEmeraldRadian(this);
}

}
1 change: 1 addition & 0 deletions Mage.Sets/src/mage/sets/Aetherdrift.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ private Aetherdrift() {
this.hasBasicLands = true;
this.hasBoosters = false; // temporary

cards.add(new SetCardInfo("Aatchik, Emerald Radian", 187, Rarity.RARE, mage.cards.a.AatchikEmeraldRadian.class));
cards.add(new SetCardInfo("Aether Syphon", 38, Rarity.UNCOMMON, mage.cards.a.AetherSyphon.class));
cards.add(new SetCardInfo("Air Response Unit", 1, Rarity.UNCOMMON, mage.cards.a.AirResponseUnit.class));
cards.add(new SetCardInfo("Amonkhet Raceway", 248, Rarity.UNCOMMON, mage.cards.a.AmonkhetRaceway.class));
Expand Down

0 comments on commit 86df1d1

Please sign in to comment.