[MID] Implemented Sunstreak Phoenix

This commit is contained in:
Evan Kranzler 2021-09-10 08:53:52 -04:00
parent 0451694fac
commit f38b0b3e3a
3 changed files with 60 additions and 1 deletions

View file

@ -0,0 +1,54 @@
package mage.cards.s;
import mage.MageInt;
import mage.abilities.common.BecomeDayAsEntersAbility;
import mage.abilities.common.BecomesDayOrNightTriggeredAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.DoIfCostPaid;
import mage.abilities.effects.common.ReturnSourceFromGraveyardToBattlefieldEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class SunstreakPhoenix extends CardImpl {
public SunstreakPhoenix(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{R}");
this.subtype.add(SubType.PHOENIX);
this.power = new MageInt(4);
this.toughness = new MageInt(2);
// Flying
this.addAbility(FlyingAbility.getInstance());
// If it's nether day nor night, it becomes day when Sunstreak Phoenix enters the battlefield.
this.addAbility(new BecomeDayAsEntersAbility());
// When day becomes night or night becomes day, you may pay {1}{R}. If you do, return Sunstreak Phoenix from your graveyard to the battlefield tapped.
this.addAbility(new BecomesDayOrNightTriggeredAbility(
Zone.GRAVEYARD,
new DoIfCostPaid(
new ReturnSourceFromGraveyardToBattlefieldEffect(true),
new ManaCostsImpl<>("{1}{R}")
)
));
}
private SunstreakPhoenix(final SunstreakPhoenix card) {
super(card);
}
@Override
public SunstreakPhoenix copy() {
return new SunstreakPhoenix(this);
}
}

View file

@ -150,6 +150,7 @@ public final class InnistradMidnightHunt extends ExpansionSet {
cards.add(new SetCardInfo("Stormrider Spirit", 79, Rarity.COMMON, mage.cards.s.StormriderSpirit.class));
cards.add(new SetCardInfo("Stuffed Bear", 259, Rarity.COMMON, mage.cards.s.StuffedBear.class));
cards.add(new SetCardInfo("Sungold Barrage", 36, Rarity.COMMON, mage.cards.s.SungoldBarrage.class));
cards.add(new SetCardInfo("Sunstreak Phoenix", 162, Rarity.MYTHIC, mage.cards.s.SunstreakPhoenix.class));
cards.add(new SetCardInfo("Suspicious Stowaway", 80, Rarity.RARE, mage.cards.s.SuspiciousStowaway.class));
cards.add(new SetCardInfo("Swamp", 272, Rarity.LAND, mage.cards.basiclands.Swamp.class, FULL_ART_BFZ_VARIOUS));
cards.add(new SetCardInfo("Tainted Adversary", 124, Rarity.MYTHIC, mage.cards.t.TaintedAdversary.class));

View file

@ -13,7 +13,11 @@ import mage.game.events.GameEvent;
public class BecomesDayOrNightTriggeredAbility extends TriggeredAbilityImpl {
public BecomesDayOrNightTriggeredAbility(Effect effect) {
super(Zone.BATTLEFIELD, effect, false);
this(Zone.BATTLEFIELD, effect);
}
public BecomesDayOrNightTriggeredAbility(Zone zone, Effect effect) {
super(zone, effect, false);
}
private BecomesDayOrNightTriggeredAbility(final BecomesDayOrNightTriggeredAbility ability) {