1
0
Fork 0
mirror of https://github.com/correl/mage.git synced 2025-04-10 17:00:08 -09:00

[40K] Implemented Tervigon

This commit is contained in:
Evan Kranzler 2022-09-15 08:12:22 -04:00
parent 99b99bb7db
commit 405a3b405e
5 changed files with 88 additions and 5 deletions
Mage.Sets/src/mage
Mage/src/main/java/mage/game/permanent/token

View file

@ -14,7 +14,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.*; import mage.constants.*;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.game.permanent.token.TyranidToken; import mage.game.permanent.token.Tyranid55Token;
import mage.target.common.TargetCardInHand; import mage.target.common.TargetCardInHand;
import java.util.UUID; import java.util.UUID;
@ -42,7 +42,7 @@ public final class OldOneEye extends CardImpl {
))); )));
// When Old One Eye enters the battlefield, create a 5/5 green Tyranid creature token. // When Old One Eye enters the battlefield, create a 5/5 green Tyranid creature token.
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new TyranidToken()))); this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new Tyranid55Token())));
// Fast Healing -- At the beginning of your precombat main phase, you may discard two cards. If you do, return Old One Eye from your graveyard to your hand. // Fast Healing -- At the beginning of your precombat main phase, you may discard two cards. If you do, return Old One Eye from your graveyard to your hand.
this.addAbility(new BeginningOfPreCombatMainTriggeredAbility( this.addAbility(new BeginningOfPreCombatMainTriggeredAbility(

View file

@ -0,0 +1,49 @@
package mage.cards.t;
import mage.MageInt;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.dynamicvalue.common.SavedDamageValue;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.keyword.RavenousAbility;
import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.game.permanent.token.TyranidToken;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class Tervigon extends CardImpl {
public Tervigon(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{X}{1}{G}");
this.subtype.add(SubType.TYRANID);
this.power = new MageInt(0);
this.toughness = new MageInt(0);
// Ravenous
this.addAbility(new RavenousAbility());
// Trample
this.addAbility(TrampleAbility.getInstance());
// Spawn Termagants -- Whenever Tervigon deals combat damage to a player, create that many 1/1 green Tyranid creature tokens.
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(
new CreateTokenEffect(new TyranidToken(), SavedDamageValue.MANY), false
).withFlavorWord("Spawn Termagants"));
}
private Tervigon(final Tervigon card) {
super(card);
}
@Override
public Tervigon copy() {
return new Tervigon(this);
}
}

View file

@ -104,6 +104,7 @@ public final class Warhammer40000 extends ExpansionSet {
cards.add(new SetCardInfo("Temple of Mystery", 299, Rarity.RARE, mage.cards.t.TempleOfMystery.class)); cards.add(new SetCardInfo("Temple of Mystery", 299, Rarity.RARE, mage.cards.t.TempleOfMystery.class));
cards.add(new SetCardInfo("Temple of the False God", 300, Rarity.UNCOMMON, mage.cards.t.TempleOfTheFalseGod.class)); cards.add(new SetCardInfo("Temple of the False God", 300, Rarity.UNCOMMON, mage.cards.t.TempleOfTheFalseGod.class));
cards.add(new SetCardInfo("Terramorphic Expanse", 301, Rarity.COMMON, mage.cards.t.TerramorphicExpanse.class)); cards.add(new SetCardInfo("Terramorphic Expanse", 301, Rarity.COMMON, mage.cards.t.TerramorphicExpanse.class));
cards.add(new SetCardInfo("Tervigon", 100, Rarity.RARE, mage.cards.t.Tervigon.class));
cards.add(new SetCardInfo("The Swarmlord", 4, Rarity.MYTHIC, mage.cards.t.TheSwarmlord.class)); cards.add(new SetCardInfo("The Swarmlord", 4, Rarity.MYTHIC, mage.cards.t.TheSwarmlord.class));
cards.add(new SetCardInfo("Thornwood Falls", 302, Rarity.COMMON, mage.cards.t.ThornwoodFalls.class)); cards.add(new SetCardInfo("Thornwood Falls", 302, Rarity.COMMON, mage.cards.t.ThornwoodFalls.class));
cards.add(new SetCardInfo("Trygon Prime", 143, Rarity.UNCOMMON, mage.cards.t.TrygonPrime.class)); cards.add(new SetCardInfo("Trygon Prime", 143, Rarity.UNCOMMON, mage.cards.t.TrygonPrime.class));

View file

@ -0,0 +1,33 @@
package mage.game.permanent.token;
import mage.MageInt;
import mage.constants.CardType;
import mage.constants.SubType;
import java.util.Arrays;
/**
* @author TheElk801
*/
public final class Tyranid55Token extends TokenImpl {
public Tyranid55Token() {
super("Tyranid Token", "5/5 green Tyranid creature token");
cardType.add(CardType.CREATURE);
color.setGreen(true);
subtype.add(SubType.TYRANID);
power = new MageInt(5);
toughness = new MageInt(5);
availableImageSetCodes.addAll(Arrays.asList("40K"));
}
public Tyranid55Token(final Tyranid55Token token) {
super(token);
}
@Override
public Tyranid55Token copy() {
return new Tyranid55Token(this);
}
}

View file

@ -12,12 +12,12 @@ import java.util.Arrays;
public final class TyranidToken extends TokenImpl { public final class TyranidToken extends TokenImpl {
public TyranidToken() { public TyranidToken() {
super("Tyranid Token", "5/5 green Tyranid creature token"); super("Tyranid Token", "1/1 green Tyranid creature token");
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
color.setGreen(true); color.setGreen(true);
subtype.add(SubType.TYRANID); subtype.add(SubType.TYRANID);
power = new MageInt(5); power = new MageInt(1);
toughness = new MageInt(5); toughness = new MageInt(1);
availableImageSetCodes.addAll(Arrays.asList("40K")); availableImageSetCodes.addAll(Arrays.asList("40K"));
} }