[FIN] Implement Galuf's Final Act

This commit is contained in:
theelk801 2025-05-18 10:11:20 -04:00
parent 90a483d779
commit 88d7c880f9
2 changed files with 48 additions and 0 deletions

View file

@ -0,0 +1,47 @@
package mage.cards.g;
import mage.abilities.Ability;
import mage.abilities.common.DiesSourceTriggeredAbility;
import mage.abilities.dynamicvalue.common.SourcePermanentPowerValue;
import mage.abilities.effects.common.continuous.BoostTargetEffect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.effects.common.counter.AddCountersTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.counters.CounterType;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class GalufsFinalAct extends CardImpl {
public GalufsFinalAct(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{G}");
// Until end of turn, target creature gets +1/+0 and gains "When this creature dies, put a number of +1/+1 counters equal to its power on up to one target creature."
this.getSpellAbility().addEffect(new BoostTargetEffect(1, 0)
.setText("until end of turn, target creature gets +1/+0"));
Ability ability = new DiesSourceTriggeredAbility(new AddCountersTargetEffect(
CounterType.P1P1.createInstance(), SourcePermanentPowerValue.NOT_NEGATIVE
).setText("put a number of +1/+1 counters equal to its power on up to one target creature"));
ability.addTarget(new TargetCreaturePermanent(0, 1));
this.getSpellAbility().addEffect(new GainAbilityTargetEffect(ability, Duration.EndOfTurn)
.setText("and gains \"When this creature dies, put a number of +1/+1 counters " +
"equal to its power on up to one target creature.\""));
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
}
private GalufsFinalAct(final GalufsFinalAct card) {
super(card);
}
@Override
public GalufsFinalAct copy() {
return new GalufsFinalAct(this);
}
}

View file

@ -128,6 +128,7 @@ public final class FinalFantasy extends ExpansionSet {
cards.add(new SetCardInfo("Galian Beast", 383, Rarity.RARE, mage.cards.g.GalianBeast.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Galian Beast", 454, Rarity.RARE, mage.cards.g.GalianBeast.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Galian Beast", 528, Rarity.RARE, mage.cards.g.GalianBeast.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Galuf's Final Act", 186, Rarity.UNCOMMON, mage.cards.g.GalufsFinalAct.class));
cards.add(new SetCardInfo("Garland, Knight of Cornelia", 221, Rarity.UNCOMMON, mage.cards.g.GarlandKnightOfCornelia.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Garland, Knight of Cornelia", 486, Rarity.UNCOMMON, mage.cards.g.GarlandKnightOfCornelia.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Gilgamesh, Master-at-Arms", 139, Rarity.RARE, mage.cards.g.GilgameshMasterAtArms.class, NON_FULL_USE_VARIOUS));