Implement [REX] Compy Swarm (#12101)

This commit is contained in:
jimga150 2024-04-10 23:43:37 -04:00 committed by GitHub
parent 444a15df5d
commit 51b1ab4cb6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 47 additions and 1 deletions

View file

@ -0,0 +1,44 @@
package mage.cards.c;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.BeginningOfYourEndStepTriggeredAbility;
import mage.abilities.condition.common.MorbidCondition;
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
import mage.abilities.effects.CreateTokenCopySourceEffect;
import mage.abilities.hint.common.MorbidHint;
import mage.constants.SubType;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
/**
*
* @author jimga150
*/
public final class CompySwarm extends CardImpl {
public CompySwarm(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{B}{G}");
this.subtype.add(SubType.DINOSAUR);
this.power = new MageInt(2);
this.toughness = new MageInt(2);
// At the beginning of your end step, if a creature died this turn, create a tapped token that's a copy of Compy Swarm.
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
new BeginningOfYourEndStepTriggeredAbility(new CreateTokenCopySourceEffect(1, true), false),
MorbidCondition.instance,
"At the beginning of your end step, if a creature died this turn, create a tapped token that's a copy of {this}."
).addHint(MorbidHint.instance));
}
private CompySwarm(final CompySwarm card) {
super(card);
}
@Override
public CompySwarm copy() {
return new CompySwarm(this);
}
}

View file

@ -22,6 +22,7 @@ public final class JurassicWorldCollection extends ExpansionSet {
cards.add(new SetCardInfo("Command Tower", 26, Rarity.COMMON, mage.cards.c.CommandTower.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Command Tower", "26b", Rarity.COMMON, mage.cards.c.CommandTower.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Compy Swarm", 9, Rarity.RARE, mage.cards.c.CompySwarm.class));
cards.add(new SetCardInfo("Cresting Mosasaurus", 2, Rarity.RARE, mage.cards.c.CrestingMosasaurus.class));
cards.add(new SetCardInfo("Dino DNA", 20, Rarity.RARE, mage.cards.d.DinoDNA.class));
cards.add(new SetCardInfo("Don't Move", 1, Rarity.RARE, mage.cards.d.DontMove.class));

View file

@ -27,7 +27,8 @@ public class CreateTokenCopySourceEffect extends OneShotEffect {
super(Outcome.PutCreatureInPlay);
this.number = copies;
this.tapped = tapped;
staticText = "create a " + (tapped ? "tapped " : "") + "token that's a copy of {this}";
staticText = "create " + (copies > 1 ? copies : "a") + " " + (tapped ? "tapped " : "")
+ (copies > 1 ? "tokens that are" : "token that's") + " a copy of {this}";
}
protected CreateTokenCopySourceEffect(final CreateTokenCopySourceEffect effect) {