From 9125df4ccf5e35d561929e5391ba325bef9c100b Mon Sep 17 00:00:00 2001 From: Ingmar Goudt Date: Thu, 28 Feb 2019 20:34:01 +0100 Subject: [PATCH] add static filter --- Mage.Sets/src/mage/cards/a/AetherwindBasker.java | 5 +++-- Mage.Sets/src/mage/cards/b/BlightedSteppe.java | 5 +++-- Mage.Sets/src/mage/cards/h/HailStorm.java | 10 +++------- Mage.Sets/src/mage/cards/l/LoxodonHierarch.java | 10 +++------- Mage.Sets/src/mage/cards/t/TitaniasBoon.java | 3 ++- 5 files changed, 14 insertions(+), 19 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AetherwindBasker.java b/Mage.Sets/src/mage/cards/a/AetherwindBasker.java index c92b84d420..e2bc62492d 100644 --- a/Mage.Sets/src/mage/cards/a/AetherwindBasker.java +++ b/Mage.Sets/src/mage/cards/a/AetherwindBasker.java @@ -16,6 +16,7 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.SubType; import mage.constants.Zone; +import mage.filter.StaticFilters; import mage.filter.common.FilterControlledCreaturePermanent; /** @@ -35,13 +36,13 @@ public final class AetherwindBasker extends CardImpl { this.addAbility(TrampleAbility.getInstance()); // Whenever Aetherwind Basker enters the battlefield or attacks, you get {E} for each creature you control. - this.addAbility(new EntersBattlefieldOrAttacksSourceTriggeredAbility(new GetEnergyCountersControllerEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent("creature you control"), null)))); + this.addAbility(new EntersBattlefieldOrAttacksSourceTriggeredAbility(new GetEnergyCountersControllerEffect(new PermanentsOnBattlefieldCount(StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED, null)))); // Pay {E}: Aetherwind Basker gets +1/+1 until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new PayEnergyCost(1))); } - public AetherwindBasker(final AetherwindBasker card) { + private AetherwindBasker(final AetherwindBasker card) { super(card); } diff --git a/Mage.Sets/src/mage/cards/b/BlightedSteppe.java b/Mage.Sets/src/mage/cards/b/BlightedSteppe.java index b792bab0c2..b334ebce8f 100644 --- a/Mage.Sets/src/mage/cards/b/BlightedSteppe.java +++ b/Mage.Sets/src/mage/cards/b/BlightedSteppe.java @@ -14,6 +14,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; +import mage.filter.StaticFilters; import mage.filter.common.FilterControlledCreaturePermanent; /** @@ -30,14 +31,14 @@ public final class BlightedSteppe extends CardImpl { // {3}{W}, {T}, Sacrifice Blighted Steppe: You gain 2 life for each creature you control. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, - new GainLifeEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent("creature you control"), 2)), + new GainLifeEffect(new PermanentsOnBattlefieldCount(StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED, 2)), new ManaCostsImpl<>("{3}{W}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); } - public BlightedSteppe(final BlightedSteppe card) { + private BlightedSteppe(final BlightedSteppe card) { super(card); } diff --git a/Mage.Sets/src/mage/cards/h/HailStorm.java b/Mage.Sets/src/mage/cards/h/HailStorm.java index 53b8b32718..2d4a81f290 100644 --- a/Mage.Sets/src/mage/cards/h/HailStorm.java +++ b/Mage.Sets/src/mage/cards/h/HailStorm.java @@ -8,6 +8,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; +import mage.filter.StaticFilters; import mage.filter.common.FilterAttackingCreature; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.permanent.ControllerPredicate; @@ -18,21 +19,16 @@ import mage.filter.predicate.permanent.ControllerPredicate; */ public final class HailStorm extends CardImpl { - private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature you control"); - static { - filter.add(new ControllerPredicate(TargetController.YOU)); - } - public HailStorm(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{G}{G}"); // Hail Storm deals 2 damage to each attacking creature and 1 damage to you and each creature you control. this.getSpellAbility().addEffect(new DamageAllEffect(2, new FilterAttackingCreature())); this.getSpellAbility().addEffect(new DamageControllerEffect(1).setText("and 1 damage to you ")); - this.getSpellAbility().addEffect(new DamageAllEffect(1, filter).setText("and each creature you control.")); + this.getSpellAbility().addEffect(new DamageAllEffect(1, StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED).setText("and each creature you control.")); } - public HailStorm(final HailStorm card) { + private HailStorm(final HailStorm card) { super(card); } diff --git a/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java b/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java index f1e1846ab9..fc03a6ce2e 100644 --- a/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java +++ b/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java @@ -16,6 +16,7 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.constants.TargetController; import mage.constants.Zone; +import mage.filter.StaticFilters; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.permanent.ControllerPredicate; @@ -25,11 +26,6 @@ import mage.filter.predicate.permanent.ControllerPredicate; */ public final class LoxodonHierarch extends CardImpl { - private static FilterCreaturePermanent filter = new FilterCreaturePermanent("creature you control"); - - static { - filter.add(new ControllerPredicate(TargetController.YOU)); - } public LoxodonHierarch(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}{W}"); @@ -43,12 +39,12 @@ public final class LoxodonHierarch extends CardImpl { Ability etbAbility = new EntersBattlefieldTriggeredAbility(new GainLifeEffect(4)); this.addAbility(etbAbility); // {G}{W}, Sacrifice Loxodon Hierarch: Regenerate each creature you control. - Ability activated = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAllEffect(filter), new ManaCostsImpl("{G}{W}")); + Ability activated = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAllEffect(StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED), new ManaCostsImpl("{G}{W}")); activated.addCost(new SacrificeSourceCost()); this.addAbility(activated); } - public LoxodonHierarch(final LoxodonHierarch card) { + private LoxodonHierarch(final LoxodonHierarch card) { super(card); } diff --git a/Mage.Sets/src/mage/cards/t/TitaniasBoon.java b/Mage.Sets/src/mage/cards/t/TitaniasBoon.java index 706e2a9fab..a957266968 100644 --- a/Mage.Sets/src/mage/cards/t/TitaniasBoon.java +++ b/Mage.Sets/src/mage/cards/t/TitaniasBoon.java @@ -8,6 +8,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.counters.CounterType; +import mage.filter.StaticFilters; import mage.filter.common.FilterControlledCreaturePermanent; /** @@ -21,7 +22,7 @@ public final class TitaniasBoon extends CardImpl { // Put a +1/+1 counter on each creature you control. - this.getSpellAbility().addEffect(new AddCountersAllEffect(CounterType.P1P1.createInstance(), new FilterControlledCreaturePermanent("creature you control"))); + this.getSpellAbility().addEffect(new AddCountersAllEffect(CounterType.P1P1.createInstance(), StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED)); } public TitaniasBoon(final TitaniasBoon card) {