mirror of
https://github.com/correl/mage.git
synced 2024-11-15 19:19:33 +00:00
* Faerie count - Fixed some abilities that did not count non creature Faeries permanents (e.g. Spellslutter Sprite).
This commit is contained in:
parent
c770c6c500
commit
26cd7246ee
4 changed files with 14 additions and 10 deletions
|
@ -41,6 +41,7 @@ import mage.abilities.keyword.FlashAbility;
|
|||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.ShroudAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
@ -51,11 +52,14 @@ import mage.filter.predicate.permanent.ControllerPredicate;
|
|||
*/
|
||||
public class ScionOfOona extends CardImpl<ScionOfOona> {
|
||||
|
||||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Faeries");
|
||||
private static final FilterPermanent filter = new FilterPermanent("Faeries");
|
||||
private static final FilterCreaturePermanent filterCreature = new FilterCreaturePermanent("Faeries");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Faerie"));
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filterCreature.add(new SubtypePredicate("Faerie"));
|
||||
filterCreature.add(new ControllerPredicate(TargetController.YOU));
|
||||
}
|
||||
|
||||
public ScionOfOona(UUID ownerId) {
|
||||
|
@ -72,7 +76,7 @@ public class ScionOfOona extends CardImpl<ScionOfOona> {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
// Other Faerie creatures you control get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filterCreature, true)));
|
||||
// Other Faeries you control have shroud.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(ShroudAbility.getInstance(), Duration.WhileOnBattlefield, filter, true)));
|
||||
}
|
||||
|
|
|
@ -42,8 +42,8 @@ import mage.abilities.keyword.FlyingAbility;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.Filter;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.FilterSpell;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.ConvertedManaCostPredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||
|
@ -57,7 +57,7 @@ import mage.target.TargetSpell;
|
|||
*/
|
||||
public class SpellstutterSprite extends CardImpl<SpellstutterSprite> {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent("number of Faeries you control");
|
||||
public static final FilterPermanent filter = new FilterPermanent("number of Faeries you control");
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(new SubtypePredicate("Faerie"));
|
||||
|
@ -130,7 +130,6 @@ class SpellstutterSpriteCounterTargetEffect extends OneShotEffect<SpellstutterSp
|
|||
StackObject stackObject = game.getStack().getStackObject(source.getFirstTarget());
|
||||
if (stackObject.getManaCost().convertedManaCost() <= numberFaeries) {
|
||||
if (game.getStack().counter(source.getFirstTarget(), source.getSourceId(), game)) {
|
||||
game.informPlayers(new StringBuilder(stackObject.getName()).append(" was countered").toString());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,7 +36,7 @@ import mage.abilities.decorator.ConditionalOneShotEffect;
|
|||
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
|
||||
import mage.abilities.effects.common.continious.BoostTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
@ -46,7 +46,7 @@ import mage.target.common.TargetCreaturePermanent;
|
|||
*/
|
||||
public class Peppersmoke extends CardImpl<Peppersmoke> {
|
||||
|
||||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("If you control a Faerie,");
|
||||
private static final FilterPermanent filter = new FilterPermanent("If you control a Faerie,");
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Faerie"));
|
||||
}
|
||||
|
|
|
@ -28,9 +28,6 @@
|
|||
package mage.sets.morningtide;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
|
@ -38,6 +35,8 @@ import mage.abilities.effects.common.CreateTokenEffect;
|
|||
import mage.abilities.effects.common.LoseLifeSourceControllerEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Rarity;
|
||||
import mage.constants.TargetController;
|
||||
import mage.game.permanent.token.Token;
|
||||
|
||||
|
@ -53,6 +52,8 @@ public class Bitterblossom extends CardImpl<Bitterblossom> {
|
|||
this.supertype.add("Tribal");
|
||||
this.subtype.add("Faerie");
|
||||
this.color.setBlack(true);
|
||||
|
||||
// At the beginning of your upkeep, you lose 1 life and put a 1/1 black Faerie Rogue creature token with flying onto the battlefield.
|
||||
Ability ability = new BeginningOfUpkeepTriggeredAbility(new LoseLifeSourceControllerEffect(1), TargetController.YOU, false);
|
||||
ability.addEffect(new CreateTokenEffect(new FaerieToken(), 1));
|
||||
this.addAbility(ability);
|
||||
|
|
Loading…
Reference in a new issue