[STX] Implemented Galazeth Prismari

This commit is contained in:
Evan Kranzler 2021-04-05 20:16:54 -04:00
parent f10d007454
commit d9adbd1627
3 changed files with 64 additions and 7 deletions

View file

@ -0,0 +1,57 @@
package mage.cards.g;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.abilities.mana.ConditionalAnyColorManaAbility;
import mage.abilities.mana.builder.common.InstantOrSorcerySpellManaBuilder;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.filter.StaticFilters;
import mage.game.permanent.token.TreasureToken;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class GalazethPrismari extends CardImpl {
public GalazethPrismari(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}{R}");
this.addSuperType(SuperType.LEGENDARY);
this.subtype.add(SubType.ELDER);
this.subtype.add(SubType.DRAGON);
this.power = new MageInt(3);
this.toughness = new MageInt(4);
// Flying
this.addAbility(FlyingAbility.getInstance());
// When Galazeth Prismari enters the battlefield, create a Treasure token.
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new TreasureToken())));
// Artifacts you control have "{T}: Add one mana of any color. Spend this mana only to cast an instant or sorcery spell."
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
new ConditionalAnyColorManaAbility(1, new InstantOrSorcerySpellManaBuilder()),
Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_ARTIFACTS
)));
}
private GalazethPrismari(final GalazethPrismari card) {
super(card);
}
@Override
public GalazethPrismari copy() {
return new GalazethPrismari(this);
}
}

View file

@ -1,16 +1,16 @@
package mage.cards.v; package mage.cards.v;
import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.mana.ConditionalColorlessManaAbility; import mage.abilities.mana.ConditionalColorlessManaAbility;
import mage.constants.SubType; import mage.abilities.mana.builder.common.InstantOrSorcerySpellManaBuilder;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
/** /**
*
* @author TheElk801 * @author TheElk801
*/ */
public final class VodalianArcanist extends CardImpl { public final class VodalianArcanist extends CardImpl {
@ -24,8 +24,7 @@ public final class VodalianArcanist extends CardImpl {
this.toughness = new MageInt(3); this.toughness = new MageInt(3);
// {T}: Add {C}. Spend this mana only to cast an instant or sorcery spell. // {T}: Add {C}. Spend this mana only to cast an instant or sorcery spell.
this.addAbility(new ConditionalColorlessManaAbility(new TapSourceCost(), 1, this.addAbility(new ConditionalColorlessManaAbility(1, new InstantOrSorcerySpellManaBuilder()));
new mage.abilities.mana.builder.common.InstantOrSorcerySpellManaBuilder()));
} }
private VodalianArcanist(final VodalianArcanist card) { private VodalianArcanist(final VodalianArcanist card) {

View file

@ -101,6 +101,7 @@ public final class StrixhavenSchoolOfMages extends ExpansionSet {
cards.add(new SetCardInfo("Frostboil Snarl", 265, Rarity.RARE, mage.cards.f.FrostboilSnarl.class)); cards.add(new SetCardInfo("Frostboil Snarl", 265, Rarity.RARE, mage.cards.f.FrostboilSnarl.class));
cards.add(new SetCardInfo("Fuming Effigy", 103, Rarity.COMMON, mage.cards.f.FumingEffigy.class)); cards.add(new SetCardInfo("Fuming Effigy", 103, Rarity.COMMON, mage.cards.f.FumingEffigy.class));
cards.add(new SetCardInfo("Furycalm Snarl", 266, Rarity.RARE, mage.cards.f.FurycalmSnarl.class)); cards.add(new SetCardInfo("Furycalm Snarl", 266, Rarity.RARE, mage.cards.f.FurycalmSnarl.class));
cards.add(new SetCardInfo("Galazeth Prismari", 189, Rarity.MYTHIC, mage.cards.g.GalazethPrismari.class));
cards.add(new SetCardInfo("Gnarled Professor", 133, Rarity.RARE, mage.cards.g.GnarledProfessor.class)); cards.add(new SetCardInfo("Gnarled Professor", 133, Rarity.RARE, mage.cards.g.GnarledProfessor.class));
cards.add(new SetCardInfo("Go Blank", 72, Rarity.UNCOMMON, mage.cards.g.GoBlank.class)); cards.add(new SetCardInfo("Go Blank", 72, Rarity.UNCOMMON, mage.cards.g.GoBlank.class));
cards.add(new SetCardInfo("Golden Ratio", 190, Rarity.UNCOMMON, mage.cards.g.GoldenRatio.class)); cards.add(new SetCardInfo("Golden Ratio", 190, Rarity.UNCOMMON, mage.cards.g.GoldenRatio.class));