Skip to content

Commit

Permalink
[FDN] Implement Guarded Heir
Browse files Browse the repository at this point in the history
  • Loading branch information
theelk801 committed Oct 31, 2024
1 parent 4c260d7 commit ca91c97
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 0 deletions.
43 changes: 43 additions & 0 deletions Mage.Sets/src/mage/cards/g/GuardedHeir.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package mage.cards.g;

import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.keyword.LifelinkAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.game.permanent.token.Knight33Token;

import java.util.UUID;

/**
* @author TheElk801
*/
public final class GuardedHeir extends CardImpl {

public GuardedHeir(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{5}{W}");

this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.NOBLE);
this.power = new MageInt(1);
this.toughness = new MageInt(1);

// Lifelink
this.addAbility(LifelinkAbility.getInstance());

// When this creature enters, create two 3/3 white Knight creature tokens.
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new Knight33Token(), 2)));
}

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

@Override
public GuardedHeir copy() {
return new GuardedHeir(this);
}
}
1 change: 1 addition & 0 deletions Mage.Sets/src/mage/sets/Foundations.java
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,7 @@ private Foundations() {
cards.add(new SetCardInfo("Grappling Kraken", 39, Rarity.UNCOMMON, mage.cards.g.GrapplingKraken.class));
cards.add(new SetCardInfo("Gratuitous Violence", 715, Rarity.RARE, mage.cards.g.GratuitousViolence.class));
cards.add(new SetCardInfo("Gruul Guildgate", 690, Rarity.COMMON, mage.cards.g.GruulGuildgate.class));
cards.add(new SetCardInfo("Guarded Heir", 14, Rarity.UNCOMMON, mage.cards.g.GuardedHeir.class));
cards.add(new SetCardInfo("Guttersnipe", 716, Rarity.UNCOMMON, mage.cards.g.Guttersnipe.class));
cards.add(new SetCardInfo("Halana and Alena, Partners", 659, Rarity.RARE, mage.cards.h.HalanaAndAlenaPartners.class));
cards.add(new SetCardInfo("Harbinger of the Tides", 593, Rarity.RARE, mage.cards.h.HarbingerOfTheTides.class));
Expand Down
29 changes: 29 additions & 0 deletions Mage/src/main/java/mage/game/permanent/token/Knight33Token.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package mage.game.permanent.token;

import mage.MageInt;
import mage.constants.CardType;
import mage.constants.SubType;

/**
* @author TheElk801
*/
public final class Knight33Token extends TokenImpl {

public Knight33Token() {
super("Knight Token", "3/3 white Knight creature token");

cardType.add(CardType.CREATURE);
color.setWhite(true);
subtype.add(SubType.KNIGHT);
power = new MageInt(3);
toughness = new MageInt(3);
}

private Knight33Token(final Knight33Token token) {
super(token);
}

public Knight33Token copy() {
return new Knight33Token(this);
}
}

0 comments on commit ca91c97

Please sign in to comment.