clean EmergeAbility and Doom Foretold

This commit is contained in:
Susucre 2024-06-01 13:07:21 +02:00
parent 3979a532db
commit 31c772d368
4 changed files with 70 additions and 25 deletions

View file

@ -13,8 +13,8 @@ import mage.constants.Outcome;
import mage.constants.SpellAbilityType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.permanent.CanBeSacrificedPredicate;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@ -31,23 +31,17 @@ public class EmergeAbility extends SpellAbility {
private final ManaCosts<ManaCost> emergeCost;
public static final String EMERGE_ACTIVATION_CREATURE_REFERENCE = "emergeActivationMOR";
private static final FilterPermanent SAC_FILTER = new FilterControlledCreaturePermanent();
static {
SAC_FILTER.add(CanBeSacrificedPredicate.instance);
}
private final String emergeFromText;
private final FilterPermanent filter;
public EmergeAbility(Card card, String emergeManaString) {
this(card, emergeManaString, SAC_FILTER, "");
this(card, emergeManaString, StaticFilters.FILTER_PERMANENT_CREATURE, "");
}
public EmergeAbility(Card card, String emergeManaString, FilterPermanent filter, String emergeFromText) {
super(card.getSpellAbility());
this.filter = filter;
this.filter = TargetSacrifice.makeFilter(filter);
this.emergeFromText = emergeFromText;
this.emergeCost = new ManaCostsImpl<>(emergeManaString);