implement [DSK] Fear of Missing Out

This commit is contained in:
Susucre 2024-07-06 18:28:28 +02:00
parent 9bc1289341
commit b01b5aa24d
2 changed files with 61 additions and 0 deletions

View file

@ -0,0 +1,60 @@
package mage.cards.f;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.AttacksFirstTimeTriggeredAbility;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.condition.common.DeliriumCondition;
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
import mage.abilities.effects.common.AdditionalCombatPhaseEffect;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.UntapTargetEffect;
import mage.abilities.effects.common.discard.DiscardControllerEffect;
import mage.abilities.hint.common.CardTypesInGraveyardHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/**
* @author Susucr
*/
public final class FearOfMissingOut extends CardImpl {
public FearOfMissingOut(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{1}{R}");
this.subtype.add(SubType.NIGHTMARE);
this.power = new MageInt(2);
this.toughness = new MageInt(3);
// When Fear of Missing Out enters, discard a card, then draw a card.
Ability ability = new EntersBattlefieldTriggeredAbility(new DiscardControllerEffect(1));
ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy(", then"));
this.addAbility(ability);
// Delirium -- Whenever Fear of Missing Out attacks for the first time each turn, if there are four or more card types among cards in your graveyard, untap target creature. After this phase, there is an additional combat phase.
ability = new ConditionalInterveningIfTriggeredAbility(
new AttacksFirstTimeTriggeredAbility(new UntapTargetEffect(), false),
DeliriumCondition.instance, "<i>Delirium</i> &mdash; Whenever {this} attacks for the first time each turn, "
+ "if there are four or more card types among cards in your graveyard, untap target creature. "
+ "After this phase, there is an additional combat phase."
);
ability.addTarget(new TargetCreaturePermanent());
ability.addEffect(new AdditionalCombatPhaseEffect());
ability.addHint(CardTypesInGraveyardHint.YOU);
this.addAbility(ability);
}
private FearOfMissingOut(final FearOfMissingOut card) {
super(card);
}
@Override
public FearOfMissingOut copy() {
return new FearOfMissingOut(this);
}
}

View file

@ -24,6 +24,7 @@ public final class DuskmournHouseOfHorror extends ExpansionSet {
cards.add(new SetCardInfo("Cursed Recording", 131, Rarity.RARE, mage.cards.c.CursedRecording.class));
cards.add(new SetCardInfo("Doomsday Excruciator", 94, Rarity.RARE, mage.cards.d.DoomsdayExcruciator.class));
cards.add(new SetCardInfo("Enduring Tenacity", 95, Rarity.RARE, mage.cards.e.EnduringTenacity.class));
cards.add(new SetCardInfo("Fear of Missing Out", 136, Rarity.RARE, mage.cards.f.FearOfMissingOut.class));
cards.add(new SetCardInfo("Forest", 276, Rarity.LAND, mage.cards.basiclands.Forest.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Island", 273, Rarity.LAND, mage.cards.basiclands.Island.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Leyline of Hope", 18, Rarity.RARE, mage.cards.l.LeylineOfHope.class));