forked from External/mage
* 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
43 lines
1.4 KiB
Java
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);
|
|
}
|
|
}
|