[MIR] Implement Mangara's Blessing (#11510)

This commit is contained in:
Cameron Merkel 2023-12-05 19:27:33 -06:00 committed by GitHub
parent 6020ac9e56
commit 0995524f35
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 49 additions and 0 deletions

View file

@ -0,0 +1,48 @@
package mage.cards.m;
import mage.abilities.Ability;
import mage.abilities.common.DiscardedByOpponentTriggeredAbility;
import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.CreateDelayedTriggeredAbilityEffect;
import mage.abilities.effects.common.GainLifeEffect;
import mage.abilities.effects.common.ReturnSourceFromGraveyardToHandEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import java.util.UUID;
/**
* @author Cguy7777
*/
public final class MangarasBlessing extends CardImpl {
public MangarasBlessing(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{W}");
// You gain 5 life.
this.getSpellAbility().addEffect(new GainLifeEffect(5));
// When a spell or ability an opponent controls causes you to discard Mangara's Blessing,
// you gain 2 life, and you return Mangara's Blessing from your graveyard to your hand at the beginning of the next end step.
Ability ability = new DiscardedByOpponentTriggeredAbility(new GainLifeEffect(2), true);
Effect graveyardReturnNextEndEffect = new CreateDelayedTriggeredAbilityEffect(
new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new ReturnSourceFromGraveyardToHandEffect()));
graveyardReturnNextEndEffect.concatBy(", and");
graveyardReturnNextEndEffect.setText(" you return {this} from your graveyard to your hand at the beginning of the next end step");
ability.addEffect(graveyardReturnNextEndEffect);
this.addAbility(ability);
}
private MangarasBlessing(final MangarasBlessing card) {
super(card);
}
@Override
public MangarasBlessing copy() {
return new MangarasBlessing(this);
}
}

View file

@ -193,6 +193,7 @@ public final class Mirage extends ExpansionSet {
cards.add(new SetCardInfo("Lure of Prey", 227, Rarity.RARE, mage.cards.l.LureOfPrey.class));
cards.add(new SetCardInfo("Malignant Growth", 272, Rarity.RARE, mage.cards.m.MalignantGrowth.class));
cards.add(new SetCardInfo("Mana Prism", 308, Rarity.UNCOMMON, mage.cards.m.ManaPrism.class));
cards.add(new SetCardInfo("Mangara's Blessing", 25, Rarity.UNCOMMON, mage.cards.m.MangarasBlessing.class));
cards.add(new SetCardInfo("Mangara's Equity", 26, Rarity.UNCOMMON, mage.cards.m.MangarasEquity.class));
cards.add(new SetCardInfo("Mangara's Tome", 309, Rarity.RARE, mage.cards.m.MangarasTome.class));
cards.add(new SetCardInfo("Marble Diamond", 310, Rarity.UNCOMMON, mage.cards.m.MarbleDiamond.class));