foul-magics/Mage.Sets/src/mage/cards/s/Skybind.java
xenohedron 6e18dbd2e4
new ExileReturnBattlefieldNextEndStepTargetEffect (#11251)
* adjust ExileThenReturnTargetEffect

* initial rework ExileReturnBattlefieldNextEndStepTargetEffect

(test coverage provided by CloudshiftTest)

* refactor some more cards

* refactor more straightforward cards

* add params and more refactoring

* text fixes

* maintain order in set

* fix Lae'zel's Acrobatics and add test
2023-10-05 22:04:12 -04:00

43 lines
1.4 KiB
Java

package mage.cards.s;
import mage.abilities.Ability;
import mage.abilities.abilityword.ConstellationAbility;
import mage.abilities.effects.common.ExileReturnBattlefieldNextEndStepTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.FilterPermanent;
import mage.filter.predicate.Predicates;
import mage.target.TargetPermanent;
import java.util.UUID;
/**
* @author LevelX2
*/
public final class Skybind extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("nonenchantment permanent");
static {
filter.add(Predicates.not(CardType.ENCHANTMENT.getPredicate()));
}
public Skybind(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{W}{W}");
// Constellation — When Skybind or another enchantment enters the battlefield under your control, exile target nonenchantment permanent. Return that card to the battlefield under its owner's control at the beginning of the next end step.
Ability ability = new ConstellationAbility(new ExileReturnBattlefieldNextEndStepTargetEffect(), false);
ability.addTarget(new TargetPermanent(filter));
this.addAbility(ability);
}
private Skybind(final Skybind card) {
super(card);
}
@Override
public Skybind copy() {
return new Skybind(this);
}
}