mirror of
https://github.com/correl/mage.git
synced 2024-12-26 03:00:11 +00:00
Implemented The Birth of Meletis
This commit is contained in:
parent
136c4fe55b
commit
9948aca713
3 changed files with 91 additions and 0 deletions
65
Mage.Sets/src/mage/cards/t/TheBirthOfMeletis.java
Normal file
65
Mage.Sets/src/mage/cards/t/TheBirthOfMeletis.java
Normal file
|
@ -0,0 +1,65 @@
|
|||
package mage.cards.t;
|
||||
|
||||
import mage.abilities.common.SagaAbility;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.effects.common.GainLifeEffect;
|
||||
import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SagaChapter;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.SuperType;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.mageobject.SupertypePredicate;
|
||||
import mage.game.permanent.token.ArtifactWallToken;
|
||||
import mage.target.common.TargetCardInLibrary;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class TheBirthOfMeletis extends CardImpl {
|
||||
|
||||
private static final FilterCard filter = new FilterCard("a basic Plains card");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.PLAINS));
|
||||
filter.add(new SupertypePredicate(SuperType.BASIC));
|
||||
}
|
||||
|
||||
public TheBirthOfMeletis(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{W}");
|
||||
|
||||
this.subtype.add(SubType.SAGA);
|
||||
|
||||
// (As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)
|
||||
SagaAbility sagaAbility = new SagaAbility(this, SagaChapter.CHAPTER_III);
|
||||
|
||||
// I — Search your library for a basic Plains card, reveal it, put it into your hand, then shuffle your library.
|
||||
sagaAbility.addChapterEffect(
|
||||
this, SagaChapter.CHAPTER_I, new SearchLibraryPutInHandEffect(
|
||||
new TargetCardInLibrary(filter), false, true
|
||||
)
|
||||
);
|
||||
|
||||
// II — Create a colorless 0/4 Wall artifact creature token with defender.
|
||||
sagaAbility.addChapterEffect(
|
||||
this, SagaChapter.CHAPTER_II, new CreateTokenEffect(new ArtifactWallToken())
|
||||
);
|
||||
|
||||
// III — You gain 2 life.
|
||||
sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_III, new GainLifeEffect(2));
|
||||
}
|
||||
|
||||
private TheBirthOfMeletis(final TheBirthOfMeletis card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TheBirthOfMeletis copy() {
|
||||
return new TheBirthOfMeletis(this);
|
||||
}
|
||||
}
|
|
@ -97,6 +97,7 @@ public final class TherosBeyondDeath extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Terror of Mount Velus", 295, Rarity.RARE, mage.cards.t.TerrorOfMountVelus.class));
|
||||
cards.add(new SetCardInfo("The Akroan War", 124, Rarity.RARE, mage.cards.t.TheAkroanWar.class));
|
||||
cards.add(new SetCardInfo("The Binding of the Titans", 166, Rarity.UNCOMMON, mage.cards.t.TheBindingOfTheTitans.class));
|
||||
cards.add(new SetCardInfo("The Birth of Meletis", 5, Rarity.UNCOMMON, mage.cards.t.TheBirthOfMeletis.class));
|
||||
cards.add(new SetCardInfo("Thirst for Meaning", 74, Rarity.COMMON, mage.cards.t.ThirstForMeaning.class));
|
||||
cards.add(new SetCardInfo("Towering-Wave Mystic", 77, Rarity.COMMON, mage.cards.t.ToweringWaveMystic.class));
|
||||
cards.add(new SetCardInfo("Treacherous Blessing", 316, Rarity.RARE, mage.cards.t.TreacherousBlessing.class));
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
package mage.game.permanent.token;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
|
||||
public final class ArtifactWallToken extends TokenImpl {
|
||||
|
||||
public ArtifactWallToken() {
|
||||
super("Wall", "colorless 0/4 Wall artifact creature token with defender");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add(SubType.WALL);
|
||||
power = new MageInt(0);
|
||||
toughness = new MageInt(4);
|
||||
}
|
||||
|
||||
private ArtifactWallToken(final ArtifactWallToken token) {
|
||||
super(token);
|
||||
}
|
||||
|
||||
public ArtifactWallToken copy() {
|
||||
return new ArtifactWallToken(this);
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue