[FIN] Implement Ice Magic

This commit is contained in:
theelk801 2025-05-11 15:02:59 -04:00
parent 6e124806db
commit 4cf14ee966
2 changed files with 57 additions and 0 deletions

View file

@ -0,0 +1,56 @@
package mage.cards.i;
import mage.abilities.Mode;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.PutOnTopOrBottomLibraryTargetEffect;
import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.abilities.effects.common.ShuffleIntoLibraryTargetEffect;
import mage.abilities.keyword.TieredAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class IceMagic extends CardImpl {
public IceMagic(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{U}");
// Tiered
this.addAbility(new TieredAbility(this));
// * Blizzard -- {0} -- Return target creature to its owner's hand.
this.getSpellAbility().addEffect(new ReturnToHandTargetEffect());
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
this.getSpellAbility().withFirstModeCost(new GenericManaCost(2));
this.getSpellAbility().withFirstModeFlavorWord("Blizzard");
// * Blizzara -- {2} -- Target creature's owner puts it on their choice of the top or bottom of their library.
this.getSpellAbility().addMode(new Mode(new PutOnTopOrBottomLibraryTargetEffect(false))
.addTarget(new TargetCreaturePermanent())
.withCost(new GenericManaCost(2))
.withFlavorWord("Blizzara"));
// * Blizzaga -- {5}{U} -- Target creature's owner shuffles it into their library.
this.getSpellAbility().addMode(new Mode(new ShuffleIntoLibraryTargetEffect()
.setText("target creature's owner shuffles it into their library"))
.addTarget(new TargetCreaturePermanent())
.withCost(new ManaCostsImpl<>("{5}{U}"))
.withFlavorWord("Blizzaga"));
}
private IceMagic(final IceMagic card) {
super(card);
}
@Override
public IceMagic copy() {
return new IceMagic(this);
}
}

View file

@ -74,6 +74,7 @@ public final class FinalFantasy extends ExpansionSet {
cards.add(new SetCardInfo("Hades, Sorcerer of Eld", 394, Rarity.MYTHIC, mage.cards.h.HadesSorcererOfEld.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Hades, Sorcerer of Eld", 483, Rarity.MYTHIC, mage.cards.h.HadesSorcererOfEld.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Hades, Sorcerer of Eld", 539, Rarity.MYTHIC, mage.cards.h.HadesSorcererOfEld.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Ice Magic", 56, Rarity.COMMON, mage.cards.i.IceMagic.class));
cards.add(new SetCardInfo("Island", 297, Rarity.LAND, mage.cards.basiclands.Island.class, FULL_ART_BFZ_VARIOUS));
cards.add(new SetCardInfo("Island", 298, Rarity.LAND, mage.cards.basiclands.Island.class, FULL_ART_BFZ_VARIOUS));
cards.add(new SetCardInfo("Island", 299, Rarity.LAND, mage.cards.basiclands.Island.class, FULL_ART_BFZ_VARIOUS));