From 77618b7ef576f7559d07bcfa66e28db916138f57 Mon Sep 17 00:00:00 2001 From: ThomasLerner Date: Sun, 9 Apr 2017 06:30:54 -0400 Subject: [PATCH 01/21] Create IceCave.java --- Mage.Sets/src/mage/cards/i/IceCave.java | 116 ++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/i/IceCave.java diff --git a/Mage.Sets/src/mage/cards/i/IceCave.java b/Mage.Sets/src/mage/cards/i/IceCave.java new file mode 100644 index 00000000000..916a278e085 --- /dev/null +++ b/Mage.Sets/src/mage/cards/i/IceCave.java @@ -0,0 +1,116 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.i; + +import mage.abilities.Ability; +import mage.abilities.common.SpellCastAllTriggeredAbility; +import mage.abilities.effects.OneShotEffect; +import mage.cards.Card; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.cards.CardsImpl; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.SetTargetPointer; +import mage.constants.Zone; +import mage.filter.FilterSpell; +import mage.game.Game; +import mage.game.permanent.Permanent; +import mage.game.stack.Spell; +import mage.players.Player; +import mage.util.CardUtil; + +import java.util.UUID; +import mage.abilities.costs.Cost; +import mage.abilities.costs.mana.ManaCostsImpl; + +/** + * + * @author jeffwadsworth + */ +public class IceCave extends CardImpl { + + public IceCave(UUID ownerId, CardSetInfo setInfo) { + super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{3}{U}{U}"); + + + // Whenever a player casts a spell, any other player may pay that spell's mana cost. If a player does, counter the spell. (Mana cost includes color.) + this.addAbility(new SpellCastAllTriggeredAbility(Zone.BATTLEFIELD, new IceCaveEffect(), new FilterSpell(), false, SetTargetPointer.SPELL)); + } + + public IceCave(final IceCave card) { + super(card); + } + + @Override + public IceCave copy() { + return new IceCave(this); + } +} + +class IceCaveEffect extends OneShotEffect { + + public IceCaveEffect() { + super(Outcome.AIDontUseIt); + this.staticText = "any other player may pay that spell's mana cost. If a player does, counter the spell"; + } + + public IceCaveEffect(final IceCaveEffect effect) { + super(effect); + } + + @Override + public IceCaveEffect copy() { + return new IceCaveEffect(this); + } + + @Override + public boolean apply(Game game, Ability source) { + Player controller = game.getPlayer(source.getControllerId()); + Permanent sourcePermanent = game.getPermanentOrLKIBattlefield(source.getSourceId()); + Spell spell = (Spell) game.getStack().getStackObject(targetPointer.getFirst(game, source)); + if(sourcePermanent != null && spell != null) { + Cost cost = new ManaCostsImpl(spell.getSpellAbility().getManaCosts().getText()); + for (UUID playerId : game.getState().getPlayerList(source.getControllerId())) { + Player player = game.getPlayer(playerId); + if(player.getId() != spell.getControllerId()) { + cost.clearPaid(); + if (cost.canPay(source, source.getSourceId(), player.getId(), game) + && player.chooseUse(outcome, "Pay " + cost.getText() + " to counter " + spell.getIdName() + '?', source, game)) { + if (cost.pay(source, game, source.getSourceId(), playerId, false, null)) { + game.informPlayers(player.getLogName() + " pays" + cost.getText() + " to counter " + spell.getIdName() + '.'); + game.getStack().counter(spell.getId(), source.getSourceId(), game); + } + } + } + } + } + return true; + } +} + From 7a0a7d9a2fb95f8d6ea3699acaf156dbe8faedb8 Mon Sep 17 00:00:00 2001 From: ThomasLerner Date: Sun, 9 Apr 2017 06:32:43 -0400 Subject: [PATCH 02/21] Update Apocalypse.java Added Ice Cave entry --- Mage.Sets/src/mage/sets/Apocalypse.java | 1 + 1 file changed, 1 insertion(+) diff --git a/Mage.Sets/src/mage/sets/Apocalypse.java b/Mage.Sets/src/mage/sets/Apocalypse.java index cab2812e694..8dd861e76e9 100644 --- a/Mage.Sets/src/mage/sets/Apocalypse.java +++ b/Mage.Sets/src/mage/sets/Apocalypse.java @@ -72,6 +72,7 @@ public class Apocalypse extends ExpansionSet { cards.add(new SetCardInfo("Grave Defiler", 40, Rarity.UNCOMMON, mage.cards.g.GraveDefiler.class)); cards.add(new SetCardInfo("Haunted Angel", 12, Rarity.UNCOMMON, mage.cards.h.HauntedAngel.class)); cards.add(new SetCardInfo("Helionaut", 13, Rarity.COMMON, mage.cards.h.Helionaut.class)); + cards.add(new SetCardInfo("Ice Cave", 24, Rarity.RARE, mage.cards.i.IceCave.class)); cards.add(new SetCardInfo("Illuminate", 63, Rarity.UNCOMMON, mage.cards.i.Illuminate.class)); cards.add(new SetCardInfo("Illusion // Reality", 129, Rarity.UNCOMMON, mage.cards.i.IllusionReality.class)); cards.add(new SetCardInfo("Index", 25, Rarity.COMMON, mage.cards.i.Index.class)); From d510651bac5573927e53b2875e886c7b3ddb560c Mon Sep 17 00:00:00 2001 From: ThomasLerner Date: Sun, 9 Apr 2017 06:34:37 -0400 Subject: [PATCH 03/21] Update IceCave.java --- Mage.Sets/src/mage/cards/i/IceCave.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mage.Sets/src/mage/cards/i/IceCave.java b/Mage.Sets/src/mage/cards/i/IceCave.java index 916a278e085..81770bbbe90 100644 --- a/Mage.Sets/src/mage/cards/i/IceCave.java +++ b/Mage.Sets/src/mage/cards/i/IceCave.java @@ -51,7 +51,7 @@ import mage.abilities.costs.mana.ManaCostsImpl; /** * - * @author jeffwadsworth + * @author ThomasLerner */ public class IceCave extends CardImpl { From 57b50857cc9733dd96975822906f5cbb5d53b90e Mon Sep 17 00:00:00 2001 From: ThomasLerner Date: Sun, 9 Apr 2017 18:23:34 -0400 Subject: [PATCH 04/21] Update IceCave.java I used getOpponents, but that required changing input from source.getControllerId() to spell.getControllerId() so that it would get the opponents of the player who played the spell, rather than the opponents of the player who controls Ice Cave. I also implemented a null check for the spellController as I made it. --- Mage.Sets/src/mage/cards/i/IceCave.java | 26 ++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/Mage.Sets/src/mage/cards/i/IceCave.java b/Mage.Sets/src/mage/cards/i/IceCave.java index 81770bbbe90..e6474dd0f7c 100644 --- a/Mage.Sets/src/mage/cards/i/IceCave.java +++ b/Mage.Sets/src/mage/cards/i/IceCave.java @@ -94,19 +94,23 @@ class IceCaveEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); Permanent sourcePermanent = game.getPermanentOrLKIBattlefield(source.getSourceId()); Spell spell = (Spell) game.getStack().getStackObject(targetPointer.getFirst(game, source)); - if(sourcePermanent != null && spell != null) { + if(sourcePermanent != null && spell != null && controller != null) { + Player spellController = game.getPlayer(spell.getControllerId()); Cost cost = new ManaCostsImpl(spell.getSpellAbility().getManaCosts().getText()); - for (UUID playerId : game.getState().getPlayerList(source.getControllerId())) { - Player player = game.getPlayer(playerId); - if(player.getId() != spell.getControllerId()) { - cost.clearPaid(); - if (cost.canPay(source, source.getSourceId(), player.getId(), game) - && player.chooseUse(outcome, "Pay " + cost.getText() + " to counter " + spell.getIdName() + '?', source, game)) { - if (cost.pay(source, game, source.getSourceId(), playerId, false, null)) { - game.informPlayers(player.getLogName() + " pays" + cost.getText() + " to counter " + spell.getIdName() + '.'); - game.getStack().counter(spell.getId(), source.getSourceId(), game); + if (spellController != null) { + for (UUID playerId : game.getOpponents(spell.getControllerId())) { + Player player = game.getPlayer(playerId); + if (player != null) { + cost.clearPaid(); + if (cost.canPay(source, source.getSourceId(), player.getId(), game) + && player.chooseUse(outcome, "Pay " + cost.getText() + " to counter " + spell.getIdName() + '?', source, game)) { + if (cost.pay(source, game, source.getSourceId(), playerId, false, null)) { + game.informPlayers(player.getLogName() + " pays" + cost.getText() + " to counter " + spell.getIdName() + '.'); + game.getStack().counter(spell.getId(), source.getSourceId(), game); + return true; + } } - } + } } } } From 7a48387635b38b3f36f1489ecf8492edc8a395e6 Mon Sep 17 00:00:00 2001 From: ThomasLerner Date: Mon, 10 Apr 2017 04:39:10 -0400 Subject: [PATCH 05/21] Fixed not giving counter option to non-opponent players that are not the spell's controller This update brings to code to compliance with LevelX2's reccomendation by using getPlayersInRange(source.getControllerId(), game) and checking manually that the player is not the spell's controller. --- Mage.Sets/src/mage/cards/i/IceCave.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/Mage.Sets/src/mage/cards/i/IceCave.java b/Mage.Sets/src/mage/cards/i/IceCave.java index e6474dd0f7c..228e2d6d4d0 100644 --- a/Mage.Sets/src/mage/cards/i/IceCave.java +++ b/Mage.Sets/src/mage/cards/i/IceCave.java @@ -30,10 +30,8 @@ package mage.cards.i; import mage.abilities.Ability; import mage.abilities.common.SpellCastAllTriggeredAbility; import mage.abilities.effects.OneShotEffect; -import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.cards.CardsImpl; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SetTargetPointer; @@ -43,12 +41,11 @@ import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.stack.Spell; import mage.players.Player; -import mage.util.CardUtil; - -import java.util.UUID; import mage.abilities.costs.Cost; import mage.abilities.costs.mana.ManaCostsImpl; +import java.util.UUID; + /** * * @author ThomasLerner @@ -97,14 +94,14 @@ class IceCaveEffect extends OneShotEffect { if(sourcePermanent != null && spell != null && controller != null) { Player spellController = game.getPlayer(spell.getControllerId()); Cost cost = new ManaCostsImpl(spell.getSpellAbility().getManaCosts().getText()); - if (spellController != null) { - for (UUID playerId : game.getOpponents(spell.getControllerId())) { + if(spellController != null) { + for (UUID playerId : game.getState().getPlayersInRange(source.getControllerId(), game)) { Player player = game.getPlayer(playerId); - if (player != null) { + if(player != null && player != spellController) { cost.clearPaid(); - if (cost.canPay(source, source.getSourceId(), player.getId(), game) + if(cost.canPay(source, source.getSourceId(), player.getId(), game) && player.chooseUse(outcome, "Pay " + cost.getText() + " to counter " + spell.getIdName() + '?', source, game)) { - if (cost.pay(source, game, source.getSourceId(), playerId, false, null)) { + if(cost.pay(source, game, source.getSourceId(), playerId, false, null)) { game.informPlayers(player.getLogName() + " pays" + cost.getText() + " to counter " + spell.getIdName() + '.'); game.getStack().counter(spell.getId(), source.getSourceId(), game); return true; @@ -117,4 +114,3 @@ class IceCaveEffect extends OneShotEffect { return true; } } - From 8b44327312c83d24311da9569e5446087fb325d4 Mon Sep 17 00:00:00 2001 From: ingmargoudt Date: Fri, 7 Apr 2017 23:55:10 +0200 Subject: [PATCH 06/21] wrong negation --- Mage.Server/src/main/java/mage/server/TableController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mage.Server/src/main/java/mage/server/TableController.java b/Mage.Server/src/main/java/mage/server/TableController.java index cda5d61d04b..be9854ae522 100644 --- a/Mage.Server/src/main/java/mage/server/TableController.java +++ b/Mage.Server/src/main/java/mage/server/TableController.java @@ -527,7 +527,7 @@ public class TableController { match.quitMatch(playerId); } Optional user = UserManager.instance.getUser(userId); - if (!user.isPresent()) { + if (user.isPresent()) { ChatManager.instance.broadcast(chatId, user.get().getName(), "has left the table", ChatMessage.MessageColor.BLUE, true, ChatMessage.MessageType.STATUS, ChatMessage.SoundToPlay.PlayerLeft); if (!table.isTournamentSubTable()) { user.get().removeTable(playerId); From 813d84274aebc61e2153e164d17f267798865fb8 Mon Sep 17 00:00:00 2001 From: ingmargoudt Date: Sun, 9 Apr 2017 10:50:31 +0200 Subject: [PATCH 07/21] removed string constructor in SuperTypePredicate --- Mage.Sets/src/mage/cards/a/Anathemancer.java | 3 ++- Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java | 7 ++----- .../src/mage/cards/a/AyumiTheLastVisitor.java | 2 +- Mage.Sets/src/mage/cards/b/BantPanorama.java | 6 +++--- Mage.Sets/src/mage/cards/b/BurningEarth.java | 3 ++- Mage.Sets/src/mage/cards/c/CanopyVista.java | 6 +++--- Mage.Sets/src/mage/cards/c/CaptainSisay.java | 2 +- Mage.Sets/src/mage/cards/c/ChillToTheBone.java | 3 ++- Mage.Sets/src/mage/cards/c/ColdSnap.java | 7 ++----- Mage.Sets/src/mage/cards/d/DayOfDestiny.java | 2 +- Mage.Sets/src/mage/cards/d/DiamondFaerie.java | 2 +- .../src/mage/cards/d/DjinnOfInfiniteDeceits.java | 7 ++----- Mage.Sets/src/mage/cards/e/Earthcraft.java | 3 ++- Mage.Sets/src/mage/cards/e/EmpressGalina.java | 2 +- Mage.Sets/src/mage/cards/e/Encroach.java | 3 ++- Mage.Sets/src/mage/cards/e/EsperPanorama.java | 3 ++- Mage.Sets/src/mage/cards/e/EyeOfSingularity.java | 4 ++-- Mage.Sets/src/mage/cards/f/FirebrandRanger.java | 4 ++-- Mage.Sets/src/mage/cards/f/FirewildBorderpost.java | 3 ++- Mage.Sets/src/mage/cards/g/GlacialCrevasses.java | 3 ++- Mage.Sets/src/mage/cards/g/GoryosVengeance.java | 7 ++----- Mage.Sets/src/mage/cards/g/GrixisPanorama.java | 3 ++- Mage.Sets/src/mage/cards/h/HallowedGround.java | 6 ++++-- .../src/mage/cards/h/HeidarRimewindMaster.java | 2 +- Mage.Sets/src/mage/cards/h/HeroesPodium.java | 6 +++--- Mage.Sets/src/mage/cards/h/HerosBlade.java | 11 ++++------- Mage.Sets/src/mage/cards/h/HerosDemise.java | 8 +++++--- Mage.Sets/src/mage/cards/h/HonorWornShaku.java | 13 +++++++------ Mage.Sets/src/mage/cards/i/Imperiosaur.java | 6 ++++-- Mage.Sets/src/mage/cards/i/IntoTheNorth.java | 6 ++++-- .../src/mage/cards/i/IwamoriOfTheOpenFist.java | 2 +- .../src/mage/cards/j/JaliraMasterPolymorphist.java | 2 +- Mage.Sets/src/mage/cards/j/JediEnclave.java | 3 ++- Mage.Sets/src/mage/cards/j/JundPanorama.java | 12 +++++++----- Mage.Sets/src/mage/cards/j/JungleVillage.java | 8 +++++--- Mage.Sets/src/mage/cards/k/Karakas.java | 10 +++++----- Mage.Sets/src/mage/cards/k/KashiTribeElite.java | 9 +++++---- .../src/mage/cards/k/KikiJikiMirrorBreaker.java | 2 +- Mage.Sets/src/mage/cards/k/KondasBanner.java | 2 +- Mage.Sets/src/mage/cards/k/KondasHatamoto.java | 6 ++++-- Mage.Sets/src/mage/cards/l/LayBareTheHeart.java | 6 ++++-- Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java | 6 ++++-- Mage.Sets/src/mage/cards/l/Lifespinner.java | 6 ++++-- .../mage/cards/l/LilianaDefiantNecromancer.java | 10 ++++------ Mage.Sets/src/mage/cards/l/Lobotomy.java | 12 +++++------- Mage.Sets/src/mage/cards/l/LoyalRetainers.java | 3 ++- Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java | 2 +- Mage.Sets/src/mage/cards/m/Mirrorweave.java | 6 ++++-- Mage.Sets/src/mage/cards/m/MistveinBorderpost.java | 8 +++++--- Mage.Sets/src/mage/cards/n/NayaPanorama.java | 12 +++++++----- Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java | 2 +- Mage.Sets/src/mage/cards/o/OhranYeti.java | 2 +- .../mage/cards/o/OkinaTempleToTheGrandfathers.java | 8 ++++---- Mage.Sets/src/mage/cards/p/PrairieStream.java | 7 ++++--- Mage.Sets/src/mage/cards/r/RimeDryad.java | 6 ++++-- Mage.Sets/src/mage/cards/r/RimeTransfusion.java | 2 +- Mage.Sets/src/mage/cards/r/RimewindCryomancer.java | 6 ++++-- Mage.Sets/src/mage/cards/r/RimewindTaskmage.java | 6 ++++-- Mage.Sets/src/mage/cards/r/RonomHulk.java | 6 ++++-- .../src/mage/cards/s/ShinkaTheBloodsoakedKeep.java | 8 ++++---- .../src/mage/cards/s/ShizoDeathsStorehouse.java | 8 ++++---- Mage.Sets/src/mage/cards/s/SithRuins.java | 3 ++- Mage.Sets/src/mage/cards/s/Skred.java | 3 ++- .../src/mage/cards/s/SquanderedResources.java | 10 ++++++---- Mage.Sets/src/mage/cards/s/StarCompass.java | 10 ++++++---- Mage.Sets/src/mage/cards/s/SunkenHollow.java | 7 ++++--- Mage.Sets/src/mage/cards/s/Sunstone.java | 6 ++++-- Mage.Sets/src/mage/cards/s/SurgicalExtraction.java | 14 ++++++-------- Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java | 2 +- Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java | 11 +++++------ Mage.Sets/src/mage/cards/t/TimeOfNeed.java | 9 +++++---- Mage.Sets/src/mage/cards/t/TsaboTavoc.java | 4 ++-- Mage.Sets/src/mage/cards/u/UnderworldSlums.java | 3 ++- Mage.Sets/src/mage/cards/v/VolcanicOffering.java | 8 +++++--- .../src/mage/cards/v/VolrathsShapeshifter.java | 2 +- Mage.Sets/src/mage/cards/w/WaveOfVitriol.java | 10 ++++------ Mage.Sets/src/mage/cards/w/Whiteout.java | 6 ++++-- .../src/mage/cards/w/WildernessElemental.java | 10 ++++------ .../src/mage/cards/w/WildfieldBorderpost.java | 8 +++++--- Mage.Sets/src/mage/cards/w/WillowSatyr.java | 6 ++++-- Mage.Sets/src/mage/cards/w/WoodlandBellower.java | 6 ++++-- .../src/mage/cards/y/YomijiWhoBarsTheWay.java | 5 +++-- .../mage/abilities/effects/common/CopyEffect.java | 5 +++-- .../abilities/effects/common/CopyTokenEffect.java | 2 +- .../mage/abilities/keyword/TransformAbility.java | 2 +- .../predicate/mageobject/SupertypePredicate.java | 4 ---- .../mage/util/functions/CopyTokenFunction.java | 2 +- 87 files changed, 265 insertions(+), 224 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/Anathemancer.java b/Mage.Sets/src/mage/cards/a/Anathemancer.java index d677b6249c3..fcf3cee153d 100644 --- a/Mage.Sets/src/mage/cards/a/Anathemancer.java +++ b/Mage.Sets/src/mage/cards/a/Anathemancer.java @@ -38,6 +38,7 @@ import mage.abilities.keyword.UnearthAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -88,7 +89,7 @@ class AnathemancerCount implements DynamicValue { } FilterLandPermanent filter = new FilterLandPermanent(); - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); filter.add(new ControllerIdPredicate(sourceAbility.getFirstTarget())); return game.getBattlefield().count(filter, sourceAbility.getSourceId(), sourceAbility.getControllerId(), game); diff --git a/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java b/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java index 7877964a6ac..9ca666e3b2d 100644 --- a/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java +++ b/Mage.Sets/src/mage/cards/a/ArenaOfTheAncients.java @@ -12,10 +12,7 @@ import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.abilities.effects.common.TapAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.TargetController; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -29,7 +26,7 @@ public class ArenaOfTheAncients extends CardImpl { private final static FilterCreaturePermanent legendaryFilter = new FilterCreaturePermanent("legendary creatures"); static { - legendaryFilter.add(new SupertypePredicate("Legendary")); + legendaryFilter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public ArenaOfTheAncients(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java b/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java index 0e6284960cd..19d6dd6392e 100644 --- a/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java +++ b/Mage.Sets/src/mage/cards/a/AyumiTheLastVisitor.java @@ -46,7 +46,7 @@ public class AyumiTheLastVisitor extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("Legendary land"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public AyumiTheLastVisitor(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BantPanorama.java b/Mage.Sets/src/mage/cards/b/BantPanorama.java index be57dd522d9..8a516cdacc5 100644 --- a/Mage.Sets/src/mage/cards/b/BantPanorama.java +++ b/Mage.Sets/src/mage/cards/b/BantPanorama.java @@ -38,6 +38,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -49,7 +50,6 @@ import mage.target.common.TargetCardInLibrary; import java.util.UUID; /** - * * @author North */ public class BantPanorama extends CardImpl { @@ -58,7 +58,7 @@ public class BantPanorama extends CardImpl { static { filter.add(new CardTypePredicate(CardType.LAND)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate("Forest"), new SubtypePredicate("Plains"), @@ -66,7 +66,7 @@ public class BantPanorama extends CardImpl { } public BantPanorama(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.LAND},""); + super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // {T}: Add {C} to your mana pool. this.addAbility(new ColorlessManaAbility()); diff --git a/Mage.Sets/src/mage/cards/b/BurningEarth.java b/Mage.Sets/src/mage/cards/b/BurningEarth.java index eb0950150f1..06f967f5b8e 100644 --- a/Mage.Sets/src/mage/cards/b/BurningEarth.java +++ b/Mage.Sets/src/mage/cards/b/BurningEarth.java @@ -33,6 +33,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SetTargetPointer; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -48,7 +49,7 @@ public class BurningEarth extends CardImpl { private final static FilterLandPermanent filter = new FilterLandPermanent("a player taps a nonbasic land"); static { - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); } public BurningEarth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CanopyVista.java b/Mage.Sets/src/mage/cards/c/CanopyVista.java index ebfd4bf5478..50754aec89b 100644 --- a/Mage.Sets/src/mage/cards/c/CanopyVista.java +++ b/Mage.Sets/src/mage/cards/c/CanopyVista.java @@ -39,13 +39,13 @@ import mage.abilities.mana.WhiteManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import java.util.UUID; /** - * * @author fireshoes */ public class CanopyVista extends CardImpl { @@ -53,11 +53,11 @@ public class CanopyVista extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public CanopyVista(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.LAND},""); + super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); this.subtype.add("Forest"); this.subtype.add("Plains"); diff --git a/Mage.Sets/src/mage/cards/c/CaptainSisay.java b/Mage.Sets/src/mage/cards/c/CaptainSisay.java index 7e016b5c8e3..b9527079059 100644 --- a/Mage.Sets/src/mage/cards/c/CaptainSisay.java +++ b/Mage.Sets/src/mage/cards/c/CaptainSisay.java @@ -51,7 +51,7 @@ public class CaptainSisay extends CardImpl { private static final FilterCard filter = new FilterCard("legendary card"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public CaptainSisay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ChillToTheBone.java b/Mage.Sets/src/mage/cards/c/ChillToTheBone.java index 3a8d00131fe..75b3d381d3b 100644 --- a/Mage.Sets/src/mage/cards/c/ChillToTheBone.java +++ b/Mage.Sets/src/mage/cards/c/ChillToTheBone.java @@ -31,6 +31,7 @@ import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -47,7 +48,7 @@ public class ChillToTheBone extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonsnow creature"); static { - filter.add(Predicates.not(new SupertypePredicate("Snow"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); } public ChillToTheBone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ColdSnap.java b/Mage.Sets/src/mage/cards/c/ColdSnap.java index d238f874c47..db251815e34 100644 --- a/Mage.Sets/src/mage/cards/c/ColdSnap.java +++ b/Mage.Sets/src/mage/cards/c/ColdSnap.java @@ -35,10 +35,7 @@ import mage.abilities.effects.OneShotEffect; import mage.abilities.keyword.CumulativeUpkeepAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.TargetController; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -77,7 +74,7 @@ class ColdSnapDamageTargetEffect extends OneShotEffect{ private static final FilterLandPermanent filter = new FilterLandPermanent("snow lands"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public ColdSnapDamageTargetEffect() diff --git a/Mage.Sets/src/mage/cards/d/DayOfDestiny.java b/Mage.Sets/src/mage/cards/d/DayOfDestiny.java index aca43c5e361..7b07e66c421 100644 --- a/Mage.Sets/src/mage/cards/d/DayOfDestiny.java +++ b/Mage.Sets/src/mage/cards/d/DayOfDestiny.java @@ -49,7 +49,7 @@ public class DayOfDestiny extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Legendary creatures"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public DayOfDestiny(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DiamondFaerie.java b/Mage.Sets/src/mage/cards/d/DiamondFaerie.java index 095c40b53cb..df0e0d040a5 100644 --- a/Mage.Sets/src/mage/cards/d/DiamondFaerie.java +++ b/Mage.Sets/src/mage/cards/d/DiamondFaerie.java @@ -52,7 +52,7 @@ public class DiamondFaerie extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Snow creatures"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public DiamondFaerie(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java b/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java index a934d84537e..63f11545ecb 100644 --- a/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java +++ b/Mage.Sets/src/mage/cards/d/DjinnOfInfiniteDeceits.java @@ -37,10 +37,7 @@ import mage.abilities.effects.common.continuous.ExchangeControlTargetEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.TurnPhase; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -57,7 +54,7 @@ public class DjinnOfInfiniteDeceits extends CardImpl { private static final String rule = "Exchange control of two target nonlegendary creatures"; private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate("Legendary"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } public DjinnOfInfiniteDeceits(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Earthcraft.java b/Mage.Sets/src/mage/cards/e/Earthcraft.java index 08218e471f1..5ec5770778b 100644 --- a/Mage.Sets/src/mage/cards/e/Earthcraft.java +++ b/Mage.Sets/src/mage/cards/e/Earthcraft.java @@ -34,6 +34,7 @@ import mage.abilities.effects.common.UntapTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; @@ -57,7 +58,7 @@ public class Earthcraft extends CardImpl { static { filterCreature.add(Predicates.not(new TappedPredicate())); filterLand.add(new CardTypePredicate(CardType.LAND)); - filterLand.add(new SupertypePredicate("Basic")); + filterLand.add(new SupertypePredicate(SuperType.BASIC)); } public Earthcraft(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EmpressGalina.java b/Mage.Sets/src/mage/cards/e/EmpressGalina.java index 923ad57ce8a..c41b705e3e2 100644 --- a/Mage.Sets/src/mage/cards/e/EmpressGalina.java +++ b/Mage.Sets/src/mage/cards/e/EmpressGalina.java @@ -54,7 +54,7 @@ public class EmpressGalina extends CardImpl { private static final FilterPermanent filter = new FilterPermanent("legendary permanent"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public EmpressGalina(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Encroach.java b/Mage.Sets/src/mage/cards/e/Encroach.java index 2fafeb3c3ce..bac58da3652 100644 --- a/Mage.Sets/src/mage/cards/e/Encroach.java +++ b/Mage.Sets/src/mage/cards/e/Encroach.java @@ -31,6 +31,7 @@ import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -48,7 +49,7 @@ public class Encroach extends CardImpl { private static final FilterCard filter = new FilterCard("a nonbasic land card"); static { - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); filter.add(new CardTypePredicate(CardType.LAND)); } diff --git a/Mage.Sets/src/mage/cards/e/EsperPanorama.java b/Mage.Sets/src/mage/cards/e/EsperPanorama.java index 702ea7d96c7..85d542b29ed 100644 --- a/Mage.Sets/src/mage/cards/e/EsperPanorama.java +++ b/Mage.Sets/src/mage/cards/e/EsperPanorama.java @@ -38,6 +38,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -58,7 +59,7 @@ public class EsperPanorama extends CardImpl { static { filter.add(new CardTypePredicate(CardType.LAND)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate("Plains"), new SubtypePredicate("Island"), diff --git a/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java b/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java index 8efa1c92ee7..f8608705ba3 100644 --- a/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java +++ b/Mage.Sets/src/mage/cards/e/EyeOfSingularity.java @@ -83,7 +83,7 @@ class EyeOfSingularityETBEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); } EyeOfSingularityETBEffect() { @@ -171,7 +171,7 @@ class EyeOfSingularityTriggeredEffect extends OneShotEffect { private static final FilterPermanent filter = new FilterPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); } EyeOfSingularityTriggeredEffect() { diff --git a/Mage.Sets/src/mage/cards/f/FirebrandRanger.java b/Mage.Sets/src/mage/cards/f/FirebrandRanger.java index f38b535482a..d4e22a78c66 100644 --- a/Mage.Sets/src/mage/cards/f/FirebrandRanger.java +++ b/Mage.Sets/src/mage/cards/f/FirebrandRanger.java @@ -38,6 +38,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -83,7 +84,7 @@ class PutLandOnBattlefieldEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("basic land card"); static { - filter.add(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate("Basic"))); + filter.add(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC))); } private static final String choiceText = "Put a basic land card from your hand onto the battlefield?"; @@ -114,7 +115,6 @@ class PutLandOnBattlefieldEffect extends OneShotEffect { Card card = game.getCard(target.getFirstTarget()); if (card != null) { card.putOntoBattlefield(game, Zone.HAND, source.getSourceId(), source.getControllerId()); - return true; } } diff --git a/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java b/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java index 7ef953996ca..137f64a214a 100644 --- a/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java +++ b/Mage.Sets/src/mage/cards/f/FirewildBorderpost.java @@ -38,6 +38,7 @@ import mage.abilities.mana.RedManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -54,7 +55,7 @@ public class FirewildBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public FirewildBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java b/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java index b15bf4707f4..7191b238b55 100644 --- a/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java +++ b/Mage.Sets/src/mage/cards/g/GlacialCrevasses.java @@ -36,6 +36,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -54,7 +55,7 @@ public class GlacialCrevasses extends CardImpl { static { filter.add(new SubtypePredicate("Mountain")); - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public GlacialCrevasses(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoryosVengeance.java b/Mage.Sets/src/mage/cards/g/GoryosVengeance.java index 46568679cfc..92481075dc9 100644 --- a/Mage.Sets/src/mage/cards/g/GoryosVengeance.java +++ b/Mage.Sets/src/mage/cards/g/GoryosVengeance.java @@ -40,10 +40,7 @@ import mage.abilities.keyword.SpliceOntoArcaneAbility; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Outcome; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -63,7 +60,7 @@ public class GoryosVengeance extends CardImpl { private static final FilterCard filter = new FilterCard("legendary creature card"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public GoryosVengeance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GrixisPanorama.java b/Mage.Sets/src/mage/cards/g/GrixisPanorama.java index f007789d87c..2dd6af9c783 100644 --- a/Mage.Sets/src/mage/cards/g/GrixisPanorama.java +++ b/Mage.Sets/src/mage/cards/g/GrixisPanorama.java @@ -38,6 +38,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -58,7 +59,7 @@ public class GrixisPanorama extends CardImpl { static { filter.add(new CardTypePredicate(CardType.LAND)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate("Island"), new SubtypePredicate("Swamp"), diff --git a/Mage.Sets/src/mage/cards/h/HallowedGround.java b/Mage.Sets/src/mage/cards/h/HallowedGround.java index 54b842a7f60..a8e5561eed9 100644 --- a/Mage.Sets/src/mage/cards/h/HallowedGround.java +++ b/Mage.Sets/src/mage/cards/h/HallowedGround.java @@ -27,7 +27,6 @@ */ package mage.cards.h; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -35,6 +34,7 @@ import mage.abilities.effects.common.ReturnToHandTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; @@ -42,6 +42,8 @@ import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author Styxo @@ -51,7 +53,7 @@ public class HallowedGround extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("nonsnow land you control"); static { - filter.add(Predicates.not(new SupertypePredicate("Snow"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); } public HallowedGround(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java b/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java index b1f2a29630d..a5fd8ef2a2e 100644 --- a/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java +++ b/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java @@ -55,7 +55,7 @@ public class HeidarRimewindMaster extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control four or more snow permanents"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public HeidarRimewindMaster(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HeroesPodium.java b/Mage.Sets/src/mage/cards/h/HeroesPodium.java index 61e68af17a6..ad6209235c5 100644 --- a/Mage.Sets/src/mage/cards/h/HeroesPodium.java +++ b/Mage.Sets/src/mage/cards/h/HeroesPodium.java @@ -57,7 +57,7 @@ public class HeroesPodium extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Each legendary creature you control"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public HeroesPodium(UUID ownerId, CardSetInfo setInfo) { @@ -90,7 +90,7 @@ class HeroesPodiumLegendaryCount implements DynamicValue { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("other legendary creature you control"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } @Override @@ -122,7 +122,7 @@ class HeroesPodiumEffect extends OneShotEffect { private static final FilterCreatureCard filter = new FilterCreatureCard("a legendary creature card"); static { - filter.add(new SupertypePredicate(("Legendary"))); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public HeroesPodiumEffect() { diff --git a/Mage.Sets/src/mage/cards/h/HerosBlade.java b/Mage.Sets/src/mage/cards/h/HerosBlade.java index 3526b617215..71abb37d83c 100644 --- a/Mage.Sets/src/mage/cards/h/HerosBlade.java +++ b/Mage.Sets/src/mage/cards/h/HerosBlade.java @@ -27,7 +27,6 @@ */ package mage.cards.h; -import java.util.UUID; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -36,16 +35,14 @@ import mage.abilities.effects.common.continuous.BoostEquippedEffect; import mage.abilities.keyword.EquipAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.SetTargetPointer; -import mage.constants.TargetController; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -55,7 +52,7 @@ public class HerosBlade extends CardImpl { private static final FilterPermanent filter = new FilterCreaturePermanent("a legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/h/HerosDemise.java b/Mage.Sets/src/mage/cards/h/HerosDemise.java index 0ad305fb1a1..e6cf5e14539 100644 --- a/Mage.Sets/src/mage/cards/h/HerosDemise.java +++ b/Mage.Sets/src/mage/cards/h/HerosDemise.java @@ -27,15 +27,17 @@ */ package mage.cards.h; -import java.util.UUID; -import mage.constants.CardType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author Loki @@ -45,7 +47,7 @@ public class HerosDemise extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public HerosDemise(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HonorWornShaku.java b/Mage.Sets/src/mage/cards/h/HonorWornShaku.java index 18ff7441776..d03103cd5f3 100644 --- a/Mage.Sets/src/mage/cards/h/HonorWornShaku.java +++ b/Mage.Sets/src/mage/cards/h/HonorWornShaku.java @@ -28,9 +28,6 @@ package mage.cards.h; -import java.util.UUID; - -import mage.constants.CardType; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapTargetCost; @@ -38,6 +35,8 @@ import mage.abilities.effects.common.UntapSourceEffect; import mage.abilities.mana.ColorlessManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.Predicates; @@ -45,6 +44,8 @@ import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.TappedPredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * @author Loki */ @@ -54,15 +55,15 @@ public class HonorWornShaku extends CardImpl { static { filter.add(Predicates.not(new TappedPredicate())); - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public HonorWornShaku(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); + super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); this.addAbility(new ColorlessManaAbility()); Ability ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, - new UntapSourceEffect(), + new UntapSourceEffect(), new TapTargetCost(new TargetControlledPermanent(filter))); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/i/Imperiosaur.java b/Mage.Sets/src/mage/cards/i/Imperiosaur.java index 368c34856e9..fc74d498571 100644 --- a/Mage.Sets/src/mage/cards/i/Imperiosaur.java +++ b/Mage.Sets/src/mage/cards/i/Imperiosaur.java @@ -27,16 +27,18 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; import mage.abilities.StaticAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -45,7 +47,7 @@ public class Imperiosaur extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public Imperiosaur(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IntoTheNorth.java b/Mage.Sets/src/mage/cards/i/IntoTheNorth.java index 99d5a51053b..0a6e1fe43d8 100644 --- a/Mage.Sets/src/mage/cards/i/IntoTheNorth.java +++ b/Mage.Sets/src/mage/cards/i/IntoTheNorth.java @@ -27,16 +27,18 @@ */ package mage.cards.i; -import java.util.UUID; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.filter.common.FilterLandCard; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author LevelX2 @@ -46,7 +48,7 @@ public class IntoTheNorth extends CardImpl { private static final FilterLandCard filter = new FilterLandCard("snow land card"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public IntoTheNorth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java b/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java index aca5c102ae3..1622d083f0a 100644 --- a/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java +++ b/Mage.Sets/src/mage/cards/i/IwamoriOfTheOpenFist.java @@ -83,7 +83,7 @@ class IwamoriOfTheOpenFistEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("legendary creature card"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); filter.add(new CardTypePredicate(CardType.CREATURE)); } diff --git a/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java b/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java index 21396accd93..81553a7661b 100644 --- a/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java +++ b/Mage.Sets/src/mage/cards/j/JaliraMasterPolymorphist.java @@ -59,7 +59,7 @@ public class JaliraMasterPolymorphist extends CardImpl { static { filterPermanent.add(new AnotherPredicate()); - filterCard.add(Predicates.not(new SupertypePredicate("Legendary"))); + filterCard.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } public JaliraMasterPolymorphist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JediEnclave.java b/Mage.Sets/src/mage/cards/j/JediEnclave.java index 0b4c7b096cd..487da2a49c3 100644 --- a/Mage.Sets/src/mage/cards/j/JediEnclave.java +++ b/Mage.Sets/src/mage/cards/j/JediEnclave.java @@ -37,6 +37,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; @@ -92,7 +93,7 @@ public class JediEnclave extends CardImpl { subtypePredicates.add(new SubtypePredicate("Plains")); subtypePredicates.add(new SubtypePredicate("Island")); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/j/JundPanorama.java b/Mage.Sets/src/mage/cards/j/JundPanorama.java index 056992933c0..e99774d7711 100644 --- a/Mage.Sets/src/mage/cards/j/JundPanorama.java +++ b/Mage.Sets/src/mage/cards/j/JundPanorama.java @@ -28,10 +28,6 @@ package mage.cards.j; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.Zone; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; @@ -41,6 +37,10 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.mana.ColorlessManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.SuperType; +import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -48,6 +48,8 @@ import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -58,7 +60,7 @@ public class JundPanorama extends CardImpl { static { filter.add(new CardTypePredicate(CardType.LAND)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate("Swamp"), new SubtypePredicate("Mountain"), diff --git a/Mage.Sets/src/mage/cards/j/JungleVillage.java b/Mage.Sets/src/mage/cards/j/JungleVillage.java index 61d83ad065f..31ae6d1200d 100644 --- a/Mage.Sets/src/mage/cards/j/JungleVillage.java +++ b/Mage.Sets/src/mage/cards/j/JungleVillage.java @@ -27,8 +27,6 @@ */ package mage.cards.j; -import java.util.ArrayList; -import java.util.UUID; import mage.MageObject; import mage.abilities.ActivatedAbilityImpl; import mage.abilities.costs.common.SacrificeSourceCost; @@ -39,6 +37,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; @@ -48,6 +47,9 @@ import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.ArrayList; +import java.util.UUID; + /** * * @author Styxo @@ -91,7 +93,7 @@ public class JungleVillage extends CardImpl { subtypePredicates.add(new SubtypePredicate("Mountain")); subtypePredicates.add(new SubtypePredicate("Forest")); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/k/Karakas.java b/Mage.Sets/src/mage/cards/k/Karakas.java index 9f39d1a2d1a..281f8d80550 100644 --- a/Mage.Sets/src/mage/cards/k/Karakas.java +++ b/Mage.Sets/src/mage/cards/k/Karakas.java @@ -44,18 +44,18 @@ import mage.target.common.TargetCreaturePermanent; import java.util.UUID; /** - * * @author Plopman */ public class Karakas extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); - static{ - filter.add(new SupertypePredicate("Legendary")); + + static { + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } - + public Karakas(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.LAND},""); + super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); addSuperType(SuperType.LEGENDARY); // {tap}: Add {W} to your mana pool. diff --git a/Mage.Sets/src/mage/cards/k/KashiTribeElite.java b/Mage.Sets/src/mage/cards/k/KashiTribeElite.java index 74624c7a756..31514f4c63d 100644 --- a/Mage.Sets/src/mage/cards/k/KashiTribeElite.java +++ b/Mage.Sets/src/mage/cards/k/KashiTribeElite.java @@ -27,9 +27,6 @@ */ package mage.cards.k; -import java.util.UUID; - -import mage.constants.CardType; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.DealsDamageToACreatureTriggeredAbility; @@ -40,12 +37,16 @@ import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; import mage.abilities.keyword.ShroudAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author LevelX @@ -55,7 +56,7 @@ public class KashiTribeElite extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("Legendary Snakes"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); filter.add(new SubtypePredicate("Snake")); } diff --git a/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java b/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java index 89cdbcd9b92..2aa53b60785 100644 --- a/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java +++ b/Mage.Sets/src/mage/cards/k/KikiJikiMirrorBreaker.java @@ -61,7 +61,7 @@ public class KikiJikiMirrorBreaker extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("nonlegendary creature you control"); static { - filter.add(Predicates.not(new SupertypePredicate("Legendary"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } public KikiJikiMirrorBreaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KondasBanner.java b/Mage.Sets/src/mage/cards/k/KondasBanner.java index a385a89b22d..4ef27f1d2f3 100644 --- a/Mage.Sets/src/mage/cards/k/KondasBanner.java +++ b/Mage.Sets/src/mage/cards/k/KondasBanner.java @@ -57,7 +57,7 @@ public class KondasBanner extends CardImpl { private static final FilterControlledCreaturePermanent legendaryFilter = new FilterControlledCreaturePermanent("legendary creatures"); static { - legendaryFilter.add(new SupertypePredicate("Legendary")); + legendaryFilter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public KondasBanner(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KondasHatamoto.java b/Mage.Sets/src/mage/cards/k/KondasHatamoto.java index 6ddb8736051..7e3dd2855b4 100644 --- a/Mage.Sets/src/mage/cards/k/KondasHatamoto.java +++ b/Mage.Sets/src/mage/cards/k/KondasHatamoto.java @@ -27,7 +27,6 @@ */ package mage.cards.k; -import java.util.UUID; import mage.MageInt; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -40,11 +39,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author LevelX @@ -56,7 +58,7 @@ public class KondasHatamoto extends CardImpl { private static final String rule2 = "As long as you control a legendary Samurai, {this} has vigilance"; static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); filter.add(new SubtypePredicate("Samurai")); } diff --git a/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java b/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java index 4a2e53d2967..3603bee7d97 100644 --- a/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java +++ b/Mage.Sets/src/mage/cards/l/LayBareTheHeart.java @@ -27,11 +27,11 @@ */ package mage.cards.l; -import java.util.UUID; import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -39,6 +39,8 @@ import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPlayer; +import java.util.UUID; + /** * * @author fireshoes @@ -49,7 +51,7 @@ public class LayBareTheHeart extends CardImpl { static { filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filter.add(Predicates.not(new SupertypePredicate("Legendary"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } public LayBareTheHeart(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java b/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java index 4c1948b0894..843a84757c0 100644 --- a/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java +++ b/Mage.Sets/src/mage/cards/l/LegionsOfLimDul.java @@ -27,16 +27,18 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageInt; import mage.abilities.keyword.LandwalkAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -46,7 +48,7 @@ public class LegionsOfLimDul extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow swamp"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); filter.add(new SubtypePredicate("Swamp")); } diff --git a/Mage.Sets/src/mage/cards/l/Lifespinner.java b/Mage.Sets/src/mage/cards/l/Lifespinner.java index bbd200ca482..76173a3f377 100644 --- a/Mage.Sets/src/mage/cards/l/Lifespinner.java +++ b/Mage.Sets/src/mage/cards/l/Lifespinner.java @@ -27,7 +27,6 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageInt; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; @@ -36,6 +35,7 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterPermanentCard; @@ -44,6 +44,8 @@ import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -53,7 +55,7 @@ public class Lifespinner extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("legendary Spirit permanent card"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); filter.add(new SubtypePredicate("Spirit")); } diff --git a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java index ac433f8daa2..ad87bb63093 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java @@ -27,7 +27,6 @@ */ package mage.cards.l; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.LoyaltyAbility; import mage.abilities.common.DiesCreatureTriggeredAbility; @@ -43,10 +42,7 @@ import mage.abilities.effects.common.discard.DiscardEachPlayerEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.TargetController; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; @@ -59,6 +55,8 @@ import mage.game.command.Emblem; import mage.target.common.TargetCardInYourGraveyard; import mage.target.targetpointer.FixedTarget; +import java.util.UUID; + /** * * @author LevelX2 @@ -68,7 +66,7 @@ public class LilianaDefiantNecromancer extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("nonlegendary creature with converted mana cost X from your graveyard"); static { - filter.add(Predicates.not(new SupertypePredicate("Legendary"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } UUID ability2Id; diff --git a/Mage.Sets/src/mage/cards/l/Lobotomy.java b/Mage.Sets/src/mage/cards/l/Lobotomy.java index 2b5fb885694..ac6f91080e0 100644 --- a/Mage.Sets/src/mage/cards/l/Lobotomy.java +++ b/Mage.Sets/src/mage/cards/l/Lobotomy.java @@ -27,17 +27,13 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageObject; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; -import mage.cards.Card; -import mage.cards.CardImpl; -import mage.cards.CardSetInfo; -import mage.cards.Cards; -import mage.cards.CardsImpl; +import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -50,6 +46,8 @@ import mage.target.TargetCard; import mage.target.TargetPlayer; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -79,7 +77,7 @@ class LobotomyEffect extends OneShotEffect { private static final FilterCard filter = new FilterCard("card other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate("Basic")))); + filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC)))); } public LobotomyEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LoyalRetainers.java b/Mage.Sets/src/mage/cards/l/LoyalRetainers.java index 8281c286b88..b0b5c76c3de 100644 --- a/Mage.Sets/src/mage/cards/l/LoyalRetainers.java +++ b/Mage.Sets/src/mage/cards/l/LoyalRetainers.java @@ -36,6 +36,7 @@ import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffec import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -52,7 +53,7 @@ public class LoyalRetainers extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("legendary creature card from your graveyard"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public LoyalRetainers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java b/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java index b659af86f9e..f141991953a 100644 --- a/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java +++ b/Mage.Sets/src/mage/cards/m/MagusOfTheMoon.java @@ -53,7 +53,7 @@ public class MagusOfTheMoon extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } public MagusOfTheMoon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Mirrorweave.java b/Mage.Sets/src/mage/cards/m/Mirrorweave.java index 0d5f5b6c7c3..0765b98cac9 100644 --- a/Mage.Sets/src/mage/cards/m/Mirrorweave.java +++ b/Mage.Sets/src/mage/cards/m/Mirrorweave.java @@ -27,7 +27,6 @@ */ package mage.cards.m; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -35,6 +34,7 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; @@ -45,6 +45,8 @@ import mage.players.Player; import mage.target.TargetPermanent; import mage.util.functions.EmptyApplyToPermanent; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -54,7 +56,7 @@ public class Mirrorweave extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonlegendary creature"); static { - filter.add(Predicates.not(new SupertypePredicate("Legendary"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); } public Mirrorweave(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java b/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java index 38ab7305e3d..d0ef07c1a00 100644 --- a/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java +++ b/Mage.Sets/src/mage/cards/m/MistveinBorderpost.java @@ -28,9 +28,7 @@ package mage.cards.m; -import java.util.UUID; import mage.abilities.Ability; -import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.costs.AlternativeCostSourceAbility; import mage.abilities.costs.common.ReturnToHandChosenControlledPermanentCost; @@ -39,11 +37,15 @@ import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlueManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author Loki @@ -53,7 +55,7 @@ public class MistveinBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public MistveinBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NayaPanorama.java b/Mage.Sets/src/mage/cards/n/NayaPanorama.java index 8d617f45c71..7a670f975cf 100644 --- a/Mage.Sets/src/mage/cards/n/NayaPanorama.java +++ b/Mage.Sets/src/mage/cards/n/NayaPanorama.java @@ -27,10 +27,6 @@ */ package mage.cards.n; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.Zone; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; @@ -40,6 +36,10 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.mana.ColorlessManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.SuperType; +import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -47,6 +47,8 @@ import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author North @@ -58,7 +60,7 @@ public class NayaPanorama extends CardImpl { static { filter.add(new CardTypePredicate(CardType.LAND)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(Predicates.or( new SubtypePredicate("Mountain"), new SubtypePredicate("Forest"), diff --git a/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java b/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java index 270e932e044..9d4d28abca9 100644 --- a/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java +++ b/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java @@ -57,7 +57,7 @@ public class NissaVastwoodSeer extends CardImpl { private static final FilterCard filter = new FilterCard("basic Forest card"); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); filter.add(new SubtypePredicate("Forest")); } diff --git a/Mage.Sets/src/mage/cards/o/OhranYeti.java b/Mage.Sets/src/mage/cards/o/OhranYeti.java index d1d9f79b667..f3c52a8b826 100644 --- a/Mage.Sets/src/mage/cards/o/OhranYeti.java +++ b/Mage.Sets/src/mage/cards/o/OhranYeti.java @@ -54,7 +54,7 @@ public class OhranYeti extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("snow creature"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public OhranYeti(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java b/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java index d62a77c09a4..b000965aa2a 100644 --- a/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java +++ b/Mage.Sets/src/mage/cards/o/OkinaTempleToTheGrandfathers.java @@ -28,9 +28,6 @@ package mage.cards.o; -import java.util.UUID; - -import mage.constants.*; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -39,10 +36,13 @@ import mage.abilities.effects.common.continuous.BoostTargetEffect; import mage.abilities.mana.GreenManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * @author Loki */ @@ -51,7 +51,7 @@ public class OkinaTempleToTheGrandfathers extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public OkinaTempleToTheGrandfathers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PrairieStream.java b/Mage.Sets/src/mage/cards/p/PrairieStream.java index 859efd787dc..df0c62b8f19 100644 --- a/Mage.Sets/src/mage/cards/p/PrairieStream.java +++ b/Mage.Sets/src/mage/cards/p/PrairieStream.java @@ -27,8 +27,6 @@ */ package mage.cards.p; -import java.util.UUID; - import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -41,9 +39,12 @@ import mage.abilities.mana.WhiteManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +54,7 @@ public class PrairieStream extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public PrairieStream(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimeDryad.java b/Mage.Sets/src/mage/cards/r/RimeDryad.java index 0b10b3d0aa1..17f06a52f4b 100644 --- a/Mage.Sets/src/mage/cards/r/RimeDryad.java +++ b/Mage.Sets/src/mage/cards/r/RimeDryad.java @@ -27,16 +27,18 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.keyword.LandwalkAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -46,7 +48,7 @@ public class RimeDryad extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("snow forest"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); filter.add(new SubtypePredicate("Forest")); } diff --git a/Mage.Sets/src/mage/cards/r/RimeTransfusion.java b/Mage.Sets/src/mage/cards/r/RimeTransfusion.java index 6fb01fcf536..4db901378e9 100644 --- a/Mage.Sets/src/mage/cards/r/RimeTransfusion.java +++ b/Mage.Sets/src/mage/cards/r/RimeTransfusion.java @@ -60,7 +60,7 @@ public class RimeTransfusion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("except by snow creatures until end of turn"); static { - filter.add(Predicates.not(new SupertypePredicate("Snow"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.SNOW))); } public RimeTransfusion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java b/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java index e67b2fdf7b1..9a96a52a426 100644 --- a/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java +++ b/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java @@ -27,7 +27,6 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.CountType; @@ -39,11 +38,14 @@ import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetActivatedAbility; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +55,7 @@ public class RimewindCryomancer extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control four or more snow permanents"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public RimewindCryomancer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java b/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java index 36124704fce..b985db5dd04 100644 --- a/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java +++ b/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java @@ -27,7 +27,6 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.CountType; @@ -39,11 +38,14 @@ import mage.abilities.effects.common.MayTapOrUntapTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +55,7 @@ public class RimewindTaskmage extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledPermanent("you control four or more snow permanents"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public RimewindTaskmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RonomHulk.java b/Mage.Sets/src/mage/cards/r/RonomHulk.java index 4c6ded58f25..0d3ce044d9f 100644 --- a/Mage.Sets/src/mage/cards/r/RonomHulk.java +++ b/Mage.Sets/src/mage/cards/r/RonomHulk.java @@ -27,7 +27,6 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.keyword.CumulativeUpkeepAbility; @@ -35,9 +34,12 @@ import mage.abilities.keyword.ProtectionAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author LoneFox @@ -47,7 +49,7 @@ public class RonomHulk extends CardImpl { private static final FilterCard filter = new FilterCard("snow"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public RonomHulk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java b/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java index e3ad49738c2..dd5d7ced493 100644 --- a/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java +++ b/Mage.Sets/src/mage/cards/s/ShinkaTheBloodsoakedKeep.java @@ -28,9 +28,6 @@ package mage.cards.s; -import java.util.UUID; - -import mage.constants.*; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -40,10 +37,13 @@ import mage.abilities.keyword.FirstStrikeAbility; import mage.abilities.mana.RedManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * @author Loki */ @@ -52,7 +52,7 @@ public class ShinkaTheBloodsoakedKeep extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public ShinkaTheBloodsoakedKeep(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java b/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java index 586873b3749..048e855a62c 100644 --- a/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java +++ b/Mage.Sets/src/mage/cards/s/ShizoDeathsStorehouse.java @@ -28,9 +28,6 @@ package mage.cards.s; -import java.util.UUID; - -import mage.constants.*; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -40,10 +37,13 @@ import mage.abilities.keyword.FearAbility; import mage.abilities.mana.BlackManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * @author Loki */ @@ -52,7 +52,7 @@ public class ShizoDeathsStorehouse extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public ShizoDeathsStorehouse(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SithRuins.java b/Mage.Sets/src/mage/cards/s/SithRuins.java index 62eb95363be..e123722f666 100644 --- a/Mage.Sets/src/mage/cards/s/SithRuins.java +++ b/Mage.Sets/src/mage/cards/s/SithRuins.java @@ -37,6 +37,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; @@ -92,7 +93,7 @@ public class SithRuins extends CardImpl { subtypePredicates.add(new SubtypePredicate("Mountain")); subtypePredicates.add(new SubtypePredicate("Island")); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/s/Skred.java b/Mage.Sets/src/mage/cards/s/Skred.java index 14c99063f2b..0bb3d6fd64f 100644 --- a/Mage.Sets/src/mage/cards/s/Skred.java +++ b/Mage.Sets/src/mage/cards/s/Skred.java @@ -33,6 +33,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.game.Game; @@ -69,7 +70,7 @@ class SkredDamageEffect extends OneShotEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("equal to the number of snow permanents you control."); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public SkredDamageEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SquanderedResources.java b/Mage.Sets/src/mage/cards/s/SquanderedResources.java index 89893b24c28..21a2111de64 100644 --- a/Mage.Sets/src/mage/cards/s/SquanderedResources.java +++ b/Mage.Sets/src/mage/cards/s/SquanderedResources.java @@ -27,9 +27,6 @@ */ package mage.cards.s; -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; import mage.Mana; import mage.abilities.Abilities; import mage.abilities.Ability; @@ -44,6 +41,7 @@ import mage.choices.Choice; import mage.choices.ChoiceColor; import mage.constants.CardType; import mage.constants.ColoredManaSymbol; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; @@ -53,6 +51,10 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.common.TargetControlledPermanent; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + /** * * @author escplan9 (Derek Monturo - dmontur1 at gmail dot com) @@ -83,7 +85,7 @@ class SquanderedResourcesEffect extends ManaEffect { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public SquanderedResourcesEffect() { diff --git a/Mage.Sets/src/mage/cards/s/StarCompass.java b/Mage.Sets/src/mage/cards/s/StarCompass.java index 1bf4c6f8c93..97de986d414 100644 --- a/Mage.Sets/src/mage/cards/s/StarCompass.java +++ b/Mage.Sets/src/mage/cards/s/StarCompass.java @@ -27,9 +27,6 @@ */ package mage.cards.s; -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; import mage.Mana; import mage.abilities.Abilities; import mage.abilities.Ability; @@ -43,6 +40,7 @@ import mage.choices.Choice; import mage.choices.ChoiceColor; import mage.constants.CardType; import mage.constants.ColoredManaSymbol; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; @@ -51,6 +49,10 @@ import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + /** * * @author anonymous @@ -102,7 +104,7 @@ class StarCompassManaEffect extends ManaEffect { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent(); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public StarCompassManaEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SunkenHollow.java b/Mage.Sets/src/mage/cards/s/SunkenHollow.java index d9cd0c0a19a..f6f875e5156 100644 --- a/Mage.Sets/src/mage/cards/s/SunkenHollow.java +++ b/Mage.Sets/src/mage/cards/s/SunkenHollow.java @@ -27,8 +27,6 @@ */ package mage.cards.s; -import java.util.UUID; - import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -41,9 +39,12 @@ import mage.abilities.mana.BlueManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +54,7 @@ public class SunkenHollow extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent(); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public SunkenHollow(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunstone.java b/Mage.Sets/src/mage/cards/s/Sunstone.java index 0500293dff2..a40654b74b2 100644 --- a/Mage.Sets/src/mage/cards/s/Sunstone.java +++ b/Mage.Sets/src/mage/cards/s/Sunstone.java @@ -27,7 +27,6 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; @@ -38,11 +37,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author Quercitron @@ -52,7 +54,7 @@ public class Sunstone extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("a snow land"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public Sunstone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java b/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java index 6da76539b66..e9e2b9e2eac 100644 --- a/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java +++ b/Mage.Sets/src/mage/cards/s/SurgicalExtraction.java @@ -27,17 +27,12 @@ */ package mage.cards.s; -import java.util.List; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; -import mage.cards.Card; -import mage.cards.CardImpl; -import mage.cards.CardSetInfo; -import mage.cards.Cards; -import mage.cards.CardsImpl; +import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; @@ -50,6 +45,9 @@ import mage.target.common.TargetCardInGraveyard; import mage.target.common.TargetCardInHand; import mage.target.common.TargetCardInLibrary; +import java.util.List; +import java.util.UUID; + /** * * @author North @@ -59,7 +57,7 @@ public class SurgicalExtraction extends CardImpl { private static final FilterCard filter = new FilterCard("card in a graveyard other than a basic land card"); static { - filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate("Basic")))); + filter.add(Predicates.not(Predicates.and(new CardTypePredicate(CardType.LAND), new SupertypePredicate(SuperType.BASIC)))); } public SurgicalExtraction(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java b/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java index e819825b9a0..a53ddb4b26e 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfTheChosen.java @@ -52,7 +52,7 @@ public class SwordOfTheChosen extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public SwordOfTheChosen(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java b/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java index de02c405e2b..a0b2939c3c1 100644 --- a/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java +++ b/Mage.Sets/src/mage/cards/t/TenzaGodosMaul.java @@ -49,7 +49,6 @@ import mage.target.common.TargetControlledCreaturePermanent; import java.util.UUID; /** - * * @author LevelX */ @@ -62,20 +61,20 @@ public class TenzaGodosMaul extends CardImpl { private static final FilterCreaturePermanent redFilter = new FilterCreaturePermanent("red"); static { - legendaryFilter.add(new SupertypePredicate("Legendary")); + legendaryFilter.add(new SupertypePredicate(SuperType.LEGENDARY)); redFilter.add(new ColorPredicate(ObjectColor.RED)); } public TenzaGodosMaul(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); + super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); addSuperType(SuperType.LEGENDARY); this.subtype.add("Equipment"); // Equipped creature gets +1/+1. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1))); // As long as it's legendary, it gets an additional +2/+2. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( - new BoostEquippedEffect(2, 2), + new BoostEquippedEffect(2, 2), new AttachedToMatchesFilterCondition(legendaryFilter), rule1))); // As long as it's red, it has trample. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( @@ -93,7 +92,7 @@ public class TenzaGodosMaul extends CardImpl { @Override public TenzaGodosMaul copy() { return new TenzaGodosMaul(this); - } + } } diff --git a/Mage.Sets/src/mage/cards/t/TimeOfNeed.java b/Mage.Sets/src/mage/cards/t/TimeOfNeed.java index 66f9f41c878..f961efbb7a5 100644 --- a/Mage.Sets/src/mage/cards/t/TimeOfNeed.java +++ b/Mage.Sets/src/mage/cards/t/TimeOfNeed.java @@ -28,17 +28,18 @@ package mage.cards.t; -import java.util.UUID; - -import mage.constants.CardType; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * @author Loki */ @@ -48,7 +49,7 @@ public class TimeOfNeed extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public TimeOfNeed(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TsaboTavoc.java b/Mage.Sets/src/mage/cards/t/TsaboTavoc.java index d0f16a65a63..04cf89d8a69 100644 --- a/Mage.Sets/src/mage/cards/t/TsaboTavoc.java +++ b/Mage.Sets/src/mage/cards/t/TsaboTavoc.java @@ -56,8 +56,8 @@ public class TsaboTavoc extends CardImpl { private static final FilterCreaturePermanent filterDestroy = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); - filterDestroy.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); + filterDestroy.add(new SupertypePredicate(SuperType.LEGENDARY)); } public TsaboTavoc(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UnderworldSlums.java b/Mage.Sets/src/mage/cards/u/UnderworldSlums.java index 163c81824f5..40fd6b2296f 100644 --- a/Mage.Sets/src/mage/cards/u/UnderworldSlums.java +++ b/Mage.Sets/src/mage/cards/u/UnderworldSlums.java @@ -37,6 +37,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; @@ -92,7 +93,7 @@ public class UnderworldSlums extends CardImpl { subtypePredicates.add(new SubtypePredicate("Mountain")); subtypePredicates.add(new SubtypePredicate("Forest")); filter.add(Predicates.or(subtypePredicates)); - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); TargetCardInLibrary target = new TargetCardInLibrary(filter); addEffect(new SearchLibraryPutInPlayEffect(target, true, true, Outcome.PutLandInPlay)); } diff --git a/Mage.Sets/src/mage/cards/v/VolcanicOffering.java b/Mage.Sets/src/mage/cards/v/VolcanicOffering.java index 2313bd7358f..ec13544e3b0 100644 --- a/Mage.Sets/src/mage/cards/v/VolcanicOffering.java +++ b/Mage.Sets/src/mage/cards/v/VolcanicOffering.java @@ -27,7 +27,6 @@ */ package mage.cards.v; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.SpellAbility; import mage.abilities.effects.OneShotEffect; @@ -35,6 +34,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.TargetController; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandPermanent; @@ -48,6 +48,8 @@ import mage.players.Player; import mage.target.TargetPermanent; import mage.target.common.TargetOpponentsChoicePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -58,7 +60,7 @@ public class VolcanicOffering extends CardImpl { private static final FilterCreaturePermanent filterCreature = new FilterCreaturePermanent("creature you don't control"); static { filterLand.add(new ControllerPredicate(TargetController.NOT_YOU)); - filterLand.add(Predicates.not(new SupertypePredicate("Basic"))); + filterLand.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); filterCreature.add(new ControllerPredicate(TargetController.NOT_YOU)); } public VolcanicOffering(UUID ownerId, CardSetInfo setInfo) { @@ -84,7 +86,7 @@ public class VolcanicOffering extends CardImpl { ability.getTargets().clear(); ability.addTarget(new TargetPermanent(filterLand)); FilterLandPermanent filterLandForOpponent = new FilterLandPermanent("nonbasic land not controlled by " + controller.getLogName()); - filterLandForOpponent.add(Predicates.not(new SupertypePredicate("Basic"))); + filterLandForOpponent.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); filterLandForOpponent.add(Predicates.not(new ControllerIdPredicate(controller.getId()))); ability.addTarget(new TargetOpponentsChoicePermanent(1, 1, filterLandForOpponent, false, true)); diff --git a/Mage.Sets/src/mage/cards/v/VolrathsShapeshifter.java b/Mage.Sets/src/mage/cards/v/VolrathsShapeshifter.java index f62aeb67db9..b91eb925cac 100644 --- a/Mage.Sets/src/mage/cards/v/VolrathsShapeshifter.java +++ b/Mage.Sets/src/mage/cards/v/VolrathsShapeshifter.java @@ -116,7 +116,7 @@ class VolrathsShapeshifterEffect extends ContinuousEffectImpl { permanent.getSuperType().clear(); for (SuperType type : card.getSuperType()) { - permanent.getSuperType().add(type); + permanent.addSuperType(type); } diff --git a/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java b/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java index 82194f7b133..d190a207214 100644 --- a/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java +++ b/Mage.Sets/src/mage/cards/w/WaveOfVitriol.java @@ -27,11 +27,6 @@ */ package mage.cards.w; -import java.util.HashMap; -import java.util.LinkedHashSet; -import java.util.Map; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -40,6 +35,7 @@ import mage.cards.Cards; import mage.cards.CardsImpl; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterBasicLandCard; @@ -51,6 +47,8 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.common.TargetCardInLibrary; +import java.util.*; + /** * * @author LevelX2 @@ -85,7 +83,7 @@ class WaveOfVitriolEffect extends OneShotEffect { new CardTypePredicate(CardType.ENCHANTMENT), Predicates.and( new CardTypePredicate(CardType.LAND), - Predicates.not(new SupertypePredicate("Basic")) + Predicates.not(new SupertypePredicate(SuperType.BASIC)) ) )); } diff --git a/Mage.Sets/src/mage/cards/w/Whiteout.java b/Mage.Sets/src/mage/cards/w/Whiteout.java index 4023cba90d5..8dbb1648801 100644 --- a/Mage.Sets/src/mage/cards/w/Whiteout.java +++ b/Mage.Sets/src/mage/cards/w/Whiteout.java @@ -27,7 +27,6 @@ */ package mage.cards.w; -import java.util.UUID; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.effects.Effect; @@ -38,12 +37,15 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +55,7 @@ public class Whiteout extends CardImpl { private static final FilterControlledLandPermanent filter = new FilterControlledLandPermanent("a snow land"); static { - filter.add(new SupertypePredicate("Snow")); + filter.add(new SupertypePredicate(SuperType.SNOW)); } public Whiteout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildernessElemental.java b/Mage.Sets/src/mage/cards/w/WildernessElemental.java index 4cabdd32755..3838a628998 100644 --- a/Mage.Sets/src/mage/cards/w/WildernessElemental.java +++ b/Mage.Sets/src/mage/cards/w/WildernessElemental.java @@ -27,7 +27,6 @@ */ package mage.cards.w; -import java.util.UUID; import mage.MageInt; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount; @@ -35,15 +34,14 @@ import mage.abilities.effects.common.continuous.SetPowerSourceEffect; import mage.abilities.keyword.TrampleAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.TargetController; -import mage.constants.Zone; +import mage.constants.*; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import java.util.UUID; + /** * * @author LoneFox @@ -53,7 +51,7 @@ public class WildernessElemental extends CardImpl { private static final FilterLandPermanent filter = new FilterLandPermanent("nonbasic lands your opponents control"); static { - filter.add(Predicates.not(new SupertypePredicate("Basic"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.BASIC))); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java b/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java index 9b43932cf2e..85fa05d7e04 100644 --- a/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java +++ b/Mage.Sets/src/mage/cards/w/WildfieldBorderpost.java @@ -28,9 +28,7 @@ package mage.cards.w; -import java.util.UUID; import mage.abilities.Ability; -import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.costs.AlternativeCostSourceAbility; import mage.abilities.costs.common.ReturnToHandChosenControlledPermanentCost; @@ -39,11 +37,15 @@ import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.WhiteManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SuperType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author Loki @@ -53,7 +55,7 @@ public class WildfieldBorderpost extends CardImpl { private static final FilterControlledPermanent filter = new FilterControlledLandPermanent("a basic land"); static { - filter.add(new SupertypePredicate("Basic")); + filter.add(new SupertypePredicate(SuperType.BASIC)); } public WildfieldBorderpost (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WillowSatyr.java b/Mage.Sets/src/mage/cards/w/WillowSatyr.java index 1ed358b37e1..5d3b86bb1a0 100644 --- a/Mage.Sets/src/mage/cards/w/WillowSatyr.java +++ b/Mage.Sets/src/mage/cards/w/WillowSatyr.java @@ -27,7 +27,6 @@ */ package mage.cards.w; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; @@ -42,11 +41,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -56,7 +58,7 @@ public class WillowSatyr extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creature"); static { - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); } public WillowSatyr(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java index 84b0cfac0a7..5f186fa00aa 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java @@ -27,7 +27,6 @@ */ package mage.cards.w; -import java.util.UUID; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; @@ -38,6 +37,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; +import mage.constants.SuperType; import mage.constants.Zone; import mage.filter.Filter; import mage.filter.FilterCard; @@ -50,6 +50,8 @@ import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author fireshoes @@ -96,7 +98,7 @@ class WoodlandBellowerEffect extends OneShotEffect { FilterCard filter = new FilterCard("nonlegendary green creature card with converted mana cost 3 or less"); filter.add(new ColorPredicate(ObjectColor.GREEN)); filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(Predicates.not(new SupertypePredicate("Legendary"))); + filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java b/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java index b707816d037..226c33f8241 100644 --- a/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java +++ b/Mage.Sets/src/mage/cards/y/YomijiWhoBarsTheWay.java @@ -27,7 +27,6 @@ */ package mage.cards.y; -import java.util.UUID; import mage.MageInt; import mage.abilities.common.PutIntoGraveFromBattlefieldAllTriggeredAbility; import mage.abilities.effects.Effect; @@ -40,6 +39,8 @@ import mage.filter.FilterPermanent; import mage.filter.predicate.mageobject.SupertypePredicate; import mage.filter.predicate.permanent.AnotherPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -57,7 +58,7 @@ public class YomijiWhoBarsTheWay extends CardImpl { // Whenever a legendary permanent other than Yomiji, Who Bars the Way is put into a graveyard from the battlefield, return that card to its owner's hand. FilterPermanent filter = new FilterPermanent("a legendary permanent other than " + getName()); filter.add(new AnotherPredicate()); - filter.add(new SupertypePredicate("Legendary")); + filter.add(new SupertypePredicate(SuperType.LEGENDARY)); Effect effect = new ReturnToHandTargetEffect(); effect.setText("return that card to its owner's hand"); this.addAbility(new PutIntoGraveFromBattlefieldAllTriggeredAbility(effect, false, filter, true)); diff --git a/Mage/src/main/java/mage/abilities/effects/common/CopyEffect.java b/Mage/src/main/java/mage/abilities/effects/common/CopyEffect.java index c70164c8573..d57ffbce5c7 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/CopyEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/CopyEffect.java @@ -27,7 +27,6 @@ */ package mage.abilities.effects.common; -import java.util.UUID; import mage.MageObject; import mage.MageObjectReference; import mage.abilities.Ability; @@ -40,6 +39,8 @@ import mage.game.permanent.PermanentCard; import mage.game.permanent.PermanentToken; import mage.util.functions.ApplyToPermanent; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -130,7 +131,7 @@ public class CopyEffect extends ContinuousEffectImpl { } permanent.getSuperType().clear(); for (SuperType type : copyFromObject.getSuperType()) { - permanent.getSuperType().add(type); + permanent.addSuperType(type); } permanent.removeAllAbilities(source.getSourceId(), game); diff --git a/Mage/src/main/java/mage/abilities/effects/common/CopyTokenEffect.java b/Mage/src/main/java/mage/abilities/effects/common/CopyTokenEffect.java index 026854d6ef4..66e162eedf1 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/CopyTokenEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/CopyTokenEffect.java @@ -36,7 +36,7 @@ public class CopyTokenEffect extends ContinuousEffectImpl { } permanent.getSuperType().clear(); for (SuperType type: token.getSuperType()) { - permanent.getSuperType().add(type); + permanent.addSuperType(type); } permanent.getAbilities().clear(); for (Ability ability: token.getAbilities()) { diff --git a/Mage/src/main/java/mage/abilities/keyword/TransformAbility.java b/Mage/src/main/java/mage/abilities/keyword/TransformAbility.java index c769de9ca0a..2d592dc32b3 100644 --- a/Mage/src/main/java/mage/abilities/keyword/TransformAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/TransformAbility.java @@ -85,7 +85,7 @@ public class TransformAbility extends SimpleStaticAbility { } permanent.getSuperType().clear(); for (SuperType type : sourceCard.getSuperType()) { - permanent.getSuperType().add(type); + permanent.addSuperType(type); } permanent.setExpansionSetCode(sourceCard.getExpansionSetCode()); permanent.getAbilities().clear(); diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java index 59d94f41fc0..1622537a034 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/SupertypePredicate.java @@ -44,10 +44,6 @@ public class SupertypePredicate implements Predicate { this.supertype = supertype; } - public SupertypePredicate(String supertype){ - this.supertype = SuperType.valueOf(supertype.trim().toUpperCase()); - } - @Override public boolean apply(MageObject input, Game game) { return input.getSuperType().contains(supertype); diff --git a/Mage/src/main/java/mage/util/functions/CopyTokenFunction.java b/Mage/src/main/java/mage/util/functions/CopyTokenFunction.java index 2d1ad62b7fc..57dce0835cf 100644 --- a/Mage/src/main/java/mage/util/functions/CopyTokenFunction.java +++ b/Mage/src/main/java/mage/util/functions/CopyTokenFunction.java @@ -101,7 +101,7 @@ public class CopyTokenFunction implements Function { } target.getSuperType().clear(); for (SuperType type : sourceObj.getSuperType()) { - target.getSuperType().add(type); + target.addSuperType(type); } target.getAbilities().clear(); From cb693b5826e7d978f2ee3e1119031ddece402f25 Mon Sep 17 00:00:00 2001 From: ingmargoudt Date: Mon, 10 Apr 2017 00:21:09 +0200 Subject: [PATCH 08/21] there were 3 enums to compare ints, refactored to 1 --- Mage.Sets/src/mage/cards/a/AbruptDecay.java | 4 +-- Mage.Sets/src/mage/cards/a/AbzanCharm.java | 4 +-- .../src/mage/cards/a/AegisOfTheMeek.java | 6 ++-- Mage.Sets/src/mage/cards/a/AetherVial.java | 4 +-- .../mage/cards/a/AleshaWhoSmilesAtDeath.java | 4 +-- .../mage/cards/a/AlignedHedronNetwork.java | 4 +-- Mage.Sets/src/mage/cards/a/Aluren.java | 8 ++--- Mage.Sets/src/mage/cards/a/AmrouKithkin.java | 4 +-- Mage.Sets/src/mage/cards/a/AmrouScout.java | 4 +-- .../src/mage/cards/a/AppetiteForBrains.java | 4 +-- Mage.Sets/src/mage/cards/a/ArachnusWeb.java | 4 +-- .../src/mage/cards/a/ArtificersIntuition.java | 4 +-- .../mage/cards/a/AshiokNightmareWeaver.java | 4 +-- .../src/mage/cards/a/AuriokSalvagers.java | 4 +-- .../src/mage/cards/a/AustereCommand.java | 6 ++-- .../src/mage/cards/a/AysenBureaucrats.java | 4 +-- .../src/mage/cards/b/BalaGedScorpion.java | 4 +-- .../src/mage/cards/b/BarbarianOutcast.java | 4 +-- .../src/mage/cards/b/BeaconBehemoth.java | 4 +-- Mage.Sets/src/mage/cards/b/BigGameHunter.java | 4 +-- Mage.Sets/src/mage/cards/b/BirthingPod.java | 4 +-- Mage.Sets/src/mage/cards/b/Blightspeaker.java | 4 +-- Mage.Sets/src/mage/cards/b/BloodLust.java | 4 +-- .../src/mage/cards/b/BloodthornTaunter.java | 4 +-- Mage.Sets/src/mage/cards/b/BogGlider.java | 4 +-- Mage.Sets/src/mage/cards/b/BogSerpent.java | 4 +-- Mage.Sets/src/mage/cards/b/BrainInAJar.java | 4 +-- Mage.Sets/src/mage/cards/b/BrassclawOrcs.java | 4 +-- .../src/mage/cards/b/BreakThroughTheLine.java | 4 +-- Mage.Sets/src/mage/cards/b/BringToLight.java | 4 +-- Mage.Sets/src/mage/cards/b/BygoneBishop.java | 4 +-- Mage.Sets/src/mage/cards/c/CateranBrute.java | 4 +-- .../src/mage/cards/c/CateranEnforcer.java | 4 +-- .../src/mage/cards/c/CateranKidnappers.java | 7 ++-- .../src/mage/cards/c/CateranOverlord.java | 4 +-- .../src/mage/cards/c/CateranPersuader.java | 4 +-- Mage.Sets/src/mage/cards/c/CateranSlaver.java | 4 +-- .../src/mage/cards/c/CelestialKirin.java | 4 +-- Mage.Sets/src/mage/cards/c/CitanulFlute.java | 4 +-- Mage.Sets/src/mage/cards/c/ColfenorsUrn.java | 4 +-- .../src/mage/cards/c/CollectedCompany.java | 4 +-- .../src/mage/cards/c/CollectiveEffort.java | 4 +-- .../src/mage/cards/c/CompleteDisregard.java | 4 +-- Mage.Sets/src/mage/cards/c/ConduitOfRuin.java | 4 +-- .../src/mage/cards/c/ConsumeTheMeek.java | 4 +-- .../src/mage/cards/c/CovetousDragon.java | 4 +-- Mage.Sets/src/mage/cards/c/Crackdown.java | 4 +-- Mage.Sets/src/mage/cards/c/CracklingDoom.java | 4 +-- .../src/mage/cards/c/CraftyPathmage.java | 4 +-- Mage.Sets/src/mage/cards/c/CryptChampion.java | 4 +-- Mage.Sets/src/mage/cards/c/CullingScales.java | 4 +-- Mage.Sets/src/mage/cards/c/CullingSun.java | 4 +-- Mage.Sets/src/mage/cards/c/CyclopsTyrant.java | 4 +-- Mage.Sets/src/mage/cards/d/Dandan.java | 8 ++--- .../src/mage/cards/d/DaxosOfMeletis.java | 4 +-- .../src/mage/cards/d/DeepfireElemental.java | 4 +-- Mage.Sets/src/mage/cards/d/Defeat.java | 4 +-- Mage.Sets/src/mage/cards/d/DefiantFalcon.java | 4 +-- .../src/mage/cards/d/DemolitionStomper.java | 4 +-- Mage.Sets/src/mage/cards/d/Detonate.java | 4 +-- Mage.Sets/src/mage/cards/d/DimirCharm.java | 4 +-- .../src/mage/cards/d/DiscipleOfDeceit.java | 4 +-- .../src/mage/cards/d/DisdainfulStroke.java | 4 +-- Mage.Sets/src/mage/cards/d/Disembowel.java | 4 +-- .../src/mage/cards/d/DistendedMindbender.java | 6 ++-- Mage.Sets/src/mage/cards/d/Dominate.java | 4 +-- Mage.Sets/src/mage/cards/d/DragonBreath.java | 4 +-- Mage.Sets/src/mage/cards/d/DragonFangs.java | 4 +-- Mage.Sets/src/mage/cards/d/DragonScales.java | 4 +-- Mage.Sets/src/mage/cards/d/DragonShadow.java | 4 +-- Mage.Sets/src/mage/cards/d/DragonWings.java | 4 +-- .../src/mage/cards/d/DriverOfTheDead.java | 4 +-- Mage.Sets/src/mage/cards/d/DropOfHoney.java | 4 +-- Mage.Sets/src/mage/cards/d/Drumhunter.java | 4 +-- Mage.Sets/src/mage/cards/d/DuskDawn.java | 8 ++--- Mage.Sets/src/mage/cards/d/DwarvenNomad.java | 4 +-- .../src/mage/cards/d/DwarvenWarriors.java | 4 +-- .../src/mage/cards/e/EldritchEvolution.java | 4 +-- .../src/mage/cards/e/ElegantEdgecrafters.java | 4 +-- Mage.Sets/src/mage/cards/e/ElementalBond.java | 4 +-- .../src/mage/cards/e/ElspethSunsChampion.java | 4 +-- .../src/mage/cards/e/EmrakulsInfluence.java | 4 +-- .../src/mage/cards/e/EndangeredArmodon.java | 6 ++-- .../mage/cards/e/EndrekSahrMasterBreeder.java | 5 ++- .../src/mage/cards/e/EngulfTheShore.java | 4 +-- .../src/mage/cards/e/EnthrallingVictor.java | 4 +-- Mage.Sets/src/mage/cards/e/EpharasWarden.java | 4 +-- .../src/mage/cards/e/EpicExperiment.java | 4 +-- .../src/mage/cards/e/ErrantDoomsayers.java | 4 +-- Mage.Sets/src/mage/cards/e/Evershrike.java | 8 ++--- .../src/mage/cards/e/ExileIntoDarkness.java | 4 +-- .../src/mage/cards/e/ExuberantFirestoker.java | 7 ++-- .../src/mage/cards/e/EzuriClawOfProgress.java | 4 +-- .../src/mage/cards/f/FavorOfTheMighty.java | 4 +-- .../mage/cards/f/FerocityOfTheUnderworld.java | 4 +-- Mage.Sets/src/mage/cards/f/FierceEmpath.java | 4 +-- .../src/mage/cards/f/FiremindsForesight.java | 4 +-- .../src/mage/cards/f/FleetFootedMonk.java | 4 +-- .../src/mage/cards/f/FleshpulperGiant.java | 4 +-- Mage.Sets/src/mage/cards/f/Fleshwrither.java | 4 +-- Mage.Sets/src/mage/cards/f/Fragmentize.java | 4 +-- .../src/mage/cards/g/GarruksPackleader.java | 4 +-- Mage.Sets/src/mage/cards/g/GateSmasher.java | 4 +-- Mage.Sets/src/mage/cards/g/GazeOfGranite.java | 4 +-- Mage.Sets/src/mage/cards/g/GenesisHydra.java | 4 +-- Mage.Sets/src/mage/cards/g/GenesisWave.java | 4 +-- .../src/mage/cards/g/GethLordOfTheVault.java | 7 ++-- Mage.Sets/src/mage/cards/g/GhirapurGuide.java | 4 +-- .../src/mage/cards/g/GoblinDarkDwellers.java | 4 +-- Mage.Sets/src/mage/cards/g/GoblinKites.java | 4 +-- Mage.Sets/src/mage/cards/g/GoblinMutant.java | 6 ++-- .../src/mage/cards/g/GoblinTunneler.java | 4 +-- .../src/mage/cards/g/GoblinsOfTheFlarg.java | 11 +++--- Mage.Sets/src/mage/cards/g/Godtoucher.java | 4 +-- .../src/mage/cards/g/GodtrackerOfJund.java | 4 +-- .../src/mage/cards/g/GoldmeadowDodger.java | 4 +-- Mage.Sets/src/mage/cards/g/GorillaPack.java | 4 +-- Mage.Sets/src/mage/cards/g/GorillaShaman.java | 4 +-- Mage.Sets/src/mage/cards/g/Granulate.java | 4 +-- Mage.Sets/src/mage/cards/g/Grozoth.java | 4 +-- .../src/mage/cards/g/GustriderExuberant.java | 4 +-- Mage.Sets/src/mage/cards/h/HammerMage.java | 7 ++-- Mage.Sets/src/mage/cards/h/HearthCharm.java | 7 ++-- Mage.Sets/src/mage/cards/h/HearthKami.java | 9 ++--- .../src/mage/cards/h/HibernationsEnd.java | 7 ++-- .../src/mage/cards/h/HiddenDragonslayer.java | 7 ++-- Mage.Sets/src/mage/cards/h/HorriblyAwry.java | 7 ++-- .../src/mage/cards/h/HumbleTheBrute.java | 7 ++-- .../src/mage/cards/i/ImperialRecruiter.java | 7 ++-- .../mage/cards/i/InquisitionOfKozilek.java | 9 ++--- Mage.Sets/src/mage/cards/i/IntrepidHero.java | 11 +++--- .../src/mage/cards/i/IronclawBuzzardiers.java | 7 ++-- Mage.Sets/src/mage/cards/i/IronclawOrcs.java | 7 ++-- .../src/mage/cards/i/IslandFishJasconius.java | 7 ++-- Mage.Sets/src/mage/cards/i/IslebackSpawn.java | 7 ++-- .../src/mage/cards/i/IsochronScepter.java | 7 ++-- .../src/mage/cards/i/IzzetGuildmage.java | 9 ++--- Mage.Sets/src/mage/cards/j/JarJarBinks.java | 4 +-- Mage.Sets/src/mage/cards/j/JuntuStakes.java | 7 ++-- .../src/mage/cards/k/KahoMinamoHistorian.java | 13 +++---- .../mage/cards/k/KalemneDiscipleOfIroas.java | 4 +-- Mage.Sets/src/mage/cards/k/KavuLair.java | 7 ++-- .../src/mage/cards/k/KheruBloodsucker.java | 7 ++-- Mage.Sets/src/mage/cards/k/KillingGlare.java | 9 ++--- .../mage/cards/k/KnollspineInvocation.java | 7 ++-- .../src/mage/cards/k/KorLineSlinger.java | 14 ++++---- .../cards/k/KozilekTheGreatDistortion.java | 3 +- .../src/mage/cards/k/KozileksReturn.java | 7 ++-- Mage.Sets/src/mage/cards/k/KrosanDrover.java | 7 ++-- Mage.Sets/src/mage/cards/k/KrovikanRot.java | 7 ++-- .../src/mage/cards/k/KukemssaSerpent.java | 7 ++-- Mage.Sets/src/mage/cards/k/Kurgadon.java | 9 ++--- .../src/mage/cards/l/LambholtPacifist.java | 7 ++-- Mage.Sets/src/mage/cards/l/LastBreath.java | 7 ++-- .../src/mage/cards/l/LaviniaOfTheTenth.java | 10 +++--- .../src/mage/cards/l/LegacyOfTheBeloved.java | 7 ++-- Mage.Sets/src/mage/cards/l/LegacysAllure.java | 10 +++--- Mage.Sets/src/mage/cards/l/LeoninSquire.java | 7 ++-- .../cards/l/LilianaDefiantNecromancer.java | 4 +-- .../src/mage/cards/l/LinSivviDefiantHero.java | 7 ++-- .../src/mage/cards/l/LinessaZephyrMage.java | 7 ++-- Mage.Sets/src/mage/cards/l/Liquify.java | 7 ++-- Mage.Sets/src/mage/cards/m/MantaRay.java | 7 ++-- Mage.Sets/src/mage/cards/m/MarbleTitan.java | 7 ++-- Mage.Sets/src/mage/cards/m/Marjhan.java | 7 ++-- .../src/mage/cards/m/MatterReshaper.java | 7 ++-- .../src/mage/cards/m/MayaelTheAnima.java | 4 +-- Mage.Sets/src/mage/cards/m/MayaelsAria.java | 11 +++--- Mage.Sets/src/mage/cards/m/Meekstone.java | 7 ++-- Mage.Sets/src/mage/cards/m/MentalMisstep.java | 7 ++-- .../src/mage/cards/m/MentorOfTheMeek.java | 7 ++-- Mage.Sets/src/mage/cards/m/MerchantShip.java | 7 ++-- .../src/mage/cards/m/MidnightScavengers.java | 7 ++-- .../src/mage/cards/m/MightOfTheWild.java | 7 ++-- .../src/mage/cards/m/MightyEmergence.java | 7 ++-- .../src/mage/cards/m/MinamoSightbender.java | 7 ++-- .../src/mage/cards/m/MistmeadowSkulk.java | 9 ++--- Mage.Sets/src/mage/cards/m/MobRule.java | 23 ++++++------- Mage.Sets/src/mage/cards/m/MoggJailer.java | 15 ++++---- Mage.Sets/src/mage/cards/m/Molder.java | 7 ++-- Mage.Sets/src/mage/cards/m/Mosstodon.java | 13 +++---- Mage.Sets/src/mage/cards/m/MouthFeed.java | 4 +-- Mage.Sets/src/mage/cards/n/NaturalState.java | 7 ++-- Mage.Sets/src/mage/cards/n/Necroplasm.java | 7 ++-- Mage.Sets/src/mage/cards/n/NightDealings.java | 7 ++-- Mage.Sets/src/mage/cards/n/NoContest.java | 14 ++++---- .../src/mage/cards/n/NotOfThisWorld.java | 15 ++++---- Mage.Sets/src/mage/cards/n/NoxiousDragon.java | 7 ++-- Mage.Sets/src/mage/cards/o/ONaginata.java | 7 ++-- .../src/mage/cards/o/OjutaisCommand.java | 7 ++-- Mage.Sets/src/mage/cards/o/OrcishVeteran.java | 7 ++-- .../src/mage/cards/o/OrderOfWhiteclay.java | 7 ++-- Mage.Sets/src/mage/cards/o/Orgg.java | 9 ++--- Mage.Sets/src/mage/cards/o/OrzhovCharm.java | 15 ++++---- Mage.Sets/src/mage/cards/o/OutlandBoar.java | 7 ++-- Mage.Sets/src/mage/cards/o/Overload.java | 9 ++--- Mage.Sets/src/mage/cards/p/Paleoloth.java | 7 ++-- .../src/mage/cards/p/PanopticMirror.java | 13 +++---- Mage.Sets/src/mage/cards/p/Pendelhaven.java | 9 +++-- .../src/mage/cards/p/PendelhavenElder.java | 11 +++--- .../src/mage/cards/p/PerniciousDeed.java | 26 +++++++------- Mage.Sets/src/mage/cards/p/PillarOfLight.java | 7 ++-- Mage.Sets/src/mage/cards/p/PirateShip.java | 11 +++--- Mage.Sets/src/mage/cards/p/Plaguebearer.java | 7 ++-- Mage.Sets/src/mage/cards/p/PorphyryNodes.java | 7 ++-- .../src/mage/cards/p/PostmortemLunge.java | 16 ++++----- .../mage/cards/p/ProclamationOfRebirth.java | 9 ++--- .../src/mage/cards/p/ProfaneCommand.java | 18 +++++----- .../src/mage/cards/p/ProfanerOfTheDead.java | 16 ++++----- Mage.Sets/src/mage/cards/p/Prohibit.java | 9 ++--- Mage.Sets/src/mage/cards/p/ProteanHulk.java | 15 ++++---- .../src/mage/cards/p/PuncturingLight.java | 9 ++--- .../src/mage/cards/p/PuppetsVerdict.java | 9 ++--- Mage.Sets/src/mage/cards/q/QuillmaneBaku.java | 4 +-- .../src/mage/cards/r/RadiantsJudgment.java | 9 ++--- .../src/mage/cards/r/RakeclawGargantuan.java | 13 +++---- .../src/mage/cards/r/RallyTheAncestors.java | 11 +++--- .../src/mage/cards/r/RamosianCaptain.java | 11 +++--- .../src/mage/cards/r/RamosianCommander.java | 11 +++--- .../src/mage/cards/r/RamosianLieutenant.java | 11 +++--- .../src/mage/cards/r/RamosianRevivalist.java | 7 ++-- .../src/mage/cards/r/RamosianSergeant.java | 11 +++--- .../src/mage/cards/r/RamosianSkyMarshal.java | 11 +++--- Mage.Sets/src/mage/cards/r/RangerOfEos.java | 9 ++--- Mage.Sets/src/mage/cards/r/RathiAssassin.java | 11 +++--- Mage.Sets/src/mage/cards/r/RathiFiend.java | 11 +++--- .../src/mage/cards/r/RathiIntimidator.java | 11 +++--- Mage.Sets/src/mage/cards/r/ReaveSoul.java | 7 ++-- .../src/mage/cards/r/RecruiterOfTheGuard.java | 7 ++-- .../src/mage/cards/r/RelentlessDead.java | 7 ++-- .../src/mage/cards/r/RenegadeRallier.java | 7 ++-- Mage.Sets/src/mage/cards/r/Repeal.java | 9 ++--- Mage.Sets/src/mage/cards/r/Reprisal.java | 7 ++-- .../mage/cards/r/RetributionOfTheMeek.java | 7 ++-- .../src/mage/cards/r/ReturnToTheRanks.java | 7 ++-- Mage.Sets/src/mage/cards/r/Reveillark.java | 11 +++--- Mage.Sets/src/mage/cards/r/Reverence.java | 7 ++-- Mage.Sets/src/mage/cards/r/RunnersBane.java | 14 ++++---- .../src/mage/cards/s/SacellumGodspeaker.java | 22 ++++++------ .../src/mage/cards/s/SalvagingStation.java | 7 ++-- Mage.Sets/src/mage/cards/s/SanctumOfUgin.java | 10 +++--- .../src/mage/cards/s/ScourgeOfFleets.java | 7 ++-- Mage.Sets/src/mage/cards/s/ScrapTrawler.java | 7 ++-- .../src/mage/cards/s/ScuttlingDoomEngine.java | 7 ++-- Mage.Sets/src/mage/cards/s/SeaSerpent.java | 7 ++-- Mage.Sets/src/mage/cards/s/SearingLight.java | 7 ++-- Mage.Sets/src/mage/cards/s/Seasinger.java | 16 +++++---- Mage.Sets/src/mage/cards/s/SelesnyaCharm.java | 9 ++--- Mage.Sets/src/mage/cards/s/SerendibDjinn.java | 7 ++-- .../mage/cards/s/ShamanOfTheGreatHunt.java | 7 ++-- .../src/mage/cards/s/ShamanicRevelation.java | 7 ++-- Mage.Sets/src/mage/cards/s/ShelldockIsle.java | 7 ++-- .../src/mage/cards/s/ShowOfDominance.java | 7 ++-- .../src/mage/cards/s/SidarKondoOfJamuraa.java | 4 +-- .../mage/cards/s/SightOfTheScalelords.java | 7 ++-- Mage.Sets/src/mage/cards/s/Silkwrap.java | 7 ++-- .../src/mage/cards/s/SilumgarAssassin.java | 7 ++-- Mage.Sets/src/mage/cards/s/SkeletonShip.java | 4 +-- Mage.Sets/src/mage/cards/s/SkyfireKirin.java | 7 ++-- Mage.Sets/src/mage/cards/s/SkymarkRoc.java | 7 ++-- .../src/mage/cards/s/SkywhalersShot.java | 7 ++-- .../src/mage/cards/s/SlipstreamSerpent.java | 7 ++-- .../src/mage/cards/s/SmiteTheMonstrous.java | 9 ++--- Mage.Sets/src/mage/cards/s/Smother.java | 9 ++--- .../src/mage/cards/s/SneakyHomunculus.java | 7 ++-- Mage.Sets/src/mage/cards/s/SolarTide.java | 9 ++--- .../src/mage/cards/s/SoratamiMirrorGuard.java | 11 +++--- .../mage/cards/s/SpearbreakerBehemoth.java | 13 +++---- Mage.Sets/src/mage/cards/s/SpellBlast.java | 7 ++-- Mage.Sets/src/mage/cards/s/SpellBurst.java | 12 +++---- Mage.Sets/src/mage/cards/s/SpellQueller.java | 9 ++--- Mage.Sets/src/mage/cards/s/SpellSnare.java | 9 ++--- .../mage/cards/s/SpellbreakerBehemoth.java | 13 +++---- .../src/mage/cards/s/SpellstutterSprite.java | 12 +++---- Mage.Sets/src/mage/cards/s/StirTheGrave.java | 7 ++-- .../src/mage/cards/s/StranglingSoot.java | 14 ++++---- .../src/mage/cards/s/SubterraneanScout.java | 7 ++-- Mage.Sets/src/mage/cards/s/SultaiFlayer.java | 7 ++-- Mage.Sets/src/mage/cards/s/SunTitan.java | 7 ++-- Mage.Sets/src/mage/cards/s/Sunforger.java | 7 ++-- .../src/mage/cards/s/SunseedNurturer.java | 7 ++-- .../mage/cards/s/SunstrikeLegionnaire.java | 7 ++-- Mage.Sets/src/mage/cards/s/Sunweb.java | 7 ++-- .../src/mage/cards/s/SuspensionField.java | 7 ++-- Mage.Sets/src/mage/cards/s/Swat.java | 9 ++--- Mage.Sets/src/mage/cards/s/SwiftWarkite.java | 7 ++-- .../src/mage/cards/s/SwordOfTheMeek.java | 15 ++++---- .../src/mage/cards/t/TajNarSwordsmith.java | 7 ++-- Mage.Sets/src/mage/cards/t/TawnossWand.java | 7 ++-- .../src/mage/cards/t/TemurAscendancy.java | 7 ++-- Mage.Sets/src/mage/cards/t/TemurCharm.java | 14 ++++---- .../src/mage/cards/t/TerashisVerdict.java | 9 ++--- .../src/mage/cards/t/TetheredGriffin.java | 7 ++-- .../src/mage/cards/t/TethmosHighPriest.java | 7 ++-- .../src/mage/cards/t/TezzeretTheSeeker.java | 16 ++++----- Mage.Sets/src/mage/cards/t/Thoughtbind.java | 10 +++--- .../src/mage/cards/t/ThreadsOfDisloyalty.java | 13 +++---- .../mage/cards/t/ThundercloudElemental.java | 7 ++-- .../src/mage/cards/t/TimelyHordemate.java | 7 ++-- .../src/mage/cards/t/TransgressTheMind.java | 7 ++-- Mage.Sets/src/mage/cards/t/TreasureMage.java | 9 ++--- Mage.Sets/src/mage/cards/t/TrinketMage.java | 6 ++-- Mage.Sets/src/mage/cards/t/TrophyMage.java | 7 ++-- .../src/mage/cards/u/UginTheSpiritDragon.java | 11 +++--- .../src/mage/cards/u/UlvenwaldObserver.java | 7 ++-- Mage.Sets/src/mage/cards/u/Unearth.java | 9 ++--- .../src/mage/cards/v/VagrantPlowbeasts.java | 11 +++--- .../src/mage/cards/v/ValorousStance.java | 7 ++-- .../src/mage/cards/v/VanquishTheFoul.java | 7 ++-- .../src/mage/cards/v/VenarianGlimmer.java | 7 ++-- .../src/mage/cards/v/VillainousWealth.java | 13 +++---- Mage.Sets/src/mage/cards/v/VineSnare.java | 7 ++-- .../src/mage/cards/v/VodalianKnights.java | 7 ++-- Mage.Sets/src/mage/cards/v/Void.java | 14 ++++---- .../src/mage/cards/w/WarNameAspirant.java | 7 ++-- Mage.Sets/src/mage/cards/w/WarpingWail.java | 10 +++--- .../src/mage/cards/w/WhereAncientsTread.java | 10 +++--- Mage.Sets/src/mage/cards/w/WildPair.java | 15 ++++---- .../src/mage/cards/w/WisdomOfTheJedi.java | 7 ++-- .../src/mage/cards/w/WoodlandBellower.java | 4 +-- Mage.Sets/src/mage/cards/w/Wrangle.java | 7 ++-- .../mage/cards/y/YisanTheWandererBard.java | 4 +-- .../src/mage/cards/z/ZurTheEnchanter.java | 7 ++-- .../src/mage/cards/z/ZurgoBellstriker.java | 4 +-- .../main/java/mage/abilities/CountType.java | 21 +++++++++--- ...sPermanentsControllerTriggeredAbility.java | 25 +++----------- .../mage/abilities/condition/Condition.java | 21 ++---------- .../common/CardsInAnyLibraryCondition.java | 34 ++++++------------- .../condition/common/FerociousCondition.java | 4 +-- .../cost/CastWithoutPayingManaCostEffect.java | 4 +-- ...archLibraryWithLessCMCPutInPlayEffect.java | 4 +-- .../effects/keyword/BolsterEffect.java | 4 +-- .../abilities/keyword/SoulshiftAbility.java | 7 ++-- .../abilities/keyword/TransmuteAbility.java | 9 +++-- Mage/src/main/java/mage/filter/Filter.java | 25 ++------------ .../filter/predicate/IntComparePredicate.java | 25 +++----------- .../ConvertedManaCostPredicate.java | 4 +-- .../predicate/mageobject/PowerPredicate.java | 4 +-- .../mageobject/ToughnessPredicate.java | 4 +-- 339 files changed, 1263 insertions(+), 1225 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AbruptDecay.java b/Mage.Sets/src/mage/cards/a/AbruptDecay.java index 91086b8de58..cd7739a7b65 100644 --- a/Mage.Sets/src/mage/cards/a/AbruptDecay.java +++ b/Mage.Sets/src/mage/cards/a/AbruptDecay.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CantBeCounteredSourceEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterNonlandPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetNonlandPermanent; @@ -52,7 +52,7 @@ public class AbruptDecay extends CardImpl { private static final FilterNonlandPermanent filter = new FilterNonlandPermanent("nonland permanent with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public AbruptDecay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AbzanCharm.java b/Mage.Sets/src/mage/cards/a/AbzanCharm.java index 919a30730f8..e7be1abc5eb 100644 --- a/Mage.Sets/src/mage/cards/a/AbzanCharm.java +++ b/Mage.Sets/src/mage/cards/a/AbzanCharm.java @@ -27,6 +27,7 @@ */ package mage.cards.a; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.abilities.effects.common.ExileTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -53,7 +53,7 @@ public class AbzanCharm extends CardImpl { private static final FilterCreaturePermanent FILTER = new FilterCreaturePermanent("creature with power 3 or greater"); static { - FILTER.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + FILTER.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public AbzanCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java b/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java index d3334f2b296..b04027d8bbc 100644 --- a/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -37,7 +38,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.mageobject.ToughnessPredicate; @@ -54,8 +54,8 @@ public class AegisOfTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("1/1 creature"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, 1)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.Equal, 1)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); } public AegisOfTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AetherVial.java b/Mage.Sets/src/mage/cards/a/AetherVial.java index b4541eac3ca..7c49e5a1fb9 100644 --- a/Mage.Sets/src/mage/cards/a/AetherVial.java +++ b/Mage.Sets/src/mage/cards/a/AetherVial.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -41,7 +42,6 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -104,7 +104,7 @@ class AetherVialEffect extends OneShotEffect { int count = permanent.getCounters(game).getCount(CounterType.CHARGE); FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost equal to " + count); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, count)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, count)); String choiceText = "Put a " + filter.getMessage() + " from your hand onto the battlefield?"; Player controller = game.getPlayer(source.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java b/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java index ddf512b2e42..e4a0ad3126a 100644 --- a/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java +++ b/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java @@ -29,6 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.AttacksTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; @@ -41,7 +42,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -59,7 +59,7 @@ public class AleshaWhoSmilesAtDeath extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public AleshaWhoSmilesAtDeath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java b/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java index 8a577a568e9..22747da1120 100644 --- a/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java +++ b/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.OnLeaveReturnExiledToBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -37,7 +38,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -77,7 +77,7 @@ class AlignedHedronNetworkExileEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public AlignedHedronNetworkExileEffect() { diff --git a/Mage.Sets/src/mage/cards/a/Aluren.java b/Mage.Sets/src/mage/cards/a/Aluren.java index ac887d25e13..cfd6dce66f6 100644 --- a/Mage.Sets/src/mage/cards/a/Aluren.java +++ b/Mage.Sets/src/mage/cards/a/Aluren.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.SourceIsSpellCondition; import mage.abilities.costs.AlternativeCostSourceAbility; @@ -37,7 +38,6 @@ import mage.abilities.effects.common.continuous.CastAsThoughItHadFlashAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -63,7 +63,7 @@ public class Aluren extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public Aluren(UUID ownerId, CardSetInfo setInfo) { @@ -95,10 +95,10 @@ class AlurenRuleEffect extends ContinuousEffectImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } - static AlternativeCostSourceAbility alternativeCastingCostAbility = new AlternativeCostSourceAbility(null, SourceIsSpellCondition.instance, null, filter, true); + private static AlternativeCostSourceAbility alternativeCastingCostAbility = new AlternativeCostSourceAbility(null, SourceIsSpellCondition.instance, null, filter, true); public AlurenRuleEffect() { super(Duration.WhileOnBattlefield, Outcome.Detriment); diff --git a/Mage.Sets/src/mage/cards/a/AmrouKithkin.java b/Mage.Sets/src/mage/cards/a/AmrouKithkin.java index 809c7fa63b1..2bc4d079b37 100644 --- a/Mage.Sets/src/mage/cards/a/AmrouKithkin.java +++ b/Mage.Sets/src/mage/cards/a/AmrouKithkin.java @@ -28,13 +28,13 @@ package mage.cards.a; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -49,7 +49,7 @@ public class AmrouKithkin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public AmrouKithkin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AmrouScout.java b/Mage.Sets/src/mage/cards/a/AmrouScout.java index 91721f01177..171c0ce1d57 100644 --- a/Mage.Sets/src/mage/cards/a/AmrouScout.java +++ b/Mage.Sets/src/mage/cards/a/AmrouScout.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -53,7 +53,7 @@ public class AmrouScout extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("Rebel permanent card with converted mana cost 3 or less"); static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public AmrouScout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java b/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java index 4b152fd09d7..439e9a9b677 100644 --- a/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java +++ b/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java @@ -27,11 +27,11 @@ */ package mage.cards.a; +import mage.abilities.CountType; import mage.abilities.effects.common.ExileCardYouChooseTargetOpponentEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetOpponent; @@ -47,7 +47,7 @@ public class AppetiteForBrains extends CardImpl { private static final FilterCard filter = new FilterCard("a card from it with converted mana cost 4 or greater"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 3)); } public AppetiteForBrains(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArachnusWeb.java b/Mage.Sets/src/mage/cards/a/ArachnusWeb.java index ef60ba9e6a3..e0c88f8fba2 100644 --- a/Mage.Sets/src/mage/cards/a/ArachnusWeb.java +++ b/Mage.Sets/src/mage/cards/a/ArachnusWeb.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.AttachedToMatchesFilterCondition; @@ -41,7 +42,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.TargetPermanent; @@ -70,7 +70,7 @@ public class ArachnusWeb extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBlockAttackActivateAttachedEffect())); // At the beginning of the end step, if enchanted creature's power is 4 or greater, destroy Arachnus Web. FilterPermanent filter = new FilterPermanent("if enchanted creature's power is 4 or greater"); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, new DestroySourceEffect(), TargetController.ANY, new AttachedToMatchesFilterCondition(filter), false)); diff --git a/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java b/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java index 0aeb30087d1..51d16f01cbd 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java @@ -28,6 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardCardCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterArtifactCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -51,7 +51,7 @@ public class ArtificersIntuition extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("artifact card with converted mana cost 1 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public ArtificersIntuition(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}"); diff --git a/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java b/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java index 5a893b3de25..dec05e4939b 100644 --- a/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java +++ b/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java @@ -29,6 +29,7 @@ package mage.cards.a; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; import mage.abilities.costs.Cost; @@ -37,7 +38,6 @@ import mage.abilities.effects.ContinuousEffectImpl; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.*; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -151,7 +151,7 @@ class AshiokNightmareWeaverPutIntoPlayEffect extends OneShotEffect { } FilterCard filter = new FilterCreatureCard("creature card with converted mana cost {" + cmc + "} exiled with " + sourceObject.getIdName()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, cmc)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); Target target = new TargetCardInExile(filter, CardUtil.getExileZoneId(game, source.getSourceId(), source.getSourceObjectZoneChangeCounter())); diff --git a/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java b/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java index e80bf7bfbaf..f387aad4e56 100644 --- a/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java +++ b/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java @@ -29,6 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.ReturnToHandTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterArtifactCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; @@ -51,7 +51,7 @@ public class AuriokSalvagers extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("artifact card with converted mana cost 1 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public AuriokSalvagers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AustereCommand.java b/Mage.Sets/src/mage/cards/a/AustereCommand.java index e904ce3c035..2c198904495 100644 --- a/Mage.Sets/src/mage/cards/a/AustereCommand.java +++ b/Mage.Sets/src/mage/cards/a/AustereCommand.java @@ -27,12 +27,12 @@ */ package mage.cards.a; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterEnchantmentPermanent; @@ -49,8 +49,8 @@ public class AustereCommand extends CardImpl { private static final FilterCreaturePermanent filter3orLess = new FilterCreaturePermanent("creatures with converted mana cost 3 or less"); private static final FilterCreaturePermanent filter4orMore = new FilterCreaturePermanent("creatures with converted mana cost 4 or greater"); static { - filter3orLess.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); - filter4orMore.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter3orLess.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter4orMore.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 3)); } public AustereCommand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java b/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java index 6bf5bc939ae..0b2c9260106 100644 --- a/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java +++ b/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java @@ -29,6 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.Target; @@ -52,7 +52,7 @@ public class AysenBureaucrats extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public AysenBureaucrats(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java b/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java index 23db3304a96..ef6d2b09879 100644 --- a/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java +++ b/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java @@ -28,12 +28,12 @@ package mage.cards.b; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -49,7 +49,7 @@ public class BalaGedScorpion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 1 or less"); static { - filter.add(new PowerPredicate(ComparisonType.LessThan, 2)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 2)); } public BalaGedScorpion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java b/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java index e377496dbb0..90363e3a51b 100644 --- a/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java +++ b/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java @@ -28,12 +28,12 @@ package mage.cards.b; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -62,7 +62,7 @@ public class BarbarianOutcast extends CardImpl { // When you control no Swamps, sacrifice Barbarian Outcast. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Swamp", "no Swamps"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Swamp", "no Swamps"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java b/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java index 450f417ba1a..ad15a03218e 100644 --- a/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java +++ b/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java @@ -30,6 +30,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -39,7 +40,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -55,7 +55,7 @@ public class BeaconBehemoth extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public BeaconBehemoth (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BigGameHunter.java b/Mage.Sets/src/mage/cards/b/BigGameHunter.java index 0cdbece3c92..1c11258b239 100644 --- a/Mage.Sets/src/mage/cards/b/BigGameHunter.java +++ b/Mage.Sets/src/mage/cards/b/BigGameHunter.java @@ -29,6 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -36,7 +37,6 @@ import mage.abilities.keyword.MadnessAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -52,7 +52,7 @@ public class BigGameHunter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public BigGameHunter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BirthingPod.java b/Mage.Sets/src/mage/cards/b/BirthingPod.java index 40cfc3b1d3e..91965ca0514 100644 --- a/Mage.Sets/src/mage/cards/b/BirthingPod.java +++ b/Mage.Sets/src/mage/cards/b/BirthingPod.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ActivateAsSorceryActivatedAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.common.SacrificeTargetCost; @@ -40,7 +41,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -106,7 +106,7 @@ class BirthingPodEffect extends OneShotEffect { if (sacrificedPermanent != null && controller != null) { int newConvertedCost = sacrificedPermanent.getConvertedManaCost() + 1; FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, newConvertedCost)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, newConvertedCost)); filter.add(new CardTypePredicate(CardType.CREATURE)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/b/Blightspeaker.java b/Mage.Sets/src/mage/cards/b/Blightspeaker.java index 125d5934370..07b66ab56c5 100644 --- a/Mage.Sets/src/mage/cards/b/Blightspeaker.java +++ b/Mage.Sets/src/mage/cards/b/Blightspeaker.java @@ -29,6 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -38,7 +39,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -57,7 +57,7 @@ public class Blightspeaker extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public Blightspeaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodLust.java b/Mage.Sets/src/mage/cards/b/BloodLust.java index 9bc2dc0ac90..1003021ce22 100644 --- a/Mage.Sets/src/mage/cards/b/BloodLust.java +++ b/Mage.Sets/src/mage/cards/b/BloodLust.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.condition.Condition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.dynamicvalue.DynamicValue; @@ -39,7 +40,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; @@ -58,7 +58,7 @@ public class BloodLust extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 4)); } public BloodLust(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java b/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java index 7ee15786aef..92ea0de659e 100644 --- a/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java +++ b/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -37,7 +38,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -53,7 +53,7 @@ public class BloodthornTaunter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public BloodthornTaunter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BogGlider.java b/Mage.Sets/src/mage/cards/b/BogGlider.java index 676edde422a..6e7d080fa81 100644 --- a/Mage.Sets/src/mage/cards/b/BogGlider.java +++ b/Mage.Sets/src/mage/cards/b/BogGlider.java @@ -29,6 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.costs.common.TapSourceCost; @@ -38,7 +39,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterPermanentCard; @@ -60,7 +60,7 @@ public class BogGlider extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public BogGlider(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BogSerpent.java b/Mage.Sets/src/mage/cards/b/BogSerpent.java index 70bc72274b2..9dbf2f808a7 100644 --- a/Mage.Sets/src/mage/cards/b/BogSerpent.java +++ b/Mage.Sets/src/mage/cards/b/BogSerpent.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; import java.util.UUID; @@ -58,7 +58,7 @@ public class BogSerpent extends CardImpl { // When you control no Swamps, sacrifice Bog Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Swamp", "no Swamps"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Swamp", "no Swamps"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/b/BrainInAJar.java b/Mage.Sets/src/mage/cards/b/BrainInAJar.java index 1f5ea7af5e5..edef4084240 100644 --- a/Mage.Sets/src/mage/cards/b/BrainInAJar.java +++ b/Mage.Sets/src/mage/cards/b/BrainInAJar.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.RemoveVariableCountersSourceCost; import mage.abilities.costs.common.TapSourceCost; @@ -42,7 +43,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -108,7 +108,7 @@ class BrainInAJarCastEffect extends OneShotEffect { if (controller != null && sourceObject != null) { int counters = sourceObject.getCounters(game).getCount(CounterType.CHARGE); FilterCard filter = new FilterInstantOrSorceryCard(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, counters)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, counters)); int cardsToCast = controller.getHand().count(filter, source.getControllerId(), source.getSourceId(), game); if (cardsToCast > 0 && controller.chooseUse(outcome, "Cast an instant or sorcery card with converted mana costs of " + counters + " from your hand without paying its mana cost?", source, game)) { TargetCardInHand target = new TargetCardInHand(filter); diff --git a/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java b/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java index 3be73debe8a..82d63009803 100644 --- a/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java +++ b/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java @@ -28,13 +28,13 @@ package mage.cards.b; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -48,7 +48,7 @@ public class BrassclawOrcs extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public BrassclawOrcs(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java b/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java index 91bcb4cca45..8489e523e31 100644 --- a/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java +++ b/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; @@ -39,7 +40,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -55,7 +55,7 @@ public class BreakThroughTheLine extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public BreakThroughTheLine(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BringToLight.java b/Mage.Sets/src/mage/cards/b/BringToLight.java index f5b981b4f2b..2385da95b42 100644 --- a/Mage.Sets/src/mage/cards/b/BringToLight.java +++ b/Mage.Sets/src/mage/cards/b/BringToLight.java @@ -28,6 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.dynamicvalue.common.ColorsOfManaSpentToCastCount; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -36,7 +37,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -98,7 +98,7 @@ class BringToLightEffect extends OneShotEffect { int numberColors = ColorsOfManaSpentToCastCount.getInstance().calculate(game, source, this); FilterCard filter = new FilterCard(); filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, numberColors + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, numberColors + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); controller.searchLibrary(target, game); Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/b/BygoneBishop.java b/Mage.Sets/src/mage/cards/b/BygoneBishop.java index 7c3490b6c5a..9ed5d5b8221 100644 --- a/Mage.Sets/src/mage/cards/b/BygoneBishop.java +++ b/Mage.Sets/src/mage/cards/b/BygoneBishop.java @@ -28,13 +28,13 @@ package mage.cards.b; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.keyword.InvestigateEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -51,7 +51,7 @@ public class BygoneBishop extends CardImpl { static { filterSpell.add(new CardTypePredicate(CardType.CREATURE)); - filterSpell.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filterSpell.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public BygoneBishop(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranBrute.java b/Mage.Sets/src/mage/cards/c/CateranBrute.java index 020031ebda7..5fdb062f6f7 100644 --- a/Mage.Sets/src/mage/cards/c/CateranBrute.java +++ b/Mage.Sets/src/mage/cards/c/CateranBrute.java @@ -30,6 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -38,7 +39,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -56,7 +56,7 @@ public class CateranBrute extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public CateranBrute(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranEnforcer.java b/Mage.Sets/src/mage/cards/c/CateranEnforcer.java index 0b0976da99f..e2ad4bc24c6 100644 --- a/Mage.Sets/src/mage/cards/c/CateranEnforcer.java +++ b/Mage.Sets/src/mage/cards/c/CateranEnforcer.java @@ -30,6 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -39,7 +40,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -57,7 +57,7 @@ public class CateranEnforcer extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public CateranEnforcer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranKidnappers.java b/Mage.Sets/src/mage/cards/c/CateranKidnappers.java index 3b3ee887132..10179cfc58b 100644 --- a/Mage.Sets/src/mage/cards/c/CateranKidnappers.java +++ b/Mage.Sets/src/mage/cards/c/CateranKidnappers.java @@ -30,6 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -38,7 +39,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -47,7 +47,6 @@ import mage.target.common.TargetCardInLibrary; import java.util.UUID; /** - * * @author Backfir3 */ public class CateranKidnappers extends CardImpl { @@ -56,11 +55,11 @@ public class CateranKidnappers extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public CateranKidnappers(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{B}{B}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{B}{B}"); this.subtype.add("Human"); this.subtype.add("Mercenary"); diff --git a/Mage.Sets/src/mage/cards/c/CateranOverlord.java b/Mage.Sets/src/mage/cards/c/CateranOverlord.java index fb460a01be1..c3a382e629b 100644 --- a/Mage.Sets/src/mage/cards/c/CateranOverlord.java +++ b/Mage.Sets/src/mage/cards/c/CateranOverlord.java @@ -30,6 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.costs.common.TapSourceCost; @@ -40,7 +41,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -59,7 +59,7 @@ public class CateranOverlord extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 7)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 7)); } public CateranOverlord(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranPersuader.java b/Mage.Sets/src/mage/cards/c/CateranPersuader.java index 0203e10f8bb..5ea39c484c8 100644 --- a/Mage.Sets/src/mage/cards/c/CateranPersuader.java +++ b/Mage.Sets/src/mage/cards/c/CateranPersuader.java @@ -30,6 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -38,7 +39,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -56,7 +56,7 @@ public class CateranPersuader extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public CateranPersuader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranSlaver.java b/Mage.Sets/src/mage/cards/c/CateranSlaver.java index bd8e41ace3f..e66a95194fd 100644 --- a/Mage.Sets/src/mage/cards/c/CateranSlaver.java +++ b/Mage.Sets/src/mage/cards/c/CateranSlaver.java @@ -30,6 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -39,7 +40,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -57,7 +57,7 @@ public class CateranSlaver extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 6)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 6)); } public CateranSlaver(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CelestialKirin.java b/Mage.Sets/src/mage/cards/c/CelestialKirin.java index fcbf638cce9..6da8b2446e7 100644 --- a/Mage.Sets/src/mage/cards/c/CelestialKirin.java +++ b/Mage.Sets/src/mage/cards/c/CelestialKirin.java @@ -29,6 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.DestroyAllEffect; @@ -39,7 +40,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterSpiritOrArcaneCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -101,7 +101,7 @@ class CelestialKirinEffect extends OneShotEffect { if (spell != null) { int cmc = spell.getConvertedManaCost(); FilterPermanent filter = new FilterPermanent(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, cmc)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); return new DestroyAllEffect(filter).apply(game, source); } return false; diff --git a/Mage.Sets/src/mage/cards/c/CitanulFlute.java b/Mage.Sets/src/mage/cards/c/CitanulFlute.java index 13a97caa9fb..9a59b7e2c4d 100644 --- a/Mage.Sets/src/mage/cards/c/CitanulFlute.java +++ b/Mage.Sets/src/mage/cards/c/CitanulFlute.java @@ -28,6 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -36,7 +37,6 @@ import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -98,7 +98,7 @@ class CitanulFluteSearchEffect extends OneShotEffect { FilterCard filter = new FilterCard("creature card with converted mana cost X or less"); filter.add(new CardTypePredicate(CardType.CREATURE)); //Set the mana cost one higher to 'emulate' a less than or equal to comparison. - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (player.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java b/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java index fe024db100c..be227c5269b 100644 --- a/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java +++ b/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java @@ -29,6 +29,7 @@ package mage.cards.c; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.condition.Condition; @@ -40,7 +41,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.game.ExileZone; @@ -60,7 +60,7 @@ public class ColfenorsUrn extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); } public ColfenorsUrn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CollectedCompany.java b/Mage.Sets/src/mage/cards/c/CollectedCompany.java index ef2b4f9e738..a57e526fa60 100644 --- a/Mage.Sets/src/mage/cards/c/CollectedCompany.java +++ b/Mage.Sets/src/mage/cards/c/CollectedCompany.java @@ -27,12 +27,12 @@ */ package mage.cards.c; +import mage.abilities.CountType; import mage.abilities.effects.common.LookLibraryAndPickControllerEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -49,7 +49,7 @@ public class CollectedCompany extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public CollectedCompany(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CollectiveEffort.java b/Mage.Sets/src/mage/cards/c/CollectiveEffort.java index 45acdd4abbd..b096ebb38f9 100644 --- a/Mage.Sets/src/mage/cards/c/CollectiveEffort.java +++ b/Mage.Sets/src/mage/cards/c/CollectiveEffort.java @@ -28,6 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.costs.Cost; import mage.abilities.costs.common.TapTargetCost; @@ -40,7 +41,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.FilterPlayer; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; @@ -71,7 +71,7 @@ public class CollectiveEffort extends CardImpl { static { filterUntapped.add(Predicates.not(new TappedPredicate())); - filterDestroyCreature.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filterDestroyCreature.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public CollectiveEffort(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CompleteDisregard.java b/Mage.Sets/src/mage/cards/c/CompleteDisregard.java index 83b5a62f861..ed90b7f7bd6 100644 --- a/Mage.Sets/src/mage/cards/c/CompleteDisregard.java +++ b/Mage.Sets/src/mage/cards/c/CompleteDisregard.java @@ -28,12 +28,12 @@ package mage.cards.c; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.common.ExileTargetEffect; import mage.abilities.keyword.DevoidAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -49,7 +49,7 @@ public class CompleteDisregard extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public CompleteDisregard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java b/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java index a485dfe2eb4..a7f375cd502 100644 --- a/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java +++ b/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java @@ -28,6 +28,7 @@ package mage.cards.c; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CastSourceTriggeredAbility; @@ -38,7 +39,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.WatcherScope; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.ObjectPlayer; import mage.filter.predicate.ObjectPlayerPredicate; @@ -66,7 +66,7 @@ public class ConduitOfRuin extends CardImpl { static { filter.add(new ColorlessPredicate()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 6)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 6)); filterCost.add(new FirstCastCreatureSpellPredicate()); } diff --git a/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java b/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java index bde7cb602f0..b852ff26fba 100644 --- a/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java +++ b/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java @@ -27,11 +27,11 @@ */ package mage.cards.c; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -46,7 +46,7 @@ public class ConsumeTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public ConsumeTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CovetousDragon.java b/Mage.Sets/src/mage/cards/c/CovetousDragon.java index 13a040ef189..e6bbd144151 100644 --- a/Mage.Sets/src/mage/cards/c/CovetousDragon.java +++ b/Mage.Sets/src/mage/cards/c/CovetousDragon.java @@ -28,13 +28,13 @@ package mage.cards.c; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactPermanent; import java.util.UUID; @@ -56,7 +56,7 @@ public class CovetousDragon extends CardImpl { // When you control no artifacts, sacrifice Covetous Dragon. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterArtifactPermanent("no artifacts"), Filter.ComparisonType.Equal, 0, + new FilterArtifactPermanent("no artifacts"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/c/Crackdown.java b/Mage.Sets/src/mage/cards/c/Crackdown.java index e88287d5037..eda4fd77f74 100644 --- a/Mage.Sets/src/mage/cards/c/Crackdown.java +++ b/Mage.Sets/src/mage/cards/c/Crackdown.java @@ -28,6 +28,7 @@ package mage.cards.c; import mage.ObjectColor; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -36,7 +37,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ColorPredicate; @@ -54,7 +54,7 @@ public class Crackdown extends CardImpl { static { filter.add(Predicates.not(new ColorPredicate(ObjectColor.WHITE))); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public Crackdown(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CracklingDoom.java b/Mage.Sets/src/mage/cards/c/CracklingDoom.java index c84c29edcab..28668420645 100644 --- a/Mage.Sets/src/mage/cards/c/CracklingDoom.java +++ b/Mage.Sets/src/mage/cards/c/CracklingDoom.java @@ -28,6 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.DamagePlayersEffect; import mage.cards.CardImpl; @@ -35,7 +36,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -117,7 +117,7 @@ class CracklingDoomEffect extends OneShotEffect { } } else if (greatestPower != Integer.MIN_VALUE) { FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature to sacrifice with power equal to " + greatestPower); - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, greatestPower)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, greatestPower)); Target target = new TargetControlledCreaturePermanent(filter); if (opponent.choose(outcome, target, playerId, game)) { Permanent permanent = game.getPermanent(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/c/CraftyPathmage.java b/Mage.Sets/src/mage/cards/c/CraftyPathmage.java index a0ba0229c75..9c1019b177b 100644 --- a/Mage.Sets/src/mage/cards/c/CraftyPathmage.java +++ b/Mage.Sets/src/mage/cards/c/CraftyPathmage.java @@ -29,6 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -52,7 +52,7 @@ public class CraftyPathmage extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public CraftyPathmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CryptChampion.java b/Mage.Sets/src/mage/cards/c/CryptChampion.java index 884756836a2..19520144c40 100644 --- a/Mage.Sets/src/mage/cards/c/CryptChampion.java +++ b/Mage.Sets/src/mage/cards/c/CryptChampion.java @@ -29,6 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.ManaWasSpentCondition; import mage.abilities.effects.OneShotEffect; @@ -41,7 +42,6 @@ import mage.constants.CardType; import mage.constants.ColoredManaSymbol; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -112,7 +112,7 @@ class CryptChampionEffect extends OneShotEffect { if (player != null) { FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); filter.add(new OwnerIdPredicate(playerId)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); Target target = new TargetCardInGraveyard(filter); if (target.canChoose(playerId, game) && player.chooseTarget(outcome, target, source, game)) { Card card = game.getCard(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/c/CullingScales.java b/Mage.Sets/src/mage/cards/c/CullingScales.java index a5bc9e73866..6d562f3d703 100644 --- a/Mage.Sets/src/mage/cards/c/CullingScales.java +++ b/Mage.Sets/src/mage/cards/c/CullingScales.java @@ -28,13 +28,13 @@ package mage.cards.c; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterNonlandPermanent; import mage.filter.predicate.Predicate; @@ -83,7 +83,7 @@ class HasLowestCMCAmongstNonlandPermanentsPredicate implements Predicate cardsToHand = new HashSet<>(); for (Permanent permanent : game.getBattlefield().getActivePermanents(creatureFilter, source.getControllerId(), source.getSourceId(), game)) { cardsToHand.add(permanent); diff --git a/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java b/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java index 47246346e93..ddb664b0456 100644 --- a/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java +++ b/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java @@ -29,6 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.UntapTargetEffect; @@ -40,7 +41,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -58,7 +58,7 @@ public class EnthrallingVictor extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature an opponent controls with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/e/EpharasWarden.java b/Mage.Sets/src/mage/cards/e/EpharasWarden.java index 95a528299a7..49d5f7afdaf 100644 --- a/Mage.Sets/src/mage/cards/e/EpharasWarden.java +++ b/Mage.Sets/src/mage/cards/e/EpharasWarden.java @@ -29,6 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.Target; @@ -52,7 +52,7 @@ public class EpharasWarden extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public EpharasWarden(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EpicExperiment.java b/Mage.Sets/src/mage/cards/e/EpicExperiment.java index 302aaf5e8af..158ab220dfc 100644 --- a/Mage.Sets/src/mage/cards/e/EpicExperiment.java +++ b/Mage.Sets/src/mage/cards/e/EpicExperiment.java @@ -29,12 +29,12 @@ package mage.cards.e; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -91,7 +91,7 @@ class EpicExperimentEffect extends OneShotEffect { // cast the possible cards without paying the mana ExileZone epicExperimentExileZone = game.getExile().getExileZone(source.getSourceId()); FilterCard filter = new FilterInstantOrSorceryCard(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); filter.setMessage("instant and sorcery cards with converted mana cost " + source.getManaCostsToPay().getX() + " or less"); Cards cardsToCast = new CardsImpl(); if (epicExperimentExileZone == null) { diff --git a/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java b/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java index 3fceb224a82..6bc571328c3 100644 --- a/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java +++ b/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java @@ -29,6 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.Target; @@ -52,7 +52,7 @@ public class ErrantDoomsayers extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 2 or less"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); } public ErrantDoomsayers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Evershrike.java b/Mage.Sets/src/mage/cards/e/Evershrike.java index f98efc757a0..9e36d56a123 100644 --- a/Mage.Sets/src/mage/cards/e/Evershrike.java +++ b/Mage.Sets/src/mage/cards/e/Evershrike.java @@ -29,6 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -43,7 +44,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -57,14 +57,12 @@ import mage.target.TargetCard; import java.util.UUID; /** - * * @author jeffwadsworth - * */ public class Evershrike extends CardImpl { public Evershrike(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{W/B}{W/B}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{W/B}{W/B}"); this.subtype.add("Elemental"); this.subtype.add("Spirit"); @@ -120,7 +118,7 @@ class EvershrikeEffect extends OneShotEffect { filterAuraCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); filterAuraCard.add(new SubtypePredicate("Aura")); filterAuraCard.add(new AuraCardCanAttachToPermanentId(evershrikePermanent.getId())); - filterAuraCard.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, xAmount)); + filterAuraCard.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xAmount)); int count = controller.getHand().count(filterAuraCard, game); while (controller.canRespond() && count > 0 && controller.chooseUse(Outcome.Benefit, "Do you wish to put an Aura card from your hand onto Evershrike", source, game)) { TargetCard targetAura = new TargetCard(Zone.HAND, filterAuraCard); diff --git a/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java b/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java index d488c0cd729..7de5df7d2e6 100644 --- a/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java +++ b/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java @@ -28,6 +28,7 @@ package mage.cards.e; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.MoreCardsInHandThanOpponentsCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -38,7 +39,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPlayer; @@ -54,7 +54,7 @@ public class ExileIntoDarkness extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public ExileIntoDarkness(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java b/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java index 2418097e9e9..516a6ba3e09 100644 --- a/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java +++ b/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java @@ -28,6 +28,7 @@ package mage.cards.e; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.DamageTargetEffect; import mage.abilities.mana.ColorlessManaAbility; @@ -35,7 +36,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -46,13 +46,12 @@ import mage.target.TargetPlayer; import java.util.UUID; /** - * * @author North */ public class ExuberantFirestoker extends CardImpl { public ExuberantFirestoker(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}"); this.subtype.add("Human"); this.subtype.add("Druid"); this.subtype.add("Shaman"); @@ -81,7 +80,7 @@ class ExuberantFirestokerTriggeredAbility extends TriggeredAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public ExuberantFirestokerTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java b/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java index 19810ba9a65..9be0ad354df 100644 --- a/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java +++ b/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java @@ -29,6 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -37,7 +38,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.AnotherPredicate; @@ -58,7 +58,7 @@ public class EzuriClawOfProgress extends CardImpl { final private static FilterControlledCreaturePermanent filter2 = new FilterControlledCreaturePermanent(); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); filter2.add(new AnotherPredicate()); } diff --git a/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java b/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java index b3e46b83b97..49238b2e23b 100644 --- a/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java +++ b/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java @@ -29,13 +29,13 @@ package mage.cards.f; import mage.ObjectColor; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.ContinuousEffectImpl; import mage.abilities.keyword.ProtectionAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; @@ -108,7 +108,7 @@ class FavorOfTheMightyEffect extends ContinuousEffectImpl { } } FilterPermanent filterMaxCMC = new FilterCreaturePermanent(); - filterMaxCMC.add(new ConvertedManaCostPredicate(ComparisonType.Equal, maxCMC)); + filterMaxCMC.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, maxCMC)); for (Permanent permanent : game.getBattlefield().getActivePermanents(filterMaxCMC, source.getControllerId(), game)) { if (permanent != null) { permanent.addAbility(new ProtectionAbility(filter), source.getSourceId(), game); diff --git a/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java b/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java index e890d3dc3ed..f5d93ccb0d1 100644 --- a/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java +++ b/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java @@ -27,6 +27,7 @@ */ package mage.cards.f; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.CopyTargetSpellEffect; import mage.abilities.effects.common.DestroyTargetEffect; @@ -34,7 +35,6 @@ import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.common.FilterNonlandPermanent; import mage.filter.predicate.Predicates; @@ -56,7 +56,7 @@ public class FerocityOfTheUnderworld extends CardImpl { private static final FilterSpell filterMode2 = new FilterSpell("instant or sorcery spell"); static { - filterMode1.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filterMode1.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); filterMode2.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); } diff --git a/Mage.Sets/src/mage/cards/f/FierceEmpath.java b/Mage.Sets/src/mage/cards/f/FierceEmpath.java index ff93255b9c9..7b63074ae2b 100644 --- a/Mage.Sets/src/mage/cards/f/FierceEmpath.java +++ b/Mage.Sets/src/mage/cards/f/FierceEmpath.java @@ -28,12 +28,12 @@ package mage.cards.f; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; @@ -48,7 +48,7 @@ public class FierceEmpath extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with converted mana cost 6 or greater"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); } public FierceEmpath(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); diff --git a/Mage.Sets/src/mage/cards/f/FiremindsForesight.java b/Mage.Sets/src/mage/cards/f/FiremindsForesight.java index 45ac63f4335..7b7cc5a08a4 100644 --- a/Mage.Sets/src/mage/cards/f/FiremindsForesight.java +++ b/Mage.Sets/src/mage/cards/f/FiremindsForesight.java @@ -28,12 +28,12 @@ package mage.cards.f; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -100,7 +100,7 @@ class FiremindsForesightSearchEffect extends OneShotEffect { for (int cmc=3; cmc > 0; cmc--) { FilterCard filter = new FilterCard("instant card with converted mana cost " + cmc); filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, cmc)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); cardsCount = cardsInLibrary.count(filter, game); diff --git a/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java b/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java index bb90e383654..c323262c0ad 100644 --- a/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java +++ b/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java @@ -28,13 +28,13 @@ package mage.cards.f; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -49,7 +49,7 @@ public class FleetFootedMonk extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public FleetFootedMonk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java b/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java index 14db63f518b..8acdc40faf4 100644 --- a/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java +++ b/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java @@ -29,12 +29,12 @@ package mage.cards.f; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.common.TargetCreaturePermanent; @@ -50,7 +50,7 @@ public class FleshpulperGiant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughess 2 or less"); static { - filter.add(new ToughnessPredicate(ComparisonType.LessThan, 3)); + filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); } public FleshpulperGiant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Fleshwrither.java b/Mage.Sets/src/mage/cards/f/Fleshwrither.java index ac75906940e..06a5ac1b033 100644 --- a/Mage.Sets/src/mage/cards/f/Fleshwrither.java +++ b/Mage.Sets/src/mage/cards/f/Fleshwrither.java @@ -30,6 +30,7 @@ package mage.cards.f; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -42,7 +43,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TimingRule; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -98,7 +98,7 @@ class FleshwritherEffect extends OneShotEffect { MageObject sourceObject = game.getObject(source.getSourceId()); if (sourceObject != null && controller != null) { FilterCreatureCard filter = new FilterCreatureCard("creature with converted mana cost " + sourceObject.getConvertedManaCost()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, sourceObject.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, sourceObject.getConvertedManaCost())); TargetCardInLibrary target = new TargetCardInLibrary(1, filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage.Sets/src/mage/cards/f/Fragmentize.java b/Mage.Sets/src/mage/cards/f/Fragmentize.java index 001510c7e96..9f6c147e53a 100644 --- a/Mage.Sets/src/mage/cards/f/Fragmentize.java +++ b/Mage.Sets/src/mage/cards/f/Fragmentize.java @@ -27,11 +27,11 @@ */ package mage.cards.f; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactOrEnchantmentPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPermanent; @@ -47,7 +47,7 @@ public class Fragmentize extends CardImpl { private static final FilterArtifactOrEnchantmentPermanent filter = new FilterArtifactOrEnchantmentPermanent("artifact or enchantment with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public Fragmentize(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GarruksPackleader.java b/Mage.Sets/src/mage/cards/g/GarruksPackleader.java index 9585d3336d5..297c2f61cd7 100644 --- a/Mage.Sets/src/mage/cards/g/GarruksPackleader.java +++ b/Mage.Sets/src/mage/cards/g/GarruksPackleader.java @@ -29,13 +29,13 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -52,7 +52,7 @@ public class GarruksPackleader extends CardImpl { private static final FilterPermanent filter = new FilterControlledCreaturePermanent("another creature with power 3 or greater"); static { filter.add(new AnotherPredicate()); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public GarruksPackleader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GateSmasher.java b/Mage.Sets/src/mage/cards/g/GateSmasher.java index 95254070e14..68f587c722c 100644 --- a/Mage.Sets/src/mage/cards/g/GateSmasher.java +++ b/Mage.Sets/src/mage/cards/g/GateSmasher.java @@ -28,6 +28,7 @@ package mage.cards.g; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.AttachableToRestrictedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -42,7 +43,6 @@ import mage.constants.AttachmentType; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.Target; @@ -59,7 +59,7 @@ public class GateSmasher extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature with 3 or more power"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); } public GateSmasher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GazeOfGranite.java b/Mage.Sets/src/mage/cards/g/GazeOfGranite.java index 3d5981ba961..2c1cc62d97d 100644 --- a/Mage.Sets/src/mage/cards/g/GazeOfGranite.java +++ b/Mage.Sets/src/mage/cards/g/GazeOfGranite.java @@ -28,12 +28,12 @@ package mage.cards.g; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -49,7 +49,7 @@ public class GazeOfGranite extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("each nonland permanent with converted mana cost X or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public GazeOfGranite(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GenesisHydra.java b/Mage.Sets/src/mage/cards/g/GenesisHydra.java index 32b8256e69d..d2bd7396ee8 100644 --- a/Mage.Sets/src/mage/cards/g/GenesisHydra.java +++ b/Mage.Sets/src/mage/cards/g/GenesisHydra.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -39,7 +40,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; @@ -119,7 +119,7 @@ class GenesisHydraPutOntoBattlefieldEffect extends OneShotEffect { FilterCard filter = new FilterPermanentCard("a nonland permanent card with converted mana cost " + count + " or less to put onto the battlefield"); filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, count + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, count + 1)); TargetCard target1 = new TargetCard(Zone.LIBRARY, filter); target1.setRequired(false); if (cards.count(filter, controller.getId(), source.getSourceId(), game) > 0) { diff --git a/Mage.Sets/src/mage/cards/g/GenesisWave.java b/Mage.Sets/src/mage/cards/g/GenesisWave.java index cfacef27b42..7912b1f5f65 100644 --- a/Mage.Sets/src/mage/cards/g/GenesisWave.java +++ b/Mage.Sets/src/mage/cards/g/GenesisWave.java @@ -29,12 +29,12 @@ package mage.cards.g; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -101,7 +101,7 @@ class GenesisWaveEffect extends OneShotEffect { if (!cards.isEmpty()) { controller.revealCards(sourceObject.getIdName(), cards, game); FilterCard filter = new FilterCard("cards with converted mana cost " + xValue + " or less to put onto the battlefield"); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); filter.add( Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), diff --git a/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java b/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java index 32d3fdd2e4d..af7b93c1f09 100644 --- a/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java +++ b/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; @@ -40,7 +41,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -53,7 +53,6 @@ import mage.target.common.TargetCardInOpponentsGraveyard; import java.util.UUID; /** - * * @author nantuko */ public class GethLordOfTheVault extends CardImpl { @@ -61,7 +60,7 @@ public class GethLordOfTheVault extends CardImpl { private final UUID originalId; public GethLordOfTheVault(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{B}{B}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{B}{B}"); addSuperType(SuperType.LEGENDARY); this.subtype.add("Zombie"); @@ -87,7 +86,7 @@ public class GethLordOfTheVault extends CardImpl { filter.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); Target target = new TargetCardInOpponentsGraveyard(filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/g/GhirapurGuide.java b/Mage.Sets/src/mage/cards/g/GhirapurGuide.java index 0f8a2ef7745..420a7a37f6f 100644 --- a/Mage.Sets/src/mage/cards/g/GhirapurGuide.java +++ b/Mage.Sets/src/mage/cards/g/GhirapurGuide.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.combat.CantBeBlockedByAllTargetEffect; @@ -37,7 +38,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -53,7 +53,7 @@ public class GhirapurGuide extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public GhirapurGuide(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java b/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java index 3309019010a..5c27f0af7d9 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java +++ b/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -41,7 +42,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -62,7 +62,7 @@ public class GoblinDarkDwellers extends CardImpl { private static final FilterInstantOrSorceryCard filter = new FilterInstantOrSorceryCard("instant or sorcery card with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public GoblinDarkDwellers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinKites.java b/Mage.Sets/src/mage/cards/g/GoblinKites.java index 3e3d6415bb6..f20a827a88f 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinKites.java +++ b/Mage.Sets/src/mage/cards/g/GoblinKites.java @@ -28,6 +28,7 @@ package mage.cards.g; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -38,7 +39,6 @@ import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -58,7 +58,7 @@ public class GoblinKites extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("controlled creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinMutant.java b/Mage.Sets/src/mage/cards/g/GoblinMutant.java index 8e0f8ea5baf..5890cd64c93 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinMutant.java +++ b/Mage.Sets/src/mage/cards/g/GoblinMutant.java @@ -28,6 +28,7 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantAttackIfDefenderControlsPermanent; @@ -37,7 +38,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.PowerPredicate; @@ -56,8 +56,8 @@ public class GoblinMutant extends CardImpl { static final private FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(Predicates.and(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2), Predicates.not(new TappedPredicate()))); - filter2.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(Predicates.and(new PowerPredicate(CountType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); + filter2.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public GoblinMutant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinTunneler.java b/Mage.Sets/src/mage/cards/g/GoblinTunneler.java index cad47acefa2..6c7cc64198f 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinTunneler.java +++ b/Mage.Sets/src/mage/cards/g/GoblinTunneler.java @@ -30,6 +30,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; @@ -37,7 +38,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; @@ -53,7 +53,7 @@ public class GoblinTunneler extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public GoblinTunneler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java b/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java index 207995e4bb5..355a66e54f8 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java +++ b/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java @@ -28,24 +28,23 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.keyword.MountainwalkAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.SubtypePredicate; import java.util.UUID; /** - * * @author fireshoes */ public class GoblinsOfTheFlarg extends CardImpl { - + private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a Dwarf"); static { @@ -53,7 +52,7 @@ public class GoblinsOfTheFlarg extends CardImpl { } public GoblinsOfTheFlarg(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{R}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}"); this.subtype.add("Goblin"); this.subtype.add("Warrior"); this.power = new MageInt(1); @@ -61,10 +60,10 @@ public class GoblinsOfTheFlarg extends CardImpl { // Mountainwalk this.addAbility(new MountainwalkAbility()); - + // When you control a Dwarf, sacrifice Goblins of the Flarg. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - filter, Filter.ComparisonType.GreaterThan, 0, + filter, CountType.MORE_THAN, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/g/Godtoucher.java b/Mage.Sets/src/mage/cards/g/Godtoucher.java index fd6aca7d984..a7fa90281b1 100644 --- a/Mage.Sets/src/mage/cards/g/Godtoucher.java +++ b/Mage.Sets/src/mage/cards/g/Godtoucher.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -38,7 +39,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -56,7 +56,7 @@ public class Godtoucher extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public Godtoucher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java b/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java index 6baeb99c54b..bdd0821302d 100644 --- a/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java +++ b/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java @@ -28,6 +28,7 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.common.counter.AddCountersSourceEffect; import mage.cards.CardImpl; @@ -35,7 +36,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -50,7 +50,7 @@ public class GodtrackerOfJund extends CardImpl { final private static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } String rule = "Whenever a creature with power 5 or greater enters the battlefield under your control, you may put a +1/+1 counter on {this}."; diff --git a/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java b/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java index 4c6627854d3..0b6f99942c8 100644 --- a/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java +++ b/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java @@ -28,13 +28,13 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -49,7 +49,7 @@ public class GoldmeadowDodger extends CardImpl { private static final FilterCreaturePermanent FILTER = new FilterCreaturePermanent("creatures with power 4 or greater"); static { - FILTER.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + FILTER.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public GoldmeadowDodger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GorillaPack.java b/Mage.Sets/src/mage/cards/g/GorillaPack.java index dbe163a2086..0ee340e08d7 100644 --- a/Mage.Sets/src/mage/cards/g/GorillaPack.java +++ b/Mage.Sets/src/mage/cards/g/GorillaPack.java @@ -28,6 +28,7 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; import java.util.UUID; @@ -58,7 +58,7 @@ public class GorillaPack extends CardImpl { // When you control no Forests, sacrifice Gorilla Pack. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Forest", "no Forests"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Forest", "no Forests"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/g/GorillaShaman.java b/Mage.Sets/src/mage/cards/g/GorillaShaman.java index cd5f9e73a54..f17ab085c1b 100644 --- a/Mage.Sets/src/mage/cards/g/GorillaShaman.java +++ b/Mage.Sets/src/mage/cards/g/GorillaShaman.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -36,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -75,7 +75,7 @@ public class GorillaShaman extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterArtifactPermanent filter = new FilterArtifactPermanent(new StringBuilder("noncreature artifact with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); Target target = new TargetPermanent(filter); ability.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/g/Granulate.java b/Mage.Sets/src/mage/cards/g/Granulate.java index a5dd68d8ac8..b6dee8d7d23 100644 --- a/Mage.Sets/src/mage/cards/g/Granulate.java +++ b/Mage.Sets/src/mage/cards/g/Granulate.java @@ -27,11 +27,11 @@ */ package mage.cards.g; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterNonlandPermanent; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -47,7 +47,7 @@ public class Granulate extends CardImpl { private static final FilterNonlandPermanent filter = new FilterNonlandPermanent("nonland artifact with converted mana cost 4 or less"); static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public Granulate(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{R}{R}"); diff --git a/Mage.Sets/src/mage/cards/g/Grozoth.java b/Mage.Sets/src/mage/cards/g/Grozoth.java index 5ffb8b50fe4..fe92efc9644 100644 --- a/Mage.Sets/src/mage/cards/g/Grozoth.java +++ b/Mage.Sets/src/mage/cards/g/Grozoth.java @@ -29,6 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -41,7 +42,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -93,7 +93,7 @@ class GrozothEffect extends SearchEffect { private static final FilterCard filter = new FilterCard(); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, 9)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 9)); } public GrozothEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GustriderExuberant.java b/Mage.Sets/src/mage/cards/g/GustriderExuberant.java index a682911ea94..12af7c269c3 100644 --- a/Mage.Sets/src/mage/cards/g/GustriderExuberant.java +++ b/Mage.Sets/src/mage/cards/g/GustriderExuberant.java @@ -28,6 +28,7 @@ package mage.cards.g; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; @@ -37,7 +38,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -52,7 +52,7 @@ public class GustriderExuberant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public GustriderExuberant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HammerMage.java b/Mage.Sets/src/mage/cards/h/HammerMage.java index cf57a37f918..880f5f40d83 100644 --- a/Mage.Sets/src/mage/cards/h/HammerMage.java +++ b/Mage.Sets/src/mage/cards/h/HammerMage.java @@ -27,9 +27,9 @@ */ package mage.cards.h; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardCardCost; import mage.abilities.costs.common.TapSourceCost; @@ -40,12 +40,13 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; +import java.util.UUID; + /** * * @author LoneFox @@ -95,7 +96,7 @@ class HammerMageEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { FilterArtifactPermanent filter = new FilterArtifactPermanent(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); for(Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/h/HearthCharm.java b/Mage.Sets/src/mage/cards/h/HearthCharm.java index c86cbfb983e..5e120809dd2 100644 --- a/Mage.Sets/src/mage/cards/h/HearthCharm.java +++ b/Mage.Sets/src/mage/cards/h/HearthCharm.java @@ -27,7 +27,7 @@ */ package mage.cards.h; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; @@ -36,13 +36,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.AttackingPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LoneFox @@ -55,7 +56,7 @@ public class HearthCharm extends CardImpl { static { filter1.add(new CardTypePredicate(CardType.ARTIFACT)); filter2.add(new AttackingPredicate()); - filter3.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter3.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public HearthCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HearthKami.java b/Mage.Sets/src/mage/cards/h/HearthKami.java index bb744205446..271136a3168 100644 --- a/Mage.Sets/src/mage/cards/h/HearthKami.java +++ b/Mage.Sets/src/mage/cards/h/HearthKami.java @@ -27,9 +27,9 @@ */ package mage.cards.h; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -38,13 +38,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.Target; import mage.target.TargetPermanent; +import java.util.UUID; + /** * @author Loki */ @@ -53,7 +54,7 @@ public class HearthKami extends CardImpl { private final UUID originalId; public HearthKami(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{R}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}"); this.subtype.add("Spirit"); this.power = new MageInt(2); @@ -73,7 +74,7 @@ public class HearthKami extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterArtifactPermanent filter = new FilterArtifactPermanent(new StringBuilder("artifact with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); Target target = new TargetPermanent(filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/h/HibernationsEnd.java b/Mage.Sets/src/mage/cards/h/HibernationsEnd.java index 9fb08364881..55b30b05a23 100644 --- a/Mage.Sets/src/mage/cards/h/HibernationsEnd.java +++ b/Mage.Sets/src/mage/cards/h/HibernationsEnd.java @@ -27,8 +27,8 @@ */ package mage.cards.h; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; @@ -39,7 +39,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -50,6 +49,8 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author LoneFox @@ -129,7 +130,7 @@ class HibernationsEndEffect extends OneShotEffect { if (sourcePermanent != null && player != null) { int newConvertedCost = sourcePermanent.getCounters(game).getCount("age"); FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, newConvertedCost)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, newConvertedCost)); filter.add(new CardTypePredicate(CardType.CREATURE)); TargetCardInLibrary target = new TargetCardInLibrary(filter); return new SearchLibraryPutInPlayEffect(target).apply(game, source); diff --git a/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java b/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java index 0e0f16c099b..bcbbf899142 100644 --- a/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java +++ b/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java @@ -27,9 +27,9 @@ */ package mage.cards.h; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.TurnedFaceUpSourceTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -39,12 +39,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -54,7 +55,7 @@ public class HiddenDragonslayer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater an opponent controls"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/h/HorriblyAwry.java b/Mage.Sets/src/mage/cards/h/HorriblyAwry.java index 5eacb57555c..a87660857c6 100644 --- a/Mage.Sets/src/mage/cards/h/HorriblyAwry.java +++ b/Mage.Sets/src/mage/cards/h/HorriblyAwry.java @@ -27,19 +27,20 @@ */ package mage.cards.h; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.common.CounterTargetWithReplacementEffect; import mage.abilities.keyword.DevoidAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author LevelX2 @@ -49,7 +50,7 @@ public class HorriblyAwry extends CardImpl { private static final FilterCreatureSpell filter = new FilterCreatureSpell("creature spell with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public HorriblyAwry(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java b/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java index 1c3f75e9093..afaf64e711b 100644 --- a/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java +++ b/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java @@ -27,17 +27,18 @@ */ package mage.cards.h; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.keyword.InvestigateEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -47,7 +48,7 @@ public class HumbleTheBrute extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public HumbleTheBrute(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java b/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java index 9bb344cc5f9..564016059cb 100644 --- a/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java +++ b/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java @@ -27,18 +27,19 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author LevelX2 @@ -48,7 +49,7 @@ public class ImperialRecruiter extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with power 2 or less"); static{ - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public ImperialRecruiter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java b/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java index 31045a1e2f2..bf75f77b458 100644 --- a/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java +++ b/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java @@ -28,19 +28,20 @@ package mage.cards.i; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPlayer; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -51,7 +52,7 @@ public class InquisitionOfKozilek extends CardImpl { static { filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public InquisitionOfKozilek(UUID ownerId, CardSetInfo setInfo){ diff --git a/Mage.Sets/src/mage/cards/i/IntrepidHero.java b/Mage.Sets/src/mage/cards/i/IntrepidHero.java index c34b3c63a95..fac2bcc859b 100644 --- a/Mage.Sets/src/mage/cards/i/IntrepidHero.java +++ b/Mage.Sets/src/mage/cards/i/IntrepidHero.java @@ -27,21 +27,22 @@ */ package mage.cards.i; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -51,7 +52,7 @@ public class IntrepidHero extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN,3)); } public IntrepidHero(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java b/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java index 72ee4a5a4c9..dbf5b08e47a 100644 --- a/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java +++ b/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java @@ -27,8 +27,8 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -40,10 +40,11 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author dustinconrad @@ -52,7 +53,7 @@ public class IronclawBuzzardiers extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public IronclawBuzzardiers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IronclawOrcs.java b/Mage.Sets/src/mage/cards/i/IronclawOrcs.java index d81084d76c8..87932a18829 100644 --- a/Mage.Sets/src/mage/cards/i/IronclawOrcs.java +++ b/Mage.Sets/src/mage/cards/i/IronclawOrcs.java @@ -27,18 +27,19 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author dustinconrad @@ -47,7 +48,7 @@ public class IronclawOrcs extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public IronclawOrcs(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java b/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java index 980280e3312..5d4705b24ee 100644 --- a/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java +++ b/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java @@ -27,8 +27,8 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; @@ -43,9 +43,10 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -73,7 +74,7 @@ public class IslandFishJasconius extends CardImpl { // When you control no Islands, sacrifice Island Fish Jasconius. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/i/IslebackSpawn.java b/Mage.Sets/src/mage/cards/i/IslebackSpawn.java index 1aca6db08b8..b4f8aad2720 100644 --- a/Mage.Sets/src/mage/cards/i/IslebackSpawn.java +++ b/Mage.Sets/src/mage/cards/i/IslebackSpawn.java @@ -27,10 +27,9 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.Condition; import mage.abilities.condition.common.CardsInAnyLibraryCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect; @@ -41,6 +40,8 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; +import java.util.UUID; + /** * * @author LevelX2 @@ -59,7 +60,7 @@ public class IslebackSpawn extends CardImpl { // Isleback Spawn gets +4/+8 as long as a library has twenty or fewer cards in it. this.addAbility(new SimpleStaticAbility(Zone.ALL, new ConditionalContinuousEffect( new BoostSourceEffect(4,8, Duration.EndOfGame), - new CardsInAnyLibraryCondition(Condition.ComparisonType.LessThan, 21), + new CardsInAnyLibraryCondition(CountType.FEWER_THAN, 21), "{this} gets +4/+8 as long as a library has twenty or fewer cards in it"))); } diff --git a/Mage.Sets/src/mage/cards/i/IsochronScepter.java b/Mage.Sets/src/mage/cards/i/IsochronScepter.java index 99335309324..391bb7ce852 100644 --- a/Mage.Sets/src/mage/cards/i/IsochronScepter.java +++ b/Mage.Sets/src/mage/cards/i/IsochronScepter.java @@ -27,8 +27,8 @@ */ package mage.cards.i; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -40,7 +40,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -51,6 +50,8 @@ import mage.target.TargetCard; import mage.util.CardUtil; import org.apache.log4j.Logger; +import java.util.UUID; + /** * * @author LevelX2 @@ -86,7 +87,7 @@ class IsochronScepterImprintEffect extends OneShotEffect { static { filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public IsochronScepterImprintEffect() { diff --git a/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java b/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java index 558b15f8c7a..a8e9ebc65ee 100644 --- a/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java +++ b/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java @@ -27,9 +27,9 @@ */ package mage.cards.i; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.CopyTargetSpellEffect; @@ -38,13 +38,14 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author LevelX2 @@ -56,10 +57,10 @@ public class IzzetGuildmage extends CardImpl { static { filterInstant.add(new CardTypePredicate(CardType.INSTANT)); - filterInstant.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filterInstant.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); filterInstant.add(new ControllerPredicate(TargetController.YOU)); filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); - filterSorcery.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filterSorcery.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); filterSorcery.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/j/JarJarBinks.java b/Mage.Sets/src/mage/cards/j/JarJarBinks.java index 83036a3a124..0f0e2825c7f 100644 --- a/Mage.Sets/src/mage/cards/j/JarJarBinks.java +++ b/Mage.Sets/src/mage/cards/j/JarJarBinks.java @@ -29,6 +29,7 @@ package mage.cards.j; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.common.CantBlockAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -38,7 +39,6 @@ import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -181,7 +181,7 @@ class JarJarBinksTapEffect extends OneShotEffect { } if (multipleExist) { FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("one of the creatures with the highest power"); - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, highestPower)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, highestPower)); Target target = new TargetPermanent(filter); target.setNotTarget(true); if (target.canChoose(source.getSourceId(), source.getControllerId(), game)) { diff --git a/Mage.Sets/src/mage/cards/j/JuntuStakes.java b/Mage.Sets/src/mage/cards/j/JuntuStakes.java index 0467b1df0a5..99324b56b8f 100644 --- a/Mage.Sets/src/mage/cards/j/JuntuStakes.java +++ b/Mage.Sets/src/mage/cards/j/JuntuStakes.java @@ -27,7 +27,7 @@ */ package mage.cards.j; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -36,10 +36,11 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LoneFox @@ -49,7 +50,7 @@ public class JuntuStakes extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 1 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 2)); } public JuntuStakes(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java b/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java index d3ec8b6ffe0..55fbb04b72e 100644 --- a/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java +++ b/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java @@ -27,26 +27,21 @@ */ package mage.cards.k; -import java.util.UUID; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.SearchEffect; -import mage.cards.Card; -import mage.cards.CardImpl; -import mage.cards.CardSetInfo; -import mage.cards.Cards; -import mage.cards.CardsImpl; +import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -56,6 +51,8 @@ import mage.target.common.TargetCardInExile; import mage.target.common.TargetCardInLibrary; import mage.util.CardUtil; +import java.util.UUID; + /** * * @author LevelX2 @@ -151,7 +148,7 @@ class KahoMinamoHistorianCastEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { FilterCard filter = new FilterCard(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, source.getManaCostsToPay().getX())); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, source.getManaCostsToPay().getX())); TargetCardInExile target = new TargetCardInExile(filter, CardUtil.getCardExileZoneId(game, source)); Cards cards = game.getExile().getExileZone(CardUtil.getCardExileZoneId(game, source)); if (!cards.isEmpty() && controller.choose(Outcome.PlayForFree, cards, target, game)) { diff --git a/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java b/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java index 6b58126d3fe..dee8a0f13d9 100644 --- a/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java +++ b/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java @@ -29,6 +29,7 @@ package mage.cards.k; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.dynamicvalue.DynamicValue; @@ -44,7 +45,6 @@ import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -63,7 +63,7 @@ public class KalemneDiscipleOfIroas extends CardImpl { static { filterSpell.add(new CardTypePredicate(CardType.CREATURE)); - filterSpell.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 4)); + filterSpell.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 4)); } public KalemneDiscipleOfIroas(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KavuLair.java b/Mage.Sets/src/mage/cards/k/KavuLair.java index 703edba0864..37da5324d99 100644 --- a/Mage.Sets/src/mage/cards/k/KavuLair.java +++ b/Mage.Sets/src/mage/cards/k/KavuLair.java @@ -27,7 +27,7 @@ */ package mage.cards.k; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.common.DrawCardTargetEffect; import mage.cards.CardImpl; @@ -35,10 +35,11 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SetTargetPointer; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -48,7 +49,7 @@ public class KavuLair extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public KavuLair(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java b/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java index b4c610bfce9..79e3a4248a4 100644 --- a/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java +++ b/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java @@ -27,9 +27,9 @@ */ package mage.cards.k; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; @@ -44,7 +44,6 @@ import mage.constants.CardType; import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; @@ -53,6 +52,8 @@ import mage.filter.predicate.permanent.AnotherPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author emerald000 @@ -65,7 +66,7 @@ public class KheruBloodsucker extends CardImpl { static { anotherFilter.add(new AnotherPredicate()); toughnessFilter.add(new ControllerPredicate(TargetController.YOU)); - toughnessFilter.add(new ToughnessPredicate(ComparisonType.GreaterThan, 3)); + toughnessFilter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); } public KheruBloodsucker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KillingGlare.java b/Mage.Sets/src/mage/cards/k/KillingGlare.java index dfe6a990d83..3c3c48b42e9 100644 --- a/Mage.Sets/src/mage/cards/k/KillingGlare.java +++ b/Mage.Sets/src/mage/cards/k/KillingGlare.java @@ -27,19 +27,20 @@ */ package mage.cards.k; -import java.util.UUID; -import mage.constants.CardType; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -66,7 +67,7 @@ public class KillingGlare extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent filter = new FilterCreaturePermanent(new StringBuilder("creature with power ").append(xValue).append(" or less").toString()); - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, xValue + 1)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, xValue + 1)); ability.addTarget(new TargetCreaturePermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java b/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java index 18655c2cca6..0651ee68a23 100644 --- a/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java +++ b/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java @@ -27,8 +27,8 @@ */ package mage.cards.k; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.common.DiscardTargetCost; @@ -39,13 +39,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.common.TargetCardInHand; import mage.target.common.TargetCreatureOrPlayer; +import java.util.UUID; + /** * * @author anonymous @@ -73,7 +74,7 @@ public class KnollspineInvocation extends CardImpl { DiscardTargetCost discardCost = (DiscardTargetCost) cost; discardCost.getTargets().clear(); FilterCard adjustedFilter = filter.copy(); // don't use it directly, it's static!!!! - adjustedFilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + adjustedFilter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); discardCost.addTarget(new TargetCardInHand(adjustedFilter)); return; } diff --git a/Mage.Sets/src/mage/cards/k/KorLineSlinger.java b/Mage.Sets/src/mage/cards/k/KorLineSlinger.java index da43060293e..ddc10362082 100644 --- a/Mage.Sets/src/mage/cards/k/KorLineSlinger.java +++ b/Mage.Sets/src/mage/cards/k/KorLineSlinger.java @@ -27,23 +27,23 @@ */ package mage.cards.k; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author North */ public class KorLineSlinger extends CardImpl { @@ -51,11 +51,11 @@ public class KorLineSlinger extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public KorLineSlinger(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}"); this.subtype.add("Kor"); this.subtype.add("Scout"); diff --git a/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java b/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java index 470978d5768..2f7f92b36fc 100644 --- a/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java +++ b/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java @@ -46,7 +46,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -146,7 +145,7 @@ class KozilekDiscardCost extends CostImpl { return false; } FilterCard filter = new FilterCard("card with converted mana cost of " + targetSpell.getConvertedManaCost()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, targetSpell.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, targetSpell.getConvertedManaCost())); TargetCardInHand target = new TargetCardInHand(filter); this.getTargets().clear(); this.getTargets().add(target); diff --git a/Mage.Sets/src/mage/cards/k/KozileksReturn.java b/Mage.Sets/src/mage/cards/k/KozileksReturn.java index 69011238a9f..03009acf1f7 100644 --- a/Mage.Sets/src/mage/cards/k/KozileksReturn.java +++ b/Mage.Sets/src/mage/cards/k/KozileksReturn.java @@ -27,7 +27,7 @@ */ package mage.cards.k; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.costs.common.ExileSourceFromGraveCost; import mage.abilities.effects.common.DamageAllEffect; @@ -37,13 +37,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -55,7 +56,7 @@ public class KozileksReturn extends CardImpl { static { filter.add(new SubtypePredicate("Eldrazi")); filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.GreaterThan, 6)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 6)); } public KozileksReturn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrosanDrover.java b/Mage.Sets/src/mage/cards/k/KrosanDrover.java index f24c02589d2..09cbd22b20d 100644 --- a/Mage.Sets/src/mage/cards/k/KrosanDrover.java +++ b/Mage.Sets/src/mage/cards/k/KrosanDrover.java @@ -27,19 +27,20 @@ */ package mage.cards.k; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.cost.SpellsCostReductionControllerEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; +import java.util.UUID; + /** * * @author Eirkei @@ -50,7 +51,7 @@ public class KrosanDrover extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.GreaterThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); } public KrosanDrover(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrovikanRot.java b/Mage.Sets/src/mage/cards/k/KrovikanRot.java index 69d10e209d3..f8c10d51e6b 100644 --- a/Mage.Sets/src/mage/cards/k/KrovikanRot.java +++ b/Mage.Sets/src/mage/cards/k/KrovikanRot.java @@ -27,18 +27,19 @@ */ package mage.cards.k; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.RecoverAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -48,7 +49,7 @@ public class KrovikanRot extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public KrovikanRot(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java b/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java index 476a7b6aced..677c057ecb6 100644 --- a/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java +++ b/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java @@ -27,9 +27,9 @@ */ package mage.cards.k; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -44,7 +44,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -52,6 +51,8 @@ import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetLandPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -83,7 +84,7 @@ public class KukemssaSerpent extends CardImpl { // When you control no Islands, sacrifice Kukemssa Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/k/Kurgadon.java b/Mage.Sets/src/mage/cards/k/Kurgadon.java index 2b95c95b9a6..d0a9a2c3de7 100644 --- a/Mage.Sets/src/mage/cards/k/Kurgadon.java +++ b/Mage.Sets/src/mage/cards/k/Kurgadon.java @@ -27,19 +27,20 @@ */ package mage.cards.k; -import java.util.UUID; -import mage.constants.CardType; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.common.counter.AddCountersSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.counters.CounterType; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; +import java.util.UUID; + /** * * @author Backfir3 @@ -50,7 +51,7 @@ public class Kurgadon extends CardImpl { static { filterSpell.add(new CardTypePredicate(CardType.CREATURE)); - filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.GreaterThan, 5)); + filterSpell.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); } public Kurgadon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LambholtPacifist.java b/Mage.Sets/src/mage/cards/l/LambholtPacifist.java index 5abf4cba101..10653c9ec17 100644 --- a/Mage.Sets/src/mage/cards/l/LambholtPacifist.java +++ b/Mage.Sets/src/mage/cards/l/LambholtPacifist.java @@ -27,9 +27,9 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; @@ -44,12 +44,13 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterControlledPermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; +import java.util.UUID; + /** * * @author fireshoes @@ -91,7 +92,7 @@ class LambholtPacifistEffect extends RestrictionEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public LambholtPacifistEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LastBreath.java b/Mage.Sets/src/mage/cards/l/LastBreath.java index 39980f545c1..92bb5e2ea61 100644 --- a/Mage.Sets/src/mage/cards/l/LastBreath.java +++ b/Mage.Sets/src/mage/cards/l/LastBreath.java @@ -27,8 +27,8 @@ */ package mage.cards.l; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.ExileTargetEffect; import mage.cards.CardImpl; @@ -36,7 +36,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -44,6 +43,8 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -52,7 +53,7 @@ public class LastBreath extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public LastBreath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java b/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java index 331ac20b7f8..f61f5a16e20 100644 --- a/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java +++ b/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java @@ -28,25 +28,25 @@ package mage.cards.l; -import java.util.UUID; - -import mage.constants.CardType; import mage.MageInt; import mage.ObjectColor; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.DetainAllEffect; import mage.abilities.keyword.ProtectionAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -57,7 +57,7 @@ public class LaviniaOfTheTenth extends CardImpl { static { filterDetain.add(new ControllerPredicate(TargetController.OPPONENT)); filterDetain.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filterDetain.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filterDetain.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public LaviniaOfTheTenth (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java b/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java index fcb4cee973f..6c336b2be6d 100644 --- a/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java +++ b/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java @@ -27,8 +27,8 @@ */ package mage.cards.l; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -38,7 +38,6 @@ import mage.cards.CardsImpl; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -47,6 +46,8 @@ import mage.players.Player; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetControlledCreaturePermanent; +import java.util.UUID; + /** * * @author Styxo @@ -99,7 +100,7 @@ class LegacyOfTheBelovedEffect extends OneShotEffect { if (cost instanceof SacrificeTargetCost) { Permanent p = (Permanent) game.getLastKnownInformation(((SacrificeTargetCost) cost).getPermanents().get(0).getId(), Zone.BATTLEFIELD); if (p != null) { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, p.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, p.getConvertedManaCost())); TargetCardInLibrary target = new TargetCardInLibrary(0, 2, filter); Player player = game.getPlayer(source.getControllerId()); if (player != null && player.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/l/LegacysAllure.java b/Mage.Sets/src/mage/cards/l/LegacysAllure.java index bb8778eb8a2..e520cbbf038 100644 --- a/Mage.Sets/src/mage/cards/l/LegacysAllure.java +++ b/Mage.Sets/src/mage/cards/l/LegacysAllure.java @@ -27,8 +27,8 @@ */ package mage.cards.l; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; @@ -41,15 +41,15 @@ import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.Counter; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public class LegacysAllure extends CardImpl { @@ -57,7 +57,7 @@ public class LegacysAllure extends CardImpl { private final UUID originalId; public LegacysAllure(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{U}{U}"); + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{U}{U}"); // At the beginning of your upkeep, you may put a treasure counter on Legacy's Allure. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersSourceEffect(new Counter("treasure")), TargetController.YOU, true)); @@ -81,7 +81,7 @@ public class LegacysAllure extends CardImpl { if (sourcePermanent != null) { int numbCounters = sourcePermanent.getCounters(game).getCount("treasure"); FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power less than or equal to the number of treasure counters on " + getLogName()); - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, numbCounters + 1)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, numbCounters + 1)); ability.getTargets().clear(); ability.getTargets().add(new TargetCreaturePermanent(filter)); } diff --git a/Mage.Sets/src/mage/cards/l/LeoninSquire.java b/Mage.Sets/src/mage/cards/l/LeoninSquire.java index 4e8586ef7e8..16af11a8967 100644 --- a/Mage.Sets/src/mage/cards/l/LeoninSquire.java +++ b/Mage.Sets/src/mage/cards/l/LeoninSquire.java @@ -27,19 +27,20 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author Plopman @@ -48,7 +49,7 @@ public class LeoninSquire extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("target artifact card with converted mana cost 1 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public LeoninSquire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java index ad87bb63093..f81614e1656 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java @@ -28,6 +28,7 @@ package mage.cards.l; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; @@ -43,7 +44,6 @@ import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreaturePermanent; @@ -103,7 +103,7 @@ public class LilianaDefiantNecromancer extends CardImpl { } } FilterCard newFilter = filter.copy(); - newFilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, cmc)); + newFilter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); ability.getTargets().clear(); ability.addTarget(new TargetCardInYourGraveyard(newFilter)); } diff --git a/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java b/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java index 3962a517c89..bbbfa2c457e 100644 --- a/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java +++ b/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java @@ -27,9 +27,9 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -40,7 +40,6 @@ import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -51,6 +50,8 @@ import mage.players.Player; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author fireshoes @@ -123,7 +124,7 @@ class LinSivviDefiantHeroEffect extends OneShotEffect { int xCost = source.getManaCostsToPay().getX(); FilterPermanentCard filter = new FilterPermanentCard(new StringBuilder("Rebel permanent card with converted mana cost ").append(xCost).append(" or less").toString()); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, xCost + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xCost + 1)); filter.add(new SubtypePredicate("Rebel")); TargetCardInLibrary target = new TargetCardInLibrary(filter); diff --git a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java index 05687cad4b2..17a4f3a0e03 100644 --- a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java +++ b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java @@ -27,9 +27,9 @@ */ package mage.cards.l; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.abilityword.GrandeurAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -42,7 +42,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -56,6 +55,8 @@ import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author emerald000 @@ -97,7 +98,7 @@ public class LinessaZephyrMage extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost " + xValue); - filter.add(new ConvertedManaCostPredicate(ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); ability.getTargets().add(new TargetCreaturePermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/l/Liquify.java b/Mage.Sets/src/mage/cards/l/Liquify.java index 3030960f085..bdbafcc9d93 100644 --- a/Mage.Sets/src/mage/cards/l/Liquify.java +++ b/Mage.Sets/src/mage/cards/l/Liquify.java @@ -27,17 +27,18 @@ */ package mage.cards.l; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.CounterTargetWithReplacementEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author LoneFox @@ -47,7 +48,7 @@ public class Liquify extends CardImpl { private static final FilterSpell filter = new FilterSpell("spell with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public Liquify(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MantaRay.java b/Mage.Sets/src/mage/cards/m/MantaRay.java index b73b4327557..28e80a1643e 100644 --- a/Mage.Sets/src/mage/cards/m/MantaRay.java +++ b/Mage.Sets/src/mage/cards/m/MantaRay.java @@ -27,9 +27,9 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; import mage.ObjectColor; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.common.SimpleStaticAbility; @@ -41,12 +41,13 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ColorPredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -73,7 +74,7 @@ public class MantaRay extends CardImpl { // When you control no Islands, sacrifice Manta Ray. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/m/MarbleTitan.java b/Mage.Sets/src/mage/cards/m/MarbleTitan.java index f7e7f1710f3..c6d7e5c6e37 100644 --- a/Mage.Sets/src/mage/cards/m/MarbleTitan.java +++ b/Mage.Sets/src/mage/cards/m/MarbleTitan.java @@ -27,8 +27,8 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -37,10 +37,11 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LoneFox @@ -50,7 +51,7 @@ public class MarbleTitan extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 3 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public MarbleTitan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Marjhan.java b/Mage.Sets/src/mage/cards/m/Marjhan.java index 48b632b6834..bf17eb6f314 100644 --- a/Mage.Sets/src/mage/cards/m/Marjhan.java +++ b/Mage.Sets/src/mage/cards/m/Marjhan.java @@ -27,9 +27,9 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -51,7 +51,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.PhaseStep; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterAttackingCreature; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.Predicates; @@ -59,6 +58,8 @@ import mage.filter.predicate.mageobject.AbilityPredicate; import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -98,7 +99,7 @@ public class Marjhan extends CardImpl { // When you control no Islands, sacrifice Marjhan. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/m/MatterReshaper.java b/Mage.Sets/src/mage/cards/m/MatterReshaper.java index 149b042136b..5cf18f530e0 100644 --- a/Mage.Sets/src/mage/cards/m/MatterReshaper.java +++ b/Mage.Sets/src/mage/cards/m/MatterReshaper.java @@ -27,10 +27,10 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -40,12 +40,13 @@ import mage.cards.CardsImpl; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; +import java.util.UUID; + /** * * @author fireshoes @@ -96,7 +97,7 @@ class MatterReshaperEffect extends OneShotEffect { } controller.revealCards(sourceObject.getIdName(), new CardsImpl(card), game); FilterPermanentCard filter = new FilterPermanentCard("permanent card with converted mana cost 3 or less"); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); if (filter.match(card, game)) { if (controller.chooseUse(Outcome.PutCardInPlay, "Put " + card.getName() + " onto the battlefield (otherwise put in hand)?", source, game)) { card.putOntoBattlefield(game, Zone.LIBRARY, source.getSourceId(), source.getControllerId(), false); diff --git a/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java b/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java index 4ef91d9e143..8e9cdd0d28c 100644 --- a/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java +++ b/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java @@ -28,6 +28,7 @@ package mage.cards.m; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -37,7 +38,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; @@ -53,7 +53,7 @@ public class MayaelTheAnima extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with power 5 or greater"); static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public MayaelTheAnima(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MayaelsAria.java b/Mage.Sets/src/mage/cards/m/MayaelsAria.java index 966ac022bcc..b57ceef952f 100644 --- a/Mage.Sets/src/mage/cards/m/MayaelsAria.java +++ b/Mage.Sets/src/mage/cards/m/MayaelsAria.java @@ -27,8 +27,8 @@ */ package mage.cards.m; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -38,13 +38,14 @@ import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -94,7 +95,7 @@ class MayaelsAriaEffect extends OneShotEffect { } // put a +1/+1 counter on each creature you control if you control a creature with power 5 or greater. FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); if (game.getState().getBattlefield().countAll(filter, controller.getId(), game) > 0) { for (Permanent creature : game.getBattlefield().getAllActivePermanents(new FilterCreaturePermanent(), source.getControllerId(), game)) { creature.addCounters(CounterType.P1P1.createInstance(), source, game); @@ -104,14 +105,14 @@ class MayaelsAriaEffect extends OneShotEffect { // Then you gain 10 life if you control a creature with power 10 or greater. filter = new FilterCreaturePermanent(); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 9)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 9)); if (game.getState().getBattlefield().countAll(filter, controller.getId(), game) > 0) { controller.gainLife(10, game); } // Then you win the game if you control a creature with power 20 or greater. filter = new FilterCreaturePermanent(); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 19)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 19)); if (game.getState().getBattlefield().countAll(filter, controller.getId(), game) > 0) { controller.won(game); } diff --git a/Mage.Sets/src/mage/cards/m/Meekstone.java b/Mage.Sets/src/mage/cards/m/Meekstone.java index 63065cff1af..581a09afe16 100644 --- a/Mage.Sets/src/mage/cards/m/Meekstone.java +++ b/Mage.Sets/src/mage/cards/m/Meekstone.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -36,10 +36,11 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author Quercitron @@ -49,7 +50,7 @@ public class Meekstone extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 3 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public Meekstone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MentalMisstep.java b/Mage.Sets/src/mage/cards/m/MentalMisstep.java index ef520c581d1..be19f82de49 100644 --- a/Mage.Sets/src/mage/cards/m/MentalMisstep.java +++ b/Mage.Sets/src/mage/cards/m/MentalMisstep.java @@ -27,16 +27,17 @@ */ package mage.cards.m; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author Loki @@ -46,7 +47,7 @@ public class MentalMisstep extends CardImpl { private static final FilterSpell FILTER = new FilterSpell("spell with converted mana cost 1"); static { - FILTER.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, 1)); + FILTER.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 1)); } public MentalMisstep(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java b/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java index af6541f3a10..e5695ff9abc 100644 --- a/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java @@ -27,9 +27,9 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; @@ -39,12 +39,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.AnotherPredicate; +import java.util.UUID; + /** * @author Loki */ @@ -54,7 +55,7 @@ public class MentorOfTheMeek extends CardImpl { static { filter.add(new AnotherPredicate()); - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public MentorOfTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MerchantShip.java b/Mage.Sets/src/mage/cards/m/MerchantShip.java index 7bfb88bc07f..9f883be7db7 100644 --- a/Mage.Sets/src/mage/cards/m/MerchantShip.java +++ b/Mage.Sets/src/mage/cards/m/MerchantShip.java @@ -27,8 +27,8 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.AttacksAndIsNotBlockedTriggeredAbility; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; @@ -39,9 +39,10 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; +import java.util.UUID; + /** * * @author LoneFox @@ -60,7 +61,7 @@ public class MerchantShip extends CardImpl { this.addAbility(new AttacksAndIsNotBlockedTriggeredAbility(new GainLifeEffect(2))); // When you control no Islands, sacrifice Merchant Ship. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/m/MidnightScavengers.java b/Mage.Sets/src/mage/cards/m/MidnightScavengers.java index 6d015586de9..913565afb67 100644 --- a/Mage.Sets/src/mage/cards/m/MidnightScavengers.java +++ b/Mage.Sets/src/mage/cards/m/MidnightScavengers.java @@ -27,9 +27,9 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.InfoEffect; @@ -38,12 +38,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.Target; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +54,7 @@ public class MidnightScavengers extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public MidnightScavengers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MightOfTheWild.java b/Mage.Sets/src/mage/cards/m/MightOfTheWild.java index 28cd975da64..bd59ae941d5 100644 --- a/Mage.Sets/src/mage/cards/m/MightOfTheWild.java +++ b/Mage.Sets/src/mage/cards/m/MightOfTheWild.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.combat.CantBlockAllEffect; @@ -37,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; @@ -46,6 +45,8 @@ import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author Styxo @@ -56,7 +57,7 @@ public class MightOfTheWild extends CardImpl { private static final FilterPermanent filterMode2 = new FilterPermanent("artifact or enchantment"); static { - filterMode1.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filterMode1.add(new PowerPredicate(CountType.FEWER_THAN, 4)); filterMode2.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); } diff --git a/Mage.Sets/src/mage/cards/m/MightyEmergence.java b/Mage.Sets/src/mage/cards/m/MightyEmergence.java index 118ac072064..e4924b16db3 100644 --- a/Mage.Sets/src/mage/cards/m/MightyEmergence.java +++ b/Mage.Sets/src/mage/cards/m/MightyEmergence.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.counter.AddCountersTargetEffect; @@ -37,10 +37,11 @@ import mage.constants.CardType; import mage.constants.SetTargetPointer; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author Plopman @@ -50,7 +51,7 @@ public class MightyEmergence extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a creature with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public MightyEmergence(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MinamoSightbender.java b/Mage.Sets/src/mage/cards/m/MinamoSightbender.java index 251f6bfccc6..56e2dc4b87e 100644 --- a/Mage.Sets/src/mage/cards/m/MinamoSightbender.java +++ b/Mage.Sets/src/mage/cards/m/MinamoSightbender.java @@ -27,9 +27,9 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -39,13 +39,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.target.Target; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -81,7 +82,7 @@ public class MinamoSightbender extends CardImpl { int manaX = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent newFilter = new FilterCreaturePermanent(new StringBuilder("creature with power ").append(manaX).append(" or less").toString()); - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, manaX + 1)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, manaX + 1)); Target target = new TargetCreaturePermanent(newFilter); ability.addTarget(target); break; diff --git a/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java b/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java index d04e728f9c9..a87cbc4f13c 100644 --- a/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java +++ b/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java @@ -27,17 +27,18 @@ */ package mage.cards.m; -import java.util.UUID; -import mage.constants.CardType; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.keyword.LifelinkAbility; import mage.abilities.keyword.ProtectionAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; +import java.util.UUID; + /** * * @author North @@ -47,7 +48,7 @@ public class MistmeadowSkulk extends CardImpl { private static final FilterCard filter = new FilterCard("converted mana cost 3 or greater"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.GreaterThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 2)); } public MistmeadowSkulk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MobRule.java b/Mage.Sets/src/mage/cards/m/MobRule.java index e3262fe1b4e..4bc8fbbf07d 100644 --- a/Mage.Sets/src/mage/cards/m/MobRule.java +++ b/Mage.Sets/src/mage/cards/m/MobRule.java @@ -27,9 +27,8 @@ */ package mage.cards.m; -import java.util.List; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.ContinuousEffectImpl; @@ -38,18 +37,16 @@ import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.keyword.HasteAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Layer; -import mage.constants.Outcome; -import mage.constants.SubLayer; -import mage.filter.Filter.ComparisonType; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.targetpointer.FixedTarget; +import java.util.List; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -61,11 +58,11 @@ public class MobRule extends CardImpl { // Choose one // Gain control of all creatures with power 4 or greater until end of turn. Untap those creatures. They gain haste until end of turn. - this.getSpellAbility().addEffect(new MobRuleEffect(ComparisonType.GreaterThan, 3)); + this.getSpellAbility().addEffect(new MobRuleEffect(CountType.MORE_THAN, 3)); // Gain control of all creatures with power 3 or less until end of turn. Untap those creatures. They gain haste until end of turn. Mode mode = new Mode(); - mode.getEffects().add(new MobRuleEffect(ComparisonType.LessThan, 4)); + mode.getEffects().add(new MobRuleEffect(CountType.FEWER_THAN, 4)); this.getSpellAbility().addMode(mode); } @@ -81,14 +78,14 @@ public class MobRule extends CardImpl { class MobRuleEffect extends OneShotEffect { - ComparisonType type = null; + CountType type = null; int power = 0; - public MobRuleEffect(ComparisonType type, int power) { + public MobRuleEffect(CountType type, int power) { super(Outcome.GainControl); this.type = type; this.power = power; - if (type == ComparisonType.GreaterThan) { + if (type == CountType.MORE_THAN) { this.staticText = "Gain control of all creatures with power 4 or greater until end of turn. Untap those creatures. They gain haste until end of turn"; } else { this.staticText = "Gain control of all creatures with power 3 or less until end of turn. Untap those creatures. They gain haste until end of turn"; diff --git a/Mage.Sets/src/mage/cards/m/MoggJailer.java b/Mage.Sets/src/mage/cards/m/MoggJailer.java index f55481cb4a1..a22eb6f3392 100644 --- a/Mage.Sets/src/mage/cards/m/MoggJailer.java +++ b/Mage.Sets/src/mage/cards/m/MoggJailer.java @@ -27,8 +27,8 @@ */ package mage.cards.m; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantAttackIfDefenderControlsPermanent; @@ -36,27 +36,26 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.TappedPredicate; -/** - * - * @author BursegSardaukar +import java.util.UUID; +/** + * @author BursegSardaukar */ public class MoggJailer extends CardImpl { static final private FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature with power 2 or less"); static { - filter.add(Predicates.and(new PowerPredicate(Filter.ComparisonType.LessThan, 2), Predicates.not(new TappedPredicate()))); + filter.add(Predicates.and(new PowerPredicate(CountType.FEWER_THAN, 2), Predicates.not(new TappedPredicate()))); } - + public MoggJailer(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{R}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}"); this.subtype.add("Goblin"); this.power = new MageInt(2); this.toughness = new MageInt(2); diff --git a/Mage.Sets/src/mage/cards/m/Molder.java b/Mage.Sets/src/mage/cards/m/Molder.java index 4e69726b45a..bf64ef75fe0 100644 --- a/Mage.Sets/src/mage/cards/m/Molder.java +++ b/Mage.Sets/src/mage/cards/m/Molder.java @@ -27,8 +27,8 @@ */ package mage.cards.m; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.dynamicvalue.common.ManacostVariableValue; import mage.abilities.effects.common.DestroyTargetEffect; @@ -36,12 +36,13 @@ import mage.abilities.effects.common.GainLifeEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactOrEnchantmentPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author LoneFox @@ -63,7 +64,7 @@ public class Molder extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterArtifactOrEnchantmentPermanent filter = new FilterArtifactOrEnchantmentPermanent("artifact or enchantment with converted mana cost X"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); ability.addTarget(new TargetPermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/m/Mosstodon.java b/Mage.Sets/src/mage/cards/m/Mosstodon.java index 4cb76b90ecf..2124aa54b07 100644 --- a/Mage.Sets/src/mage/cards/m/Mosstodon.java +++ b/Mage.Sets/src/mage/cards/m/Mosstodon.java @@ -27,22 +27,23 @@ */ package mage.cards.m; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Zone; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.keyword.TrampleAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -52,7 +53,7 @@ public class Mosstodon extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public Mosstodon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MouthFeed.java b/Mage.Sets/src/mage/cards/m/MouthFeed.java index 0e491bed9d3..544f3f4f05d 100644 --- a/Mage.Sets/src/mage/cards/m/MouthFeed.java +++ b/Mage.Sets/src/mage/cards/m/MouthFeed.java @@ -1,5 +1,6 @@ package mage.cards.m; +import mage.abilities.CountType; import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CreateTokenEffect; @@ -9,7 +10,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.cards.SplitCard; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.permanent.token.HippoToken2; @@ -23,7 +23,7 @@ public class MouthFeed extends SplitCard { private static final FilterControlledCreaturePermanent filterCreaturesYouControlPower3orGreater = new FilterControlledCreaturePermanent("creature you control with power 3 or greater."); static { - filterCreaturesYouControlPower3orGreater.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filterCreaturesYouControlPower3orGreater.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public MouthFeed(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/NaturalState.java b/Mage.Sets/src/mage/cards/n/NaturalState.java index c4090f39747..c0dc08bcbd6 100644 --- a/Mage.Sets/src/mage/cards/n/NaturalState.java +++ b/Mage.Sets/src/mage/cards/n/NaturalState.java @@ -27,16 +27,17 @@ */ package mage.cards.n; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactOrEnchantmentPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -46,7 +47,7 @@ public class NaturalState extends CardImpl { private static final FilterArtifactOrEnchantmentPermanent filter = new FilterArtifactOrEnchantmentPermanent("artifact or enchantment with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public NaturalState(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/Necroplasm.java b/Mage.Sets/src/mage/cards/n/Necroplasm.java index 9ecbdf7c728..2a3f3db2caf 100644 --- a/Mage.Sets/src/mage/cards/n/Necroplasm.java +++ b/Mage.Sets/src/mage/cards/n/Necroplasm.java @@ -27,9 +27,9 @@ */ package mage.cards.n; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -41,13 +41,14 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.counters.CounterType; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.UUID; + /** * * @author emerald000 @@ -104,7 +105,7 @@ class NecroplasmEffect extends OneShotEffect { if (player != null && sourcePermanent != null) { int numCounters = sourcePermanent.getCounters(game).getCount(CounterType.P1P1); FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new ConvertedManaCostPredicate(ComparisonType.Equal, numCounters)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, numCounters)); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/n/NightDealings.java b/Mage.Sets/src/mage/cards/n/NightDealings.java index 41dcfba7e6c..7d3f88bdcfa 100644 --- a/Mage.Sets/src/mage/cards/n/NightDealings.java +++ b/Mage.Sets/src/mage/cards/n/NightDealings.java @@ -28,6 +28,7 @@ package mage.cards.n; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.Cost; @@ -39,7 +40,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -52,13 +52,12 @@ import java.util.Objects; import java.util.UUID; /** - * * @author Loki */ public class NightDealings extends CardImpl { public NightDealings(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{B}{B}"); + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}{B}"); // Whenever a source you control deals damage to another player, put that many theft counters on Night Dealings. this.addAbility((new NightDealingsTriggeredAbility())); @@ -180,7 +179,7 @@ public class NightDealings extends CardImpl { } FilterNonlandCard filter = new FilterNonlandCard("nonland card with converted mana cost X = " + cmc); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, cmc)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (player.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/n/NoContest.java b/Mage.Sets/src/mage/cards/n/NoContest.java index 1c6ce88e9c9..cdc53c9c2c8 100644 --- a/Mage.Sets/src/mage/cards/n/NoContest.java +++ b/Mage.Sets/src/mage/cards/n/NoContest.java @@ -27,15 +27,13 @@ */ package mage.cards.n; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.common.FightTargetsEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -44,14 +42,16 @@ import mage.game.stack.Spell; import mage.target.TargetPermanent; import mage.target.common.TargetControlledCreaturePermanent; +import java.util.Set; +import java.util.UUID; + /** - * * @author Styxo */ public class NoContest extends CardImpl { public NoContest(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{G}"); + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{G}"); // Target creature you control fights target creature with power less than its power. this.getSpellAbility().addEffect(new FightTargetsEffect()); @@ -91,7 +91,7 @@ class TargetCreatureWithLessPowerPermanent extends TargetPermanent { } // now check, if another creature has less power and can be targeted FilterCreaturePermanent checkFilter = new FilterCreaturePermanent(); - checkFilter.add(new PowerPredicate(Filter.ComparisonType.LessThan, maxPower)); + checkFilter.add(new PowerPredicate(CountType.FEWER_THAN, maxPower)); for (Permanent permanent : game.getBattlefield().getActivePermanents(checkFilter, sourceControllerId, sourceId, game)) { if (permanent.canBeTargetedBy(sourceCard, sourceControllerId, game)) { return true; @@ -109,7 +109,7 @@ class TargetCreatureWithLessPowerPermanent extends TargetPermanent { int power = firstTarget.getPower().getValue(); // overwrite the filter with the power predicate filter = new FilterCreaturePermanent("creature with power less than " + power); - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, power)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, power)); } } return super.possibleTargets(sourceId, sourceControllerId, game); diff --git a/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java b/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java index 69d7fe6d386..dd1fd5d64fd 100644 --- a/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java +++ b/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java @@ -27,10 +27,8 @@ */ package mage.cards.n; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.effects.common.CounterTargetEffect; @@ -53,14 +51,17 @@ import mage.target.Target; import mage.target.TargetObject; import mage.target.Targets; +import java.util.HashSet; +import java.util.Set; +import java.util.UUID; + /** - * * @author Rafbill */ public class NotOfThisWorld extends CardImpl { public NotOfThisWorld(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.TRIBAL,CardType.INSTANT},"{7}"); + super(ownerId, setInfo, new CardType[]{CardType.TRIBAL, CardType.INSTANT}, "{7}"); this.subtype.add("Eldrazi"); // Counter target spell or ability that targets a permanent you control. @@ -132,7 +133,7 @@ class TargetStackObjectTargetingControlledPermanent extends TargetObject { @Override public Set possibleTargets(UUID sourceId, UUID sourceControllerId, - Game game) { + Game game) { return possibleTargets(sourceControllerId, game); } @@ -169,7 +170,7 @@ class NotOfThisWorldCondition implements Condition { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature you control with power 7 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 6)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 6)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/n/NoxiousDragon.java b/Mage.Sets/src/mage/cards/n/NoxiousDragon.java index 288739b6d20..5ffc1a9ba71 100644 --- a/Mage.Sets/src/mage/cards/n/NoxiousDragon.java +++ b/Mage.Sets/src/mage/cards/n/NoxiousDragon.java @@ -27,20 +27,21 @@ */ package mage.cards.n; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -50,7 +51,7 @@ public class NoxiousDragon extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public NoxiousDragon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/ONaginata.java b/Mage.Sets/src/mage/cards/o/ONaginata.java index 34c592ac63f..ce1b6d6af1d 100644 --- a/Mage.Sets/src/mage/cards/o/ONaginata.java +++ b/Mage.Sets/src/mage/cards/o/ONaginata.java @@ -27,8 +27,8 @@ */ package mage.cards.o; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.AttachableToRestrictedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -43,12 +43,13 @@ import mage.constants.AttachmentType; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.Target; import mage.target.common.TargetControlledCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -58,7 +59,7 @@ public class ONaginata extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature with 3 or more power"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public ONaginata(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OjutaisCommand.java b/Mage.Sets/src/mage/cards/o/OjutaisCommand.java index 18edb0a4843..5617ffe783b 100644 --- a/Mage.Sets/src/mage/cards/o/OjutaisCommand.java +++ b/Mage.Sets/src/mage/cards/o/OjutaisCommand.java @@ -27,7 +27,7 @@ */ package mage.cards.o; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.CounterTargetEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -36,7 +36,6 @@ import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffec import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.FilterSpell; import mage.filter.common.FilterCreatureCard; @@ -45,6 +44,8 @@ import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +54,7 @@ public class OjutaisCommand extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } private static final FilterSpell filter2 = new FilterSpell("creature spell"); diff --git a/Mage.Sets/src/mage/cards/o/OrcishVeteran.java b/Mage.Sets/src/mage/cards/o/OrcishVeteran.java index 14284300191..b6e5fa271c2 100644 --- a/Mage.Sets/src/mage/cards/o/OrcishVeteran.java +++ b/Mage.Sets/src/mage/cards/o/OrcishVeteran.java @@ -27,9 +27,9 @@ */ package mage.cards.o; -import java.util.UUID; import mage.MageInt; import mage.ObjectColor; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -41,11 +41,12 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -56,7 +57,7 @@ public class OrcishVeteran extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public OrcishVeteran(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java b/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java index 68a43e95dc8..e4fef8656e5 100644 --- a/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java +++ b/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java @@ -27,9 +27,9 @@ */ package mage.cards.o; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.UntapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -38,12 +38,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.Target; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -54,7 +55,7 @@ public class OrderOfWhiteclay extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public OrderOfWhiteclay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Orgg.java b/Mage.Sets/src/mage/cards/o/Orgg.java index 5d71578a368..abcded634f4 100644 --- a/Mage.Sets/src/mage/cards/o/Orgg.java +++ b/Mage.Sets/src/mage/cards/o/Orgg.java @@ -27,8 +27,8 @@ */ package mage.cards.o; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantAttackIfDefenderControlsPermanent; @@ -38,12 +38,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.TappedPredicate; +import java.util.UUID; + /** * * @author MarcoMarin @@ -54,8 +55,8 @@ public class Orgg extends CardImpl { static final private FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(Predicates.and(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2), Predicates.not(new TappedPredicate()))); - filter2.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(Predicates.and(new PowerPredicate(CountType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); + filter2.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public Orgg(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{R}{R}"); diff --git a/Mage.Sets/src/mage/cards/o/OrzhovCharm.java b/Mage.Sets/src/mage/cards/o/OrzhovCharm.java index 3892699c5bd..17c200d1e42 100644 --- a/Mage.Sets/src/mage/cards/o/OrzhovCharm.java +++ b/Mage.Sets/src/mage/cards/o/OrzhovCharm.java @@ -27,18 +27,16 @@ */ package mage.cards.o; -import java.util.LinkedList; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.Zone; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.Zone; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -49,6 +47,9 @@ import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetControlledCreaturePermanent; import mage.target.common.TargetCreaturePermanent; +import java.util.LinkedList; +import java.util.UUID; + /** * * @author LevelX2 @@ -57,7 +58,7 @@ public class OrzhovCharm extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 1 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public OrzhovCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OutlandBoar.java b/Mage.Sets/src/mage/cards/o/OutlandBoar.java index 18b42c630a4..0519963e8f5 100644 --- a/Mage.Sets/src/mage/cards/o/OutlandBoar.java +++ b/Mage.Sets/src/mage/cards/o/OutlandBoar.java @@ -27,18 +27,19 @@ */ package mage.cards.o; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -48,7 +49,7 @@ public class OutlandBoar extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public OutlandBoar(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Overload.java b/Mage.Sets/src/mage/cards/o/Overload.java index d7e90d3957f..decac7c5407 100644 --- a/Mage.Sets/src/mage/cards/o/Overload.java +++ b/Mage.Sets/src/mage/cards/o/Overload.java @@ -27,8 +27,8 @@ */ package mage.cards.o; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.condition.common.KickedCondition; import mage.abilities.effects.common.DestroyTargetEffect; @@ -36,12 +36,13 @@ import mage.abilities.keyword.KickerAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.common.TargetArtifactPermanent; +import java.util.UUID; + /** * * @author LoneFox @@ -52,8 +53,8 @@ public class Overload extends CardImpl { private static final FilterArtifactPermanent filter5 = new FilterArtifactPermanent("artifact if its converted mana cost is 5 or less"); static { - filter2.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); - filter5.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter2.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter5.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public Overload(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Paleoloth.java b/Mage.Sets/src/mage/cards/p/Paleoloth.java index 4d0793f4f38..eced58d7bf8 100644 --- a/Mage.Sets/src/mage/cards/p/Paleoloth.java +++ b/Mage.Sets/src/mage/cards/p/Paleoloth.java @@ -27,22 +27,23 @@ */ package mage.cards.p; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -52,7 +53,7 @@ public class Paleoloth extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("another creature with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); filter.add(new AnotherPredicate()); } diff --git a/Mage.Sets/src/mage/cards/p/PanopticMirror.java b/Mage.Sets/src/mage/cards/p/PanopticMirror.java index 9b200b3410c..b0dd19533f0 100644 --- a/Mage.Sets/src/mage/cards/p/PanopticMirror.java +++ b/Mage.Sets/src/mage/cards/p/PanopticMirror.java @@ -27,23 +27,18 @@ */ package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.VariableManaCost; import mage.abilities.effects.OneShotEffect; -import mage.cards.Card; -import mage.cards.CardImpl; -import mage.cards.CardsImpl; -import mage.cards.CardSetInfo; -import mage.cards.SplitCard; +import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterInstantOrSorceryCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -54,6 +49,8 @@ import mage.target.TargetCard; import mage.target.common.TargetCardInHand; import mage.util.CardUtil; +import java.util.UUID; + /** * * @author Plopman @@ -103,7 +100,7 @@ class PanopticMirrorExileEffect extends OneShotEffect { int count = source.getManaCostsToPay().getX(); FilterInstantOrSorceryCard filter = new FilterInstantOrSorceryCard("instant or sorcery card with converted mana cost equal to " + count); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, count)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, count)); String choiceText = "Exile a " + filter.getMessage() + " from your hand?"; Player player = game.getPlayer(source.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/p/Pendelhaven.java b/Mage.Sets/src/mage/cards/p/Pendelhaven.java index b93be6d2224..24ec78df3b5 100644 --- a/Mage.Sets/src/mage/cards/p/Pendelhaven.java +++ b/Mage.Sets/src/mage/cards/p/Pendelhaven.java @@ -28,6 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -38,7 +39,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.mageobject.ToughnessPredicate; @@ -47,19 +47,18 @@ import mage.target.common.TargetCreaturePermanent; import java.util.UUID; /** - * * @author Loki */ public class Pendelhaven extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("1/1 creature"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, 1)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.Equal, 1)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); } public Pendelhaven(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.LAND},null); + super(ownerId, setInfo, new CardType[]{CardType.LAND}, null); addSuperType(SuperType.LEGENDARY); // {tap}: Add {G} to your mana pool. diff --git a/Mage.Sets/src/mage/cards/p/PendelhavenElder.java b/Mage.Sets/src/mage/cards/p/PendelhavenElder.java index db5594ab104..1094e600463 100644 --- a/Mage.Sets/src/mage/cards/p/PendelhavenElder.java +++ b/Mage.Sets/src/mage/cards/p/PendelhavenElder.java @@ -27,8 +27,8 @@ */ package mage.cards.p; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.continuous.BoostAllEffect; @@ -36,13 +36,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; +import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.ControllerPredicate; -import mage.constants.TargetController; + +import java.util.UUID; /** * @@ -52,8 +53,8 @@ public class PendelhavenElder extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("each 1/1 creature you control"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, 1)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.Equal, 1)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/p/PerniciousDeed.java b/Mage.Sets/src/mage/cards/p/PerniciousDeed.java index b7c8b60085e..bbe3417a589 100644 --- a/Mage.Sets/src/mage/cards/p/PerniciousDeed.java +++ b/Mage.Sets/src/mage/cards/p/PerniciousDeed.java @@ -27,19 +27,17 @@ */ package mage.cards.p; -import java.util.UUID; - -import mage.constants.CardType; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.mana.VariableManaCost; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -47,16 +45,16 @@ import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.game.permanent.Permanent; +import java.util.UUID; + /** - * * @author Plopman */ public class PerniciousDeed extends CardImpl { - - + public PerniciousDeed(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{B}{G}"); + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{B}{G}"); // {X}, Sacrifice Pernicious Deed: Destroy each artifact, creature, and enchantment with converted mana cost X or less. @@ -96,18 +94,18 @@ class PerniciousDeedEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { - - + + FilterPermanent filter = new FilterPermanent("artifacts, creatures, and enchantments"); - - + + filter.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + - for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/p/PillarOfLight.java b/Mage.Sets/src/mage/cards/p/PillarOfLight.java index e63b644fc3c..9699c56e3b2 100644 --- a/Mage.Sets/src/mage/cards/p/PillarOfLight.java +++ b/Mage.Sets/src/mage/cards/p/PillarOfLight.java @@ -27,16 +27,17 @@ */ package mage.cards.p; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.ExileTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -46,7 +47,7 @@ public class PillarOfLight extends CardImpl { static private final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); } public PillarOfLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PirateShip.java b/Mage.Sets/src/mage/cards/p/PirateShip.java index 9e6bdcef427..2907d211569 100644 --- a/Mage.Sets/src/mage/cards/p/PirateShip.java +++ b/Mage.Sets/src/mage/cards/p/PirateShip.java @@ -27,9 +27,9 @@ */ package mage.cards.p; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -41,19 +41,18 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; import mage.target.common.TargetCreatureOrPlayer; +import java.util.UUID; + /** - * * @author KholdFuzion - * */ public class PirateShip extends CardImpl { public PirateShip(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{U}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}"); this.subtype.add("Human"); this.subtype.add("Pirate"); @@ -68,7 +67,7 @@ public class PirateShip extends CardImpl { this.addAbility(ability); // When you control no Islands, sacrifice Pirate Ship. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/p/Plaguebearer.java b/Mage.Sets/src/mage/cards/p/Plaguebearer.java index 0394a64ad20..aed808942d3 100644 --- a/Mage.Sets/src/mage/cards/p/Plaguebearer.java +++ b/Mage.Sets/src/mage/cards/p/Plaguebearer.java @@ -27,10 +27,10 @@ */ package mage.cards.p; -import java.util.UUID; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -38,7 +38,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ColorPredicate; @@ -47,6 +46,8 @@ import mage.game.Game; import mage.target.Target; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author spjspj @@ -79,7 +80,7 @@ public class Plaguebearer extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent filter = new FilterCreaturePermanent(new StringBuilder("nonblack creature with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); Target target = new TargetPermanent(filter); ability.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/p/PorphyryNodes.java b/Mage.Sets/src/mage/cards/p/PorphyryNodes.java index 812c51c4590..11ed59078d9 100644 --- a/Mage.Sets/src/mage/cards/p/PorphyryNodes.java +++ b/Mage.Sets/src/mage/cards/p/PorphyryNodes.java @@ -27,8 +27,8 @@ */ package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.StateTriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -39,7 +39,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -49,6 +48,8 @@ import mage.players.Player; import mage.target.Target; import mage.target.TargetPermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -116,7 +117,7 @@ class PorphyryNodesEffect extends OneShotEffect { } if (multipleExist) { FilterCreaturePermanent filter = new FilterCreaturePermanent("one of the creatures with the least power"); - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, leastPower)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, leastPower)); Target target = new TargetPermanent(filter); target.setNotTarget(true); if (target.canChoose(source.getSourceId(), source.getControllerId(), game)) { diff --git a/Mage.Sets/src/mage/cards/p/PostmortemLunge.java b/Mage.Sets/src/mage/cards/p/PostmortemLunge.java index e45c17e5787..778637feef9 100644 --- a/Mage.Sets/src/mage/cards/p/PostmortemLunge.java +++ b/Mage.Sets/src/mage/cards/p/PostmortemLunge.java @@ -27,8 +27,8 @@ */ package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -38,12 +38,7 @@ import mage.abilities.keyword.HasteAbility; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.AbilityType; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Outcome; -import mage.constants.Zone; -import mage.filter.Filter; +import mage.constants.*; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -53,14 +48,15 @@ import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; import mage.target.targetpointer.FixedTarget; +import java.util.UUID; + /** - * * @author North */ public class PostmortemLunge extends CardImpl { public PostmortemLunge(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{X}{B/P}"); + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{X}{B/P}"); // Return target creature card with converted mana cost X from your graveyard to the battlefield. It gains haste. Exile it at the beginning of the next end step. this.getSpellAbility().addEffect(new PostmortemLungeEffect()); @@ -82,7 +78,7 @@ public class PostmortemLunge extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); ability.getTargets().add(new TargetCardInYourGraveyard(filter)); } } diff --git a/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java b/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java index 06c1fbefc03..cb7d5246d5b 100644 --- a/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java +++ b/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java @@ -27,18 +27,19 @@ */ package mage.cards.p; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.ForecastAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author Plopman @@ -48,8 +49,8 @@ public class ProclamationOfRebirth extends CardImpl { private static final FilterCreatureCard filter1 = new FilterCreatureCard("creature card with converted mana cost {1} or less from your graveyard"); private static final FilterCreatureCard filter3 = new FilterCreatureCard("creature cards with converted mana cost {1} or less from your graveyard"); static { - filter1.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); - filter3.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter1.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter3.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public ProclamationOfRebirth(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{W}"); diff --git a/Mage.Sets/src/mage/cards/p/ProfaneCommand.java b/Mage.Sets/src/mage/cards/p/ProfaneCommand.java index b8a9a237cea..a0ddf7c210c 100644 --- a/Mage.Sets/src/mage/cards/p/ProfaneCommand.java +++ b/Mage.Sets/src/mage/cards/p/ProfaneCommand.java @@ -27,8 +27,8 @@ */ package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.ManacostVariableValue; @@ -43,7 +43,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreaturePermanent; @@ -53,14 +52,15 @@ import mage.target.TargetPlayer; import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public class ProfaneCommand extends CardImpl { public ProfaneCommand(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{X}{B}{B}"); + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{X}{B}{B}"); DynamicValue xValue = new ManacostVariableValue(); @@ -89,20 +89,20 @@ public class ProfaneCommand extends CardImpl { Effect effect = new GainAbilityTargetEffect(FearAbility.getInstance(), Duration.EndOfTurn); effect.setText("Up to X target creatures gain fear until end of turn"); mode.getEffects().add(effect); - mode.getTargets().add(new TargetCreaturePermanent(0,1)); - this.getSpellAbility().addMode(mode); + mode.getTargets().add(new TargetCreaturePermanent(0, 1)); + this.getSpellAbility().addMode(mode); } @Override public void adjustTargets(Ability ability, Game game) { // adjust targets is called for every selected mode Mode mode = ability.getModes().getMode(); - for (Effect effect :mode.getEffects()) { + for (Effect effect : mode.getEffects()) { if (effect instanceof ReturnFromGraveyardToBattlefieldTargetEffect) { mode.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); - FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, xValue + 1)); + FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); mode.getTargets().add(new TargetCardInYourGraveyard(filter)); } if (effect instanceof GainAbilityTargetEffect) { diff --git a/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java b/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java index da22140183a..8596fda80dd 100644 --- a/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java +++ b/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java @@ -27,9 +27,9 @@ */ package mage.cards.p; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ExploitCreatureTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.abilities.keyword.ExploitAbility; @@ -37,12 +37,7 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.cards.Cards; import mage.cards.CardsImpl; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.SetTargetPointer; -import mage.constants.TargetController; -import mage.constants.Zone; -import mage.filter.Filter; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -50,14 +45,15 @@ import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.UUID; + /** - * * @author LevelX2 */ public class ProfanerOfTheDead extends CardImpl { public ProfanerOfTheDead(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{U}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{U}"); this.subtype.add("Naga"); this.subtype.add("Wizard"); this.power = new MageInt(3); @@ -99,7 +95,7 @@ class ProfanerOfTheDeadReturnEffect extends OneShotEffect { if (controller != null && exploitedCreature != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent(); filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, exploitedCreature.getToughness().getValue())); + filter.add(new ToughnessPredicate(CountType.FEWER_THAN, exploitedCreature.getToughness().getValue())); Cards cardsToHand = new CardsImpl(); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { cardsToHand.add(permanent); diff --git a/Mage.Sets/src/mage/cards/p/Prohibit.java b/Mage.Sets/src/mage/cards/p/Prohibit.java index 7e53ef24251..55c3d9ab482 100644 --- a/Mage.Sets/src/mage/cards/p/Prohibit.java +++ b/Mage.Sets/src/mage/cards/p/Prohibit.java @@ -27,8 +27,8 @@ */ package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.condition.common.KickedCondition; import mage.abilities.effects.common.CounterTargetEffect; @@ -36,12 +36,13 @@ import mage.abilities.keyword.KickerAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author LevelX2 @@ -52,8 +53,8 @@ public class Prohibit extends CardImpl { private static final FilterSpell filter4 = new FilterSpell("spell if its converted mana cost is 4 or less"); static { - filter2.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); - filter4.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter2.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter4.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public Prohibit(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ProteanHulk.java b/Mage.Sets/src/mage/cards/p/ProteanHulk.java index 7390eb0473b..1b0fc98a550 100644 --- a/Mage.Sets/src/mage/cards/p/ProteanHulk.java +++ b/Mage.Sets/src/mage/cards/p/ProteanHulk.java @@ -27,20 +27,15 @@ */ package mage.cards.p; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.effects.OneShotEffect; -import mage.cards.Card; -import mage.cards.CardImpl; -import mage.cards.CardSetInfo; -import mage.cards.Cards; -import mage.cards.CardsImpl; +import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -49,6 +44,8 @@ import mage.game.events.GameEvent; import mage.players.Player; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author emerald000 @@ -114,7 +111,7 @@ class ProteanHulkEffect extends OneShotEffect { int librarySearchLimit = event.getAmount(); FilterCard filter = new FilterCreatureCard("number of creature cards with total converted mana cost 6 or less (6 CMC left)"); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, manaCostLeftToFetch + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, manaCostLeftToFetch + 1)); TargetCardInLibrary target = new TargetCardInLibrary(0, 1, filter); target.setCardLimit(librarySearchLimit); @@ -133,7 +130,7 @@ class ProteanHulkEffect extends OneShotEffect { } manaCostLeftToFetch -= card.getConvertedManaCost(); filter = new FilterCreatureCard("number of creature cards with total converted mana cost 6 or less (" + manaCostLeftToFetch + " CMC left)"); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, manaCostLeftToFetch + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, manaCostLeftToFetch + 1)); target = new TargetCardInLibrary(0, 1, filter); target.setCardLimit(librarySearchLimit); } diff --git a/Mage.Sets/src/mage/cards/p/PuncturingLight.java b/Mage.Sets/src/mage/cards/p/PuncturingLight.java index 9e9a97cd4a2..5853e632a91 100644 --- a/Mage.Sets/src/mage/cards/p/PuncturingLight.java +++ b/Mage.Sets/src/mage/cards/p/PuncturingLight.java @@ -27,17 +27,18 @@ */ package mage.cards.p; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; import mage.filter.common.FilterAttackingOrBlockingCreature; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -47,7 +48,7 @@ public class PuncturingLight extends CardImpl { private static final FilterCreaturePermanent filter = new FilterAttackingOrBlockingCreature("attacking or blocking creature with power 3 or less"); static { - filter.add(new PowerPredicate(ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public PuncturingLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java b/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java index 39764dc2c56..a79427423ae 100644 --- a/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java +++ b/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java @@ -27,20 +27,21 @@ */ package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.UUID; + /** * * @author fireshoes @@ -83,14 +84,14 @@ class PuppetsVerdictEffect extends OneShotEffect { if (controller.flipCoin(game)) { FilterCreaturePermanent filterPower2OrLess = new FilterCreaturePermanent("all creatures power 2 or less"); - filterPower2OrLess.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filterPower2OrLess.add(new PowerPredicate(CountType.FEWER_THAN, 3)); for (Permanent permanent: game.getBattlefield().getAllActivePermanents(filterPower2OrLess, game)) { permanent.destroy(source.getSourceId(), game, false); } return true; } else { FilterCreaturePermanent filterPower3OrGreater = new FilterCreaturePermanent("all creatures power 3 or greater"); - filterPower3OrGreater.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filterPower3OrGreater.add(new PowerPredicate(CountType.MORE_THAN, 2)); for (Permanent permanent: game.getBattlefield().getAllActivePermanents(filterPower3OrGreater, game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java b/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java index 349fe60d53f..110dcd673a2 100644 --- a/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java +++ b/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java @@ -29,6 +29,7 @@ package mage.cards.q; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.costs.Cost; @@ -43,7 +44,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterSpiritOrArcaneCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -92,7 +92,7 @@ public class QuillmaneBaku extends CardImpl { } ability.getTargets().clear(); FilterCreaturePermanent newFilter = new FilterCreaturePermanent("creature with converted mana cost " + maxConvManaCost + " or less"); - newFilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, maxConvManaCost + 1)); + newFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, maxConvManaCost + 1)); TargetCreaturePermanent target = new TargetCreaturePermanent(newFilter); ability.getTargets().add(target); } diff --git a/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java b/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java index 0c2ba9bb837..f34aaea9a2d 100644 --- a/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java +++ b/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java @@ -27,18 +27,19 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.CyclingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author Plopman @@ -47,7 +48,7 @@ public class RadiantsJudgment extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public RadiantsJudgment(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{W}"); diff --git a/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java b/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java index 37a2b7a1cc5..2742bf195d3 100644 --- a/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java +++ b/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java @@ -27,22 +27,23 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Zone; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.keyword.FirstStrikeAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -52,7 +53,7 @@ public class RakeclawGargantuan extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public RakeclawGargantuan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java b/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java index ef4583608ac..b6eda0b1934 100644 --- a/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java +++ b/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java @@ -27,10 +27,8 @@ */ package mage.cards.r; -import java.util.ArrayList; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.DelayedTriggeredAbility; import mage.abilities.common.delayed.AtTheBeginOfYourNextUpkeepDelayedTriggeredAbility; import mage.abilities.effects.Effect; @@ -43,7 +41,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -51,6 +48,10 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.targetpointer.FixedTargets; +import java.util.ArrayList; +import java.util.Set; +import java.util.UUID; + /** * * @author emerald000 @@ -98,7 +99,7 @@ class RallyTheAncestorsEffect extends OneShotEffect { if (player != null) { int xValue = source.getManaCostsToPay().getX(); FilterCreatureCard filter = new FilterCreatureCard(); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); Set cards = player.getGraveyard().getCards(filter, game); player.moveCards(cards, Zone.BATTLEFIELD, source, game); ArrayList toExile = new ArrayList<>(cards.size()); diff --git a/Mage.Sets/src/mage/cards/r/RamosianCaptain.java b/Mage.Sets/src/mage/cards/r/RamosianCaptain.java index 9ded105a2f4..9d1228a2173 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianCaptain.java +++ b/Mage.Sets/src/mage/cards/r/RamosianCaptain.java @@ -28,11 +28,9 @@ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -40,12 +38,15 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.keyword.FirstStrikeAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -56,7 +57,7 @@ public class RamosianCaptain extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public RamosianCaptain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianCommander.java b/Mage.Sets/src/mage/cards/r/RamosianCommander.java index 44a5d2ce80b..3dbaaf540e2 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianCommander.java +++ b/Mage.Sets/src/mage/cards/r/RamosianCommander.java @@ -28,23 +28,24 @@ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -55,7 +56,7 @@ public class RamosianCommander extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 6)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 6)); } public RamosianCommander(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java b/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java index 41f90268265..5291d71e649 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java +++ b/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java @@ -28,23 +28,24 @@ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -55,7 +56,7 @@ public class RamosianLieutenant extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public RamosianLieutenant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java b/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java index 0ce02135da0..0e90889ca7e 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java +++ b/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java @@ -27,9 +27,9 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -38,12 +38,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author fireshoes @@ -54,7 +55,7 @@ public class RamosianRevivalist extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 6)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 6)); } public RamosianRevivalist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianSergeant.java b/Mage.Sets/src/mage/cards/r/RamosianSergeant.java index 0874b3c729d..22cf58eb70e 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianSergeant.java +++ b/Mage.Sets/src/mage/cards/r/RamosianSergeant.java @@ -28,23 +28,24 @@ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -55,7 +56,7 @@ public class RamosianSergeant extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public RamosianSergeant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java b/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java index 600aa5c90c1..edd94c0938e 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java +++ b/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java @@ -27,11 +27,9 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -39,12 +37,15 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -55,7 +56,7 @@ public class RamosianSkyMarshal extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 7)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 7)); } public RamosianSkyMarshal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RangerOfEos.java b/Mage.Sets/src/mage/cards/r/RangerOfEos.java index 8a601b226ed..0d1905a580c 100644 --- a/Mage.Sets/src/mage/cards/r/RangerOfEos.java +++ b/Mage.Sets/src/mage/cards/r/RangerOfEos.java @@ -28,19 +28,20 @@ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -51,7 +52,7 @@ public class RangerOfEos extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public RangerOfEos(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RathiAssassin.java b/Mage.Sets/src/mage/cards/r/RathiAssassin.java index c6808d6c1c5..167c4e19403 100644 --- a/Mage.Sets/src/mage/cards/r/RathiAssassin.java +++ b/Mage.Sets/src/mage/cards/r/RathiAssassin.java @@ -27,12 +27,10 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -41,7 +39,8 @@ import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; @@ -52,6 +51,8 @@ import mage.filter.predicate.permanent.TappedPredicate; import mage.target.common.TargetCardInLibrary; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author Backfir3 @@ -63,7 +64,7 @@ public class RathiAssassin extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); destroyFilter.add(new TappedPredicate()); destroyFilter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/r/RathiFiend.java b/Mage.Sets/src/mage/cards/r/RathiFiend.java index 5cb073041d6..497a2de2b82 100644 --- a/Mage.Sets/src/mage/cards/r/RathiFiend.java +++ b/Mage.Sets/src/mage/cards/r/RathiFiend.java @@ -27,11 +27,9 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -40,12 +38,15 @@ import mage.abilities.effects.common.LoseLifeAllPlayersEffect; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -56,7 +57,7 @@ public class RathiFiend extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public RathiFiend(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RathiIntimidator.java b/Mage.Sets/src/mage/cards/r/RathiIntimidator.java index 520b40a28f3..fdd4f806cec 100644 --- a/Mage.Sets/src/mage/cards/r/RathiIntimidator.java +++ b/Mage.Sets/src/mage/cards/r/RathiIntimidator.java @@ -27,11 +27,9 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -39,12 +37,15 @@ import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.keyword.FearAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Backfir3 @@ -55,7 +56,7 @@ public class RathiIntimidator extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public RathiIntimidator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReaveSoul.java b/Mage.Sets/src/mage/cards/r/ReaveSoul.java index bb8733cc8c9..7576ac724b6 100644 --- a/Mage.Sets/src/mage/cards/r/ReaveSoul.java +++ b/Mage.Sets/src/mage/cards/r/ReaveSoul.java @@ -27,16 +27,17 @@ */ package mage.cards.r; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -46,7 +47,7 @@ public class ReaveSoul extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public ReaveSoul(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java b/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java index 78f88f207da..a3334a9ed71 100644 --- a/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java +++ b/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java @@ -27,18 +27,19 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author escplan9 (Derek Monturo - dmontur1 at gmail dot com) @@ -47,7 +48,7 @@ public class RecruiterOfTheGuard extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with toughness 2 or less"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); } public RecruiterOfTheGuard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RelentlessDead.java b/Mage.Sets/src/mage/cards/r/RelentlessDead.java index c09b936c400..574d8e4ffd0 100644 --- a/Mage.Sets/src/mage/cards/r/RelentlessDead.java +++ b/Mage.Sets/src/mage/cards/r/RelentlessDead.java @@ -27,9 +27,9 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.mana.GenericManaCost; @@ -44,7 +44,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.AnotherCardPredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -53,6 +52,8 @@ import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -111,7 +112,7 @@ class RelentlessDeadEffect extends OneShotEffect { if (cost.pay(source, game, source.getSourceId(), source.getControllerId(), false, null)) { FilterCard filter = new FilterCard("Another target Zombie card with converted mana cost " + costX); filter.add(new SubtypePredicate("Zombie")); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, costX)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, costX)); filter.add(new AnotherCardPredicate()); TargetCardInYourGraveyard target = new TargetCardInYourGraveyard(filter); if (controller.chooseTarget(outcome, target, source, game)) { diff --git a/Mage.Sets/src/mage/cards/r/RenegadeRallier.java b/Mage.Sets/src/mage/cards/r/RenegadeRallier.java index 8ef49ab495e..7d3320e8601 100644 --- a/Mage.Sets/src/mage/cards/r/RenegadeRallier.java +++ b/Mage.Sets/src/mage/cards/r/RenegadeRallier.java @@ -27,9 +27,9 @@ */ package mage.cards.r; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.RevoltCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -38,12 +38,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.AbilityWord; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; import mage.watchers.common.RevoltWatcher; +import java.util.UUID; + /** * * @author fireshoes @@ -53,7 +54,7 @@ public class RenegadeRallier extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("permanent card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public RenegadeRallier(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Repeal.java b/Mage.Sets/src/mage/cards/r/Repeal.java index b005adf9c04..b96ce74eae3 100644 --- a/Mage.Sets/src/mage/cards/r/Repeal.java +++ b/Mage.Sets/src/mage/cards/r/Repeal.java @@ -27,21 +27,22 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.abilities.effects.common.ReturnToHandTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterNonlandPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.TargetPermanent; import mage.target.common.TargetNonlandPermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -67,7 +68,7 @@ public class Repeal extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterNonlandPermanent filter = new FilterNonlandPermanent(new StringBuilder("nonland permanent with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); ability.addTarget(new TargetNonlandPermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/r/Reprisal.java b/Mage.Sets/src/mage/cards/r/Reprisal.java index c6495648fb4..e19466163c7 100644 --- a/Mage.Sets/src/mage/cards/r/Reprisal.java +++ b/Mage.Sets/src/mage/cards/r/Reprisal.java @@ -27,16 +27,17 @@ */ package mage.cards.r; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author Quercitron @@ -46,7 +47,7 @@ public class Reprisal extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public Reprisal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java b/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java index d10fcb28b5e..53e925eb04b 100644 --- a/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java @@ -27,16 +27,17 @@ */ package mage.cards.r; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author Jesse Whyte @@ -46,7 +47,7 @@ public class RetributionOfTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public RetributionOfTheMeek (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java b/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java index cb4b194598b..26b0f9d46c5 100644 --- a/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java +++ b/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java @@ -27,20 +27,21 @@ */ package mage.cards.r; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.Effect; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.ConvokeAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -50,7 +51,7 @@ public class ReturnToTheRanks extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public ReturnToTheRanks(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Reveillark.java b/Mage.Sets/src/mage/cards/r/Reveillark.java index fa0271ca0a5..cda1b9d0d54 100644 --- a/Mage.Sets/src/mage/cards/r/Reveillark.java +++ b/Mage.Sets/src/mage/cards/r/Reveillark.java @@ -27,21 +27,22 @@ */ package mage.cards.r; -import java.util.UUID; -import mage.constants.CardType; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.LeavesBattlefieldTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; -import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.EvokeAbility; +import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -50,7 +51,7 @@ public class Reveillark extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with power 2 or less from your graveyard"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public Reveillark(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Reverence.java b/Mage.Sets/src/mage/cards/r/Reverence.java index 195db1251e2..d54263c2e4c 100644 --- a/Mage.Sets/src/mage/cards/r/Reverence.java +++ b/Mage.Sets/src/mage/cards/r/Reverence.java @@ -27,7 +27,7 @@ */ package mage.cards.r; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantAttackYouAllEffect; import mage.cards.CardImpl; @@ -35,10 +35,11 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -48,7 +49,7 @@ public class Reverence extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public Reverence(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RunnersBane.java b/Mage.Sets/src/mage/cards/r/RunnersBane.java index 12fea6114ea..e4081f4c61f 100644 --- a/Mage.Sets/src/mage/cards/r/RunnersBane.java +++ b/Mage.Sets/src/mage/cards/r/RunnersBane.java @@ -27,26 +27,26 @@ */ package mage.cards.r; -import java.util.UUID; - -import mage.abilities.effects.common.TapEnchantedEffect; -import mage.constants.CardType; -import mage.constants.Zone; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.AttachEffect; import mage.abilities.effects.common.DontUntapInControllersUntapStepEnchantedEffect; +import mage.abilities.effects.common.TapEnchantedEffect; import mage.abilities.keyword.EnchantAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -55,7 +55,7 @@ public class RunnersBane extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public RunnersBane(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}"); diff --git a/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java b/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java index f3aff320410..8abcf74005d 100644 --- a/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java +++ b/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java @@ -27,33 +27,32 @@ */ package mage.cards.s; -import java.util.UUID; - -import mage.constants.CardType; import mage.MageInt; import mage.Mana; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.ManaEffect; import mage.abilities.mana.SimpleManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.target.common.TargetCardInHand; +import java.util.UUID; + /** - * * @author Plopman */ public class SacellumGodspeaker extends CardImpl { - + public SacellumGodspeaker(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}"); this.subtype.add("Elf"); this.subtype.add("Druid"); @@ -77,12 +76,13 @@ public class SacellumGodspeaker extends CardImpl { class SacellumGodspeakerEffect extends ManaEffect { - + private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with power 5 or greater from your hand"); + static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } - + public SacellumGodspeakerEffect() { super(); staticText = "Reveal any number of creature cards with power 5 or greater from your hand. Add {G} to your mana pool for each card revealed this way"; @@ -99,7 +99,7 @@ class SacellumGodspeakerEffect extends ManaEffect { @Override public boolean apply(Game game, Ability source) { - TargetCardInHand target = new TargetCardInHand(0,Integer.MAX_VALUE, filter); + TargetCardInHand target = new TargetCardInHand(0, Integer.MAX_VALUE, filter); if (target.choose(Outcome.Benefit, source.getControllerId(), source.getSourceId(), game)) { Mana mana = Mana.GreenMana(target.getTargets().size()); checkToFirePossibleEvents(mana, game, source); diff --git a/Mage.Sets/src/mage/cards/s/SalvagingStation.java b/Mage.Sets/src/mage/cards/s/SalvagingStation.java index c6913edfdeb..45c80cd4afb 100644 --- a/Mage.Sets/src/mage/cards/s/SalvagingStation.java +++ b/Mage.Sets/src/mage/cards/s/SalvagingStation.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -38,13 +38,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -56,7 +57,7 @@ public class SalvagingStation extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public SalvagingStation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java b/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java index f7879f75058..9653372f8c4 100644 --- a/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java +++ b/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.effects.Effect; @@ -37,15 +37,15 @@ import mage.abilities.mana.ColorlessManaAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterSpell; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ColorlessPredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** - * * @author fireshoes */ public class SanctumOfUgin extends CardImpl { @@ -56,11 +56,11 @@ public class SanctumOfUgin extends CardImpl { static { filter.add(new ColorlessPredicate()); filterSpells.add(new ColorlessPredicate()); - filterSpells.add(new ConvertedManaCostPredicate(ComparisonType.GreaterThan, 6)); + filterSpells.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 6)); } public SanctumOfUgin(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.LAND},""); + super(ownerId, setInfo, new CardType[]{CardType.LAND}, ""); // {T}: Add {C} to your mana pool. this.addAbility(new ColorlessManaAbility()); diff --git a/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java b/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java index 61109365f49..690da0c428d 100644 --- a/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java +++ b/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -40,7 +40,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; @@ -51,6 +50,8 @@ import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.UUID; + /** * * @author LevelX2 @@ -107,7 +108,7 @@ class ScourgeOfFleetsEffect extends OneShotEffect { int islands = game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game); FilterPermanent creatureFilter = new FilterCreaturePermanent(); creatureFilter.add(new ControllerPredicate(TargetController.OPPONENT)); - creatureFilter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, islands + 1)); + creatureFilter.add(new ToughnessPredicate(CountType.FEWER_THAN, islands + 1)); Cards cardsToHand = new CardsImpl(); for (Permanent permanent : game.getBattlefield().getActivePermanents(creatureFilter, source.getControllerId(), source.getSourceId(), game)) { cardsToHand.add(permanent); diff --git a/Mage.Sets/src/mage/cards/s/ScrapTrawler.java b/Mage.Sets/src/mage/cards/s/ScrapTrawler.java index d00950e5fe9..1021c0cf904 100644 --- a/Mage.Sets/src/mage/cards/s/ScrapTrawler.java +++ b/Mage.Sets/src/mage/cards/s/ScrapTrawler.java @@ -27,16 +27,15 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.ReturnToHandTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterArtifactCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -47,6 +46,8 @@ import mage.game.events.ZoneChangeEvent; import mage.game.permanent.Permanent; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -105,7 +106,7 @@ class ScrapTrawlerTriggeredAbility extends TriggeredAbilityImpl { Permanent permanent = ((ZoneChangeEvent) event).getTarget(); if (permanent.getControllerId().equals(this.getControllerId()) && permanent.isArtifact()) { FilterCard filter = new FilterArtifactCard("artifact card in your graveyard with converted mana cost less than " + permanent.getManaCost().convertedManaCost()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, permanent.getManaCost().convertedManaCost())); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, permanent.getManaCost().convertedManaCost())); TargetCardInYourGraveyard target = new TargetCardInYourGraveyard(filter); getTargets().clear(); addTarget(target); diff --git a/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java b/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java index f83fcefc31d..851df8f7fb5 100644 --- a/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java +++ b/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.DamageTargetEffect; @@ -38,11 +38,12 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetOpponent; +import java.util.UUID; + /** * * @author emerald000 @@ -52,7 +53,7 @@ public class ScuttlingDoomEngine extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public ScuttlingDoomEngine(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SeaSerpent.java b/Mage.Sets/src/mage/cards/s/SeaSerpent.java index 73f758b4269..bdebd77dd16 100644 --- a/Mage.Sets/src/mage/cards/s/SeaSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SeaSerpent.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -37,10 +37,11 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.SubtypePredicate; +import java.util.UUID; + /** * * @author KholdFuzion @@ -65,7 +66,7 @@ public class SeaSerpent extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackUnlessDefenderControllsPermanent(filter))); // When you control no Islands, sacrifice Sea Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/s/SearingLight.java b/Mage.Sets/src/mage/cards/s/SearingLight.java index 415f3583b03..ff1dc2dd80b 100644 --- a/Mage.Sets/src/mage/cards/s/SearingLight.java +++ b/Mage.Sets/src/mage/cards/s/SearingLight.java @@ -27,16 +27,17 @@ */ package mage.cards.s; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import static mage.filter.Filter.ComparisonType.LessThan; import mage.filter.common.FilterAttackingOrBlockingCreature; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -46,7 +47,7 @@ public class SearingLight extends CardImpl { private static final FilterAttackingOrBlockingCreature filter = new FilterAttackingOrBlockingCreature("attacking or blocking creature with power 2 or less"); static { - filter.add(new PowerPredicate(LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public SearingLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Seasinger.java b/Mage.Sets/src/mage/cards/s/Seasinger.java index b305bb031f6..388f02d1122 100644 --- a/Mage.Sets/src/mage/cards/s/Seasinger.java +++ b/Mage.Sets/src/mage/cards/s/Seasinger.java @@ -27,12 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; - -import mage.abilities.CountType; -import mage.constants.*; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SkipUntapOptionalAbility; @@ -44,15 +41,20 @@ import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.effects.common.continuous.GainControlTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.TargetController; +import mage.constants.Zone; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterLandPermanent; import mage.filter.predicate.mageobject.CardIdPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; +import mage.filter.predicate.permanent.ControllerControlsIslandPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanent; -import mage.filter.predicate.permanent.ControllerControlsIslandPredicate; + +import java.util.UUID; /** * @@ -82,7 +84,7 @@ public class Seasinger extends CardImpl { // When you control no Islands, sacrifice Seasinger. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); // You may choose not to untap Seasinger during your untap step. diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java b/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java index 1b90c7e4622..4ea0a9fb604 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java @@ -27,8 +27,7 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CreateTokenEffect; @@ -38,13 +37,15 @@ import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.keyword.TrampleAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.permanent.token.KnightToken; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -54,7 +55,7 @@ public class SelesnyaCharm extends CardImpl { static private final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public SelesnyaCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SerendibDjinn.java b/Mage.Sets/src/mage/cards/s/SerendibDjinn.java index b421e82f0e7..27be31ae95c 100644 --- a/Mage.Sets/src/mage/cards/s/SerendibDjinn.java +++ b/Mage.Sets/src/mage/cards/s/SerendibDjinn.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -40,7 +40,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterLandPermanent; import mage.game.Game; @@ -49,6 +48,8 @@ import mage.players.Player; import mage.target.Target; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author MarcoMarin @@ -67,7 +68,7 @@ public class SerendibDjinn extends CardImpl { this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SerendibDjinnEffect(), TargetController.YOU, false)); // When you control no lands, sacrifice Serendib Djinn. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent(), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent(), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java b/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java index 55260f3231d..8cbf0c1f2f1 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java +++ b/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.DealsDamageToAPlayerAllTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -46,10 +46,11 @@ import mage.constants.CardType; import mage.constants.SetTargetPointer; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -59,7 +60,7 @@ public class ShamanOfTheGreatHunt extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature you control with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public ShamanOfTheGreatHunt(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java b/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java index 87447741ed8..e7e6c88fcef 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java +++ b/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount; import mage.abilities.effects.Effect; @@ -36,10 +36,11 @@ import mage.abilities.effects.common.GainLifeEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -49,7 +50,7 @@ public class ShamanicRevelation extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature you control with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public ShamanicRevelation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShelldockIsle.java b/Mage.Sets/src/mage/cards/s/ShelldockIsle.java index bf03cae92c5..17df9018988 100644 --- a/Mage.Sets/src/mage/cards/s/ShelldockIsle.java +++ b/Mage.Sets/src/mage/cards/s/ShelldockIsle.java @@ -27,10 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ActivateIfConditionActivatedAbility; -import mage.abilities.condition.Condition; import mage.abilities.condition.common.CardsInAnyLibraryCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -42,6 +41,8 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; +import java.util.UUID; + /** * * @author LevelX2 @@ -57,7 +58,7 @@ public class ShelldockIsle extends CardImpl { this.addAbility(new BlueManaAbility()); // {U}, {tap}: You may play the exiled card without paying its mana cost if a library has twenty or fewer cards in it. Ability ability = new ActivateIfConditionActivatedAbility( - Zone.BATTLEFIELD, new HideawayPlayEffect(), new ManaCostsImpl("{U}"), new CardsInAnyLibraryCondition(Condition.ComparisonType.LessThan, 21)); + Zone.BATTLEFIELD, new HideawayPlayEffect(), new ManaCostsImpl("{U}"), new CardsInAnyLibraryCondition(CountType.FEWER_THAN, 21)); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShowOfDominance.java b/Mage.Sets/src/mage/cards/s/ShowOfDominance.java index bd5725252e4..abb24435bff 100644 --- a/Mage.Sets/src/mage/cards/s/ShowOfDominance.java +++ b/Mage.Sets/src/mage/cards/s/ShowOfDominance.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; @@ -41,7 +41,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -52,6 +51,8 @@ import mage.target.Target; import mage.target.TargetPermanent; import mage.target.targetpointer.FixedTarget; +import java.util.UUID; + /** * * @author Styxo @@ -109,7 +110,7 @@ class ShowOfDominanceEffect extends OneShotEffect { if (highestPower != Integer.MIN_VALUE) { if (selectedCreature == null) { FilterPermanent filter = new FilterCreaturePermanent("creature with power " + highestPower); - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, highestPower)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, highestPower)); Target target = new TargetPermanent(1, 1, filter, true); if (controller.chooseTarget(outcome, target, source, game)) { selectedCreature = game.getPermanent(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java b/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java index b28a460fb86..365c72e99e6 100644 --- a/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java +++ b/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java @@ -29,6 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.RestrictionEffect; @@ -42,7 +43,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -59,7 +59,7 @@ public class SidarKondoOfJamuraa extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public SidarKondoOfJamuraa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java b/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java index 8d326c863ca..5f8df8835a3 100644 --- a/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java +++ b/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostControlledEffect; @@ -40,11 +40,12 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -55,7 +56,7 @@ public class SightOfTheScalelords extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); } public SightOfTheScalelords(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Silkwrap.java b/Mage.Sets/src/mage/cards/s/Silkwrap.java index 7cb8e9790d9..5258c98795b 100644 --- a/Mage.Sets/src/mage/cards/s/Silkwrap.java +++ b/Mage.Sets/src/mage/cards/s/Silkwrap.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.OnLeaveReturnExiledToBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -39,7 +39,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.permanent.ControllerPredicate; @@ -48,6 +47,8 @@ import mage.game.permanent.Permanent; import mage.target.TargetPermanent; import mage.util.CardUtil; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -57,7 +58,7 @@ public class Silkwrap extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less an opponent controls"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java b/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java index 305b27ade71..edc7b9782e6 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.TurnedFaceUpSourceTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -41,12 +41,13 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.ControllerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -56,7 +57,7 @@ public class SilumgarAssassin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less an opponent controls"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SkeletonShip.java b/Mage.Sets/src/mage/cards/s/SkeletonShip.java index ff98a575ba4..ac31ce488de 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletonShip.java +++ b/Mage.Sets/src/mage/cards/s/SkeletonShip.java @@ -29,6 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -40,7 +41,6 @@ import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; import mage.target.common.TargetCreaturePermanent; @@ -61,7 +61,7 @@ public class SkeletonShip extends CardImpl { // When you control no Islands, sacrifice Skeleton Ship. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); // {tap}: Put a -1/-1 counter on target creature. diff --git a/Mage.Sets/src/mage/cards/s/SkyfireKirin.java b/Mage.Sets/src/mage/cards/s/SkyfireKirin.java index 85f59eb63f0..832669ba61f 100644 --- a/Mage.Sets/src/mage/cards/s/SkyfireKirin.java +++ b/Mage.Sets/src/mage/cards/s/SkyfireKirin.java @@ -29,6 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -37,7 +38,6 @@ import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.*; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterSpiritOrArcaneCard; @@ -53,7 +53,6 @@ import mage.target.targetpointer.FixedTarget; import java.util.UUID; /** - * * @author LevelX2 */ public class SkyfireKirin extends CardImpl { @@ -61,7 +60,7 @@ public class SkyfireKirin extends CardImpl { private final UUID originalId; public SkyfireKirin(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}{R}"); + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{R}"); addSuperType(SuperType.LEGENDARY); this.subtype.add("Kirin"); this.subtype.add("Spirit"); @@ -86,7 +85,7 @@ public class SkyfireKirin extends CardImpl { int cmc = spell.getConvertedManaCost(); ability.getTargets().clear(); FilterPermanent filter = new FilterCreaturePermanent(new StringBuilder("creature with converted mana costs of ").append(cmc).toString()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, cmc)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); Target target = new TargetPermanent(filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/s/SkymarkRoc.java b/Mage.Sets/src/mage/cards/s/SkymarkRoc.java index e6335e2a5c0..73bbdba8e47 100644 --- a/Mage.Sets/src/mage/cards/s/SkymarkRoc.java +++ b/Mage.Sets/src/mage/cards/s/SkymarkRoc.java @@ -28,8 +28,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.ReturnToHandTargetEffect; import mage.abilities.keyword.FlyingAbility; @@ -37,7 +37,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.ControllerIdPredicate; @@ -46,6 +45,8 @@ import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -97,7 +98,7 @@ class SkymarkRocAbility extends TriggeredAbilityImpl { FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls with toughness 2 or less"); UUID defenderId = game.getCombat().getDefendingPlayerId(sourceId, game); filter.add(new ControllerIdPredicate(defenderId)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); this.getTargets().clear(); TargetCreaturePermanent target = new TargetCreaturePermanent(filter); diff --git a/Mage.Sets/src/mage/cards/s/SkywhalersShot.java b/Mage.Sets/src/mage/cards/s/SkywhalersShot.java index 65ffa75cb04..d65bbb5bd1c 100644 --- a/Mage.Sets/src/mage/cards/s/SkywhalersShot.java +++ b/Mage.Sets/src/mage/cards/s/SkywhalersShot.java @@ -27,17 +27,18 @@ */ package mage.cards.s; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.keyword.ScryEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -47,7 +48,7 @@ public class SkywhalersShot extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public SkywhalersShot(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java b/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java index b744f6280cb..7c92e6f4989 100644 --- a/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -39,9 +39,10 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -59,7 +60,7 @@ public class SlipstreamSerpent extends CardImpl { // When you control no Islands, sacrifice Slipstream Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); // Morph {5}{U} diff --git a/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java b/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java index 2ab6389ba86..8ff260671a2 100644 --- a/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java +++ b/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java @@ -27,16 +27,17 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.TargetPermanent; +import java.util.UUID; + /** * @author nantuko */ @@ -45,7 +46,7 @@ public class SmiteTheMonstrous extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public SmiteTheMonstrous(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Smother.java b/Mage.Sets/src/mage/cards/s/Smother.java index c1123fcfaa2..ba3c2dbd43e 100644 --- a/Mage.Sets/src/mage/cards/s/Smother.java +++ b/Mage.Sets/src/mage/cards/s/Smother.java @@ -27,16 +27,17 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -46,7 +47,7 @@ public class Smother extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public Smother(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java b/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java index 8b2fb1dd1e6..28788a34afe 100644 --- a/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java +++ b/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; @@ -38,10 +38,11 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author dustinconrad @@ -51,7 +52,7 @@ public class SneakyHomunculus extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public SneakyHomunculus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SolarTide.java b/Mage.Sets/src/mage/cards/s/SolarTide.java index 69c9523a2bc..6502b929c18 100644 --- a/Mage.Sets/src/mage/cards/s/SolarTide.java +++ b/Mage.Sets/src/mage/cards/s/SolarTide.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.effects.common.DestroyAllEffect; @@ -35,12 +35,13 @@ import mage.abilities.keyword.EntwineAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetControlledPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -51,8 +52,8 @@ public class SolarTide extends CardImpl { private static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter1.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); - filter2.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter1.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter2.add(new PowerPredicate(CountType.MORE_THAN, 2)); } public SolarTide(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java b/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java index 248a34f4ec7..0cb56dac980 100644 --- a/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java +++ b/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java @@ -28,11 +28,9 @@ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.ReturnToHandChosenControlledPermanentCost; import mage.abilities.costs.mana.GenericManaCost; @@ -40,7 +38,8 @@ import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterControlledLandPermanent; import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterCreaturePermanent; @@ -48,6 +47,8 @@ import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetControlledPermanent; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * @author Loki */ @@ -57,7 +58,7 @@ public class SoratamiMirrorGuard extends CardImpl { private static final FilterCreaturePermanent filterCreature = new FilterCreaturePermanent("creature with power 2 or less"); static { - filterCreature.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filterCreature.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public SoratamiMirrorGuard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java b/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java index 6abe9f1cf4f..4e5d789eef2 100644 --- a/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java +++ b/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java @@ -27,22 +27,23 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Zone; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.keyword.IndestructibleAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -52,7 +53,7 @@ public class SpearbreakerBehemoth extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public SpearbreakerBehemoth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellBlast.java b/Mage.Sets/src/mage/cards/s/SpellBlast.java index 5dd41584965..672322895e7 100644 --- a/Mage.Sets/src/mage/cards/s/SpellBlast.java +++ b/Mage.Sets/src/mage/cards/s/SpellBlast.java @@ -27,20 +27,21 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.Target; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author LevelX2 @@ -73,7 +74,7 @@ public class SpellBlast extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterSpell newfilter = new FilterSpell(new StringBuilder("spell with converted mana cost ").append(xValue).toString()); - newfilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue)); + newfilter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); Target target = new TargetSpell(newfilter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/s/SpellBurst.java b/Mage.Sets/src/mage/cards/s/SpellBurst.java index fa9ce2497fa..6df1213e3cc 100644 --- a/Mage.Sets/src/mage/cards/s/SpellBurst.java +++ b/Mage.Sets/src/mage/cards/s/SpellBurst.java @@ -27,28 +27,28 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.CounterTargetEffect; import mage.abilities.keyword.BuybackAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.TargetSpell; +import java.util.UUID; + /** - * * @author LevelX2 */ public class SpellBurst extends CardImpl { public SpellBurst(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{X}{U}"); + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{X}{U}"); // Buyback {3} @@ -64,7 +64,7 @@ public class SpellBurst extends CardImpl { if (ability instanceof SpellAbility) { ability.getTargets().clear(); FilterSpell filter = new FilterSpell("spell with converted mana cost X"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, ability.getManaCostsToPay().getX())); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, ability.getManaCostsToPay().getX())); ability.addTarget(new TargetSpell(filter)); } } diff --git a/Mage.Sets/src/mage/cards/s/SpellQueller.java b/Mage.Sets/src/mage/cards/s/SpellQueller.java index fc4902a00c7..2ed01071f5f 100644 --- a/Mage.Sets/src/mage/cards/s/SpellQueller.java +++ b/Mage.Sets/src/mage/cards/s/SpellQueller.java @@ -27,11 +27,10 @@ */ package mage.cards.s; -import java.util.Set; -import java.util.UUID; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.LeavesBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -43,7 +42,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.ExileZone; @@ -55,6 +53,9 @@ import mage.target.TargetSpell; import mage.util.CardUtil; import org.apache.log4j.Logger; +import java.util.Set; +import java.util.UUID; + /** * * @author LevelX2 @@ -64,7 +65,7 @@ public class SpellQueller extends CardImpl { private final static FilterSpell filter = new FilterSpell("spell with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public SpellQueller(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellSnare.java b/Mage.Sets/src/mage/cards/s/SpellSnare.java index 71cd72cd09b..a66a4e4ba27 100644 --- a/Mage.Sets/src/mage/cards/s/SpellSnare.java +++ b/Mage.Sets/src/mage/cards/s/SpellSnare.java @@ -27,16 +27,17 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author Loki @@ -46,7 +47,7 @@ public class SpellSnare extends CardImpl { private static final FilterSpell filter = new FilterSpell("spell with converted mana cost 2"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 2)); } public SpellSnare(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java b/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java index 5af73f0977d..6b6be4c98f8 100644 --- a/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java +++ b/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java @@ -28,21 +28,22 @@ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Zone; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.CantBeCounteredControlledEffect; import mage.abilities.effects.common.CantBeCounteredSourceEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Zone; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * @@ -54,7 +55,7 @@ public class SpellbreakerBehemoth extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public SpellbreakerBehemoth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java b/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java index c62fd10c298..83f30c611b3 100644 --- a/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java +++ b/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java @@ -27,12 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; - -import mage.constants.CardType; -import mage.constants.Outcome; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -40,8 +37,9 @@ import mage.abilities.keyword.FlashAbility; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Outcome; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -51,6 +49,8 @@ import mage.game.Game; import mage.game.stack.StackObject; import mage.target.TargetSpell; +import java.util.UUID; + /** * * @author LevelX2 @@ -88,7 +88,7 @@ public class SpellstutterSprite extends CardImpl { if (ability instanceof EntersBattlefieldTriggeredAbility) { int numberFaeries = game.getState().getBattlefield().countAll(filter, ability.getControllerId(), game); FilterSpell xFilter = new FilterSpell(new StringBuilder("spell with converted mana cost ").append(numberFaeries).append(" or less").toString()); - xFilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, numberFaeries + 1)); + xFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, numberFaeries + 1)); ability.getTargets().clear(); ability.addTarget(new TargetSpell(xFilter)); } diff --git a/Mage.Sets/src/mage/cards/s/StirTheGrave.java b/Mage.Sets/src/mage/cards/s/StirTheGrave.java index 2c47dd5834b..91b2901a80c 100644 --- a/Mage.Sets/src/mage/cards/s/StirTheGrave.java +++ b/Mage.Sets/src/mage/cards/s/StirTheGrave.java @@ -27,19 +27,20 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -60,7 +61,7 @@ public class StirTheGrave extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); ability.getTargets().add(new TargetCardInYourGraveyard(filter)); } diff --git a/Mage.Sets/src/mage/cards/s/StranglingSoot.java b/Mage.Sets/src/mage/cards/s/StranglingSoot.java index 77693f0aa72..c9d63ccfa39 100644 --- a/Mage.Sets/src/mage/cards/s/StranglingSoot.java +++ b/Mage.Sets/src/mage/cards/s/StranglingSoot.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.FlashbackAbility; @@ -35,25 +35,25 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TimingRule; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author ilcartographer */ public class StranglingSoot extends CardImpl { - + private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughess 3 or less"); - + static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 4)); } public StranglingSoot(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{B}"); + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{B}"); // Destroy target creature with toughness 3 or less. this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); diff --git a/Mage.Sets/src/mage/cards/s/SubterraneanScout.java b/Mage.Sets/src/mage/cards/s/SubterraneanScout.java index 147c3ca4247..80e4bb1ee07 100644 --- a/Mage.Sets/src/mage/cards/s/SubterraneanScout.java +++ b/Mage.Sets/src/mage/cards/s/SubterraneanScout.java @@ -27,19 +27,20 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -49,7 +50,7 @@ public class SubterraneanScout extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public SubterraneanScout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SultaiFlayer.java b/Mage.Sets/src/mage/cards/s/SultaiFlayer.java index cdc47658734..2b709638d4e 100644 --- a/Mage.Sets/src/mage/cards/s/SultaiFlayer.java +++ b/Mage.Sets/src/mage/cards/s/SultaiFlayer.java @@ -27,19 +27,20 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.effects.common.GainLifeEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -49,7 +50,7 @@ public class SultaiFlayer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature you control with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/SunTitan.java b/Mage.Sets/src/mage/cards/s/SunTitan.java index cf3994d81c0..9d054d1a3c1 100644 --- a/Mage.Sets/src/mage/cards/s/SunTitan.java +++ b/Mage.Sets/src/mage/cards/s/SunTitan.java @@ -27,20 +27,21 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldOrAttacksSourceTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.VigilanceAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -50,7 +51,7 @@ public class SunTitan extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("permanent card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public SunTitan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunforger.java b/Mage.Sets/src/mage/cards/s/Sunforger.java index d042a2f96d2..85642991477 100644 --- a/Mage.Sets/src/mage/cards/s/Sunforger.java +++ b/Mage.Sets/src/mage/cards/s/Sunforger.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.ObjectColor; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.SpellAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -47,7 +47,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicates; @@ -59,6 +58,8 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -126,7 +127,7 @@ class SunforgerEffect extends OneShotEffect { new ColorPredicate(ObjectColor.RED), new ColorPredicate(ObjectColor.WHITE))); filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); filter.add(new CardCanBeCastPredicate(source.getControllerId())); if (controller.searchLibrary(target, game, controller.getId())) { UUID targetId = target.getFirstTarget(); diff --git a/Mage.Sets/src/mage/cards/s/SunseedNurturer.java b/Mage.Sets/src/mage/cards/s/SunseedNurturer.java index 1fda80c3c0f..b7592197f7f 100644 --- a/Mage.Sets/src/mage/cards/s/SunseedNurturer.java +++ b/Mage.Sets/src/mage/cards/s/SunseedNurturer.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.GainLifeEffect; import mage.abilities.mana.ColorlessManaAbility; @@ -36,13 +36,14 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.events.GameEvent.EventType; +import java.util.UUID; + /** * * @author North @@ -79,7 +80,7 @@ class SunseedNurturerTriggeredAbility extends TriggeredAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public SunseedNurturerTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java b/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java index 5b64ada4f1c..9d87562163c 100644 --- a/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java +++ b/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -41,12 +41,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LoneFox @@ -58,7 +59,7 @@ public class SunstrikeLegionnaire extends CardImpl { static { untapFilter.add(new AnotherPredicate()); - tapFilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + tapFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public SunstrikeLegionnaire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunweb.java b/Mage.Sets/src/mage/cards/s/Sunweb.java index 68a15192368..858108ba873 100644 --- a/Mage.Sets/src/mage/cards/s/Sunweb.java +++ b/Mage.Sets/src/mage/cards/s/Sunweb.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.abilities.keyword.DefenderAbility; @@ -37,10 +37,11 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author Quercitron @@ -49,7 +50,7 @@ public class Sunweb extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public Sunweb(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SuspensionField.java b/Mage.Sets/src/mage/cards/s/SuspensionField.java index d008ee0d1a1..54d1ac1b555 100644 --- a/Mage.Sets/src/mage/cards/s/SuspensionField.java +++ b/Mage.Sets/src/mage/cards/s/SuspensionField.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.OnLeaveReturnExiledToBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -38,7 +38,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.game.Game; @@ -46,6 +45,8 @@ import mage.game.permanent.Permanent; import mage.target.common.TargetCreaturePermanent; import mage.util.CardUtil; +import java.util.UUID; + /** * * @author emerald000 @@ -55,7 +56,7 @@ public class SuspensionField extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 3 or greater"); static { - filter.add(new ToughnessPredicate(ComparisonType.GreaterThan, 2)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 2)); } public SuspensionField(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Swat.java b/Mage.Sets/src/mage/cards/s/Swat.java index 36aceffe1d5..9ec825f8295 100644 --- a/Mage.Sets/src/mage/cards/s/Swat.java +++ b/Mage.Sets/src/mage/cards/s/Swat.java @@ -27,18 +27,19 @@ */ package mage.cards.s; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.CyclingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author Plopman @@ -48,7 +49,7 @@ public class Swat extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public Swat(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwiftWarkite.java b/Mage.Sets/src/mage/cards/s/SwiftWarkite.java index 6b6af8b7d46..144be9dac08 100644 --- a/Mage.Sets/src/mage/cards/s/SwiftWarkite.java +++ b/Mage.Sets/src/mage/cards/s/SwiftWarkite.java @@ -27,9 +27,9 @@ */ package mage.cards.s; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.DelayedTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; @@ -47,7 +47,6 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -59,6 +58,8 @@ import mage.target.common.TargetCardInHand; import mage.target.common.TargetCardInYourGraveyard; import mage.target.targetpointer.FixedTarget; +import java.util.UUID; + /** * * @author jeffwadsworth @@ -95,7 +96,7 @@ class SwiftWarkiteEffect extends OneShotEffect { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } SwiftWarkiteEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java b/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java index ee9acf6c798..23fd93fd463 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java @@ -27,8 +27,8 @@ */ package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -38,12 +38,7 @@ import mage.abilities.keyword.EquipAbility; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Outcome; -import mage.constants.SetTargetPointer; -import mage.constants.Zone; -import mage.filter.Filter; +import mage.constants.*; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.mageobject.ToughnessPredicate; @@ -51,6 +46,8 @@ import mage.game.Game; import mage.game.permanent.Permanent; import mage.players.Player; +import java.util.UUID; + /** * * @author LevelX2 @@ -60,8 +57,8 @@ public class SwordOfTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a 1/1 creature"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.Equal, 1)); - filter.add(new ToughnessPredicate(Filter.ComparisonType.Equal, 1)); + filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); } public SwordOfTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java b/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java index 3e6e2e01e3c..79fba9d1d5f 100644 --- a/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java +++ b/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java @@ -27,9 +27,9 @@ */ package mage.cards.t; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.mana.GenericManaCost; @@ -39,7 +39,6 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; @@ -47,6 +46,8 @@ import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author emerald000 @@ -99,7 +100,7 @@ class TajNarSwordsmithEffect extends OneShotEffect { if (cost.pay(source, game, source.getSourceId(), source.getControllerId(), false, null)) { FilterCard filter = new FilterCard("Equipment card with converted mana cost " + costX + " or less"); filter.add(new SubtypePredicate("Equipment")); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, costX + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, costX + 1)); new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(0, 1, filter), false, true).apply(game, source); return true; } diff --git a/Mage.Sets/src/mage/cards/t/TawnossWand.java b/Mage.Sets/src/mage/cards/t/TawnossWand.java index ba7a821057a..4814b9d1875 100644 --- a/Mage.Sets/src/mage/cards/t/TawnossWand.java +++ b/Mage.Sets/src/mage/cards/t/TawnossWand.java @@ -27,8 +27,8 @@ */ package mage.cards.t; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -37,11 +37,12 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author MarcoMarin @@ -51,7 +52,7 @@ public class TawnossWand extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); } public TawnossWand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TemurAscendancy.java b/Mage.Sets/src/mage/cards/t/TemurAscendancy.java index d0894bf6a21..1710049cdb7 100644 --- a/Mage.Sets/src/mage/cards/t/TemurAscendancy.java +++ b/Mage.Sets/src/mage/cards/t/TemurAscendancy.java @@ -27,7 +27,7 @@ */ package mage.cards.t; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -38,11 +38,12 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -51,7 +52,7 @@ public class TemurAscendancy extends CardImpl { final private static FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public TemurAscendancy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TemurCharm.java b/Mage.Sets/src/mage/cards/t/TemurCharm.java index 641d9a7c547..c28917faac6 100644 --- a/Mage.Sets/src/mage/cards/t/TemurCharm.java +++ b/Mage.Sets/src/mage/cards/t/TemurCharm.java @@ -27,7 +27,7 @@ */ package mage.cards.t; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.Effect; @@ -36,17 +36,19 @@ import mage.abilities.effects.common.FightTargetsEffect; import mage.abilities.effects.common.combat.CantBlockAllEffect; import mage.abilities.effects.common.continuous.BoostTargetEffect; import mage.cards.CardImpl; -import mage.cards.CardSetInfo;import mage.target.Target; -import mage.target.common.TargetControlledCreaturePermanent; -import mage.target.common.TargetCreaturePermanent; +import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import mage.target.Target; import mage.target.TargetSpell; +import mage.target.common.TargetControlledCreaturePermanent; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; /** * @@ -59,7 +61,7 @@ public class TemurCharm extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.NOT_YOU)); - filterCantBlock.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filterCantBlock.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public TemurCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TerashisVerdict.java b/Mage.Sets/src/mage/cards/t/TerashisVerdict.java index 1a23445cc7b..8aa0f553386 100644 --- a/Mage.Sets/src/mage/cards/t/TerashisVerdict.java +++ b/Mage.Sets/src/mage/cards/t/TerashisVerdict.java @@ -27,16 +27,17 @@ */ package mage.cards.t; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.common.FilterAttackingCreature; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetAttackingCreature; +import java.util.UUID; + /** * * @author Loki @@ -46,7 +47,7 @@ public class TerashisVerdict extends CardImpl { private static final FilterAttackingCreature filter = new FilterAttackingCreature("attacking creature with power 3 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); } public TerashisVerdict(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TetheredGriffin.java b/Mage.Sets/src/mage/cards/t/TetheredGriffin.java index 5ef9d0f6887..caaff3a79d5 100644 --- a/Mage.Sets/src/mage/cards/t/TetheredGriffin.java +++ b/Mage.Sets/src/mage/cards/t/TetheredGriffin.java @@ -27,17 +27,18 @@ */ package mage.cards.t; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.keyword.FlyingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterEnchantmentPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -55,7 +56,7 @@ public class TetheredGriffin extends CardImpl { // When you control no enchantments, sacrifice Tethered Griffin. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterEnchantmentPermanent(), Filter.ComparisonType.Equal, 0, + new FilterEnchantmentPermanent(), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java b/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java index 4958a8faa88..35f43a67796 100644 --- a/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java +++ b/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java @@ -27,20 +27,21 @@ */ package mage.cards.t; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.HeroicAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.Target; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author LevelX2 @@ -50,7 +51,7 @@ public class TethmosHighPriest extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public TethmosHighPriest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java b/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java index 1312c47b679..035612a50bd 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java @@ -27,9 +27,8 @@ */ package mage.cards.t; -import java.util.List; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; import mage.abilities.costs.Cost; @@ -40,13 +39,7 @@ import mage.abilities.effects.common.UntapTargetEffect; import mage.cards.Card; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.constants.CardType; -import mage.constants.Duration; -import mage.constants.Layer; -import mage.constants.Outcome; -import mage.constants.SubLayer; -import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; +import mage.constants.*; import mage.filter.common.FilterArtifactCard; import mage.filter.common.FilterArtifactPermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -56,6 +49,9 @@ import mage.players.Player; import mage.target.common.TargetArtifactPermanent; import mage.target.common.TargetCardInLibrary; +import java.util.List; +import java.util.UUID; + /** * * @author North @@ -119,7 +115,7 @@ class TezzeretTheSeekerEffect2 extends OneShotEffect { } FilterArtifactCard filter = new FilterArtifactCard("artifact card with converted mana cost " + cmc + " or less"); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, cmc + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, cmc + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/t/Thoughtbind.java b/Mage.Sets/src/mage/cards/t/Thoughtbind.java index eb0a7dbd35b..a835d0f7018 100644 --- a/Mage.Sets/src/mage/cards/t/Thoughtbind.java +++ b/Mage.Sets/src/mage/cards/t/Thoughtbind.java @@ -28,17 +28,17 @@ package mage.cards.t; -import java.util.UUID; - -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; +import java.util.UUID; + /** * @author Loki */ @@ -47,7 +47,7 @@ public class Thoughtbind extends CardImpl { private static final FilterSpell filter = new FilterSpell("spell with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); } public Thoughtbind(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java b/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java index cae54e293f5..c054f2b2dc5 100644 --- a/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java +++ b/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java @@ -28,23 +28,24 @@ package mage.cards.t; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.Zone; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.AttachEffect; import mage.abilities.effects.common.continuous.ControlEnchantedEffect; import mage.abilities.keyword.EnchantAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPermanent; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -54,7 +55,7 @@ public class ThreadsOfDisloyalty extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 2 or less"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public ThreadsOfDisloyalty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java b/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java index b7fca72889f..ef5d6599506 100644 --- a/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java +++ b/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java @@ -27,8 +27,8 @@ */ package mage.cards.t; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; @@ -40,11 +40,12 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.AnotherPredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -55,7 +56,7 @@ public class ThundercloudElemental extends CardImpl { private static final FilterCreaturePermanent flyingFilter = new FilterCreaturePermanent("All other creatures"); static { - toughnessFilter.add(new ToughnessPredicate(Filter.ComparisonType.LessThan, 3)); + toughnessFilter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); flyingFilter.add(new AnotherPredicate()); } diff --git a/Mage.Sets/src/mage/cards/t/TimelyHordemate.java b/Mage.Sets/src/mage/cards/t/TimelyHordemate.java index a502e47e4bd..d7190a1b2bc 100644 --- a/Mage.Sets/src/mage/cards/t/TimelyHordemate.java +++ b/Mage.Sets/src/mage/cards/t/TimelyHordemate.java @@ -27,9 +27,9 @@ */ package mage.cards.t; -import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.RaidCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -37,12 +37,13 @@ import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffec import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; import mage.watchers.common.PlayerAttackedWatcher; +import java.util.UUID; + /** * * @author LevelX2 @@ -52,7 +53,7 @@ public class TimelyHordemate extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); } public TimelyHordemate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TransgressTheMind.java b/Mage.Sets/src/mage/cards/t/TransgressTheMind.java index 7d5a4e4ba80..94a62b08e05 100644 --- a/Mage.Sets/src/mage/cards/t/TransgressTheMind.java +++ b/Mage.Sets/src/mage/cards/t/TransgressTheMind.java @@ -27,19 +27,20 @@ */ package mage.cards.t; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.Effect; import mage.abilities.effects.common.ExileCardYouChooseTargetOpponentEffect; import mage.abilities.keyword.DevoidAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetPlayer; +import java.util.UUID; + /** * * @author fireshoes @@ -49,7 +50,7 @@ public class TransgressTheMind extends CardImpl { private static final FilterCard filter = new FilterCard("a card from it with converted mana cost 3 or greater"); static { - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 2)); } public TransgressTheMind(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TreasureMage.java b/Mage.Sets/src/mage/cards/t/TreasureMage.java index 0c794fdf987..e1310a33d63 100644 --- a/Mage.Sets/src/mage/cards/t/TreasureMage.java +++ b/Mage.Sets/src/mage/cards/t/TreasureMage.java @@ -28,20 +28,21 @@ package mage.cards.t; -import java.util.UUID; -import mage.constants.CardType; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.SearchEffect; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Loki @@ -52,7 +53,7 @@ public class TreasureMage extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.GreaterThan, 5)); + filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); } public TreasureMage (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrinketMage.java b/Mage.Sets/src/mage/cards/t/TrinketMage.java index 565d0d8eff5..bb8852f1a87 100644 --- a/Mage.Sets/src/mage/cards/t/TrinketMage.java +++ b/Mage.Sets/src/mage/cards/t/TrinketMage.java @@ -28,14 +28,14 @@ package mage.cards.t; -import mage.constants.CardType; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.SearchEffect; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter; +import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -52,7 +52,7 @@ public class TrinketMage extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); } public TrinketMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrophyMage.java b/Mage.Sets/src/mage/cards/t/TrophyMage.java index b313fd0894f..4c40fccccaa 100644 --- a/Mage.Sets/src/mage/cards/t/TrophyMage.java +++ b/Mage.Sets/src/mage/cards/t/TrophyMage.java @@ -27,19 +27,20 @@ */ package mage.cards.t; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author Styxo @@ -50,7 +51,7 @@ public class TrophyMage extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, 3)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 3)); } public TrophyMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java b/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java index 5babeb1e712..c5426ca4a85 100644 --- a/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java +++ b/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java @@ -27,10 +27,8 @@ */ package mage.cards.u; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; import mage.abilities.costs.Cost; @@ -44,7 +42,6 @@ import mage.cards.CardsImpl; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterPermanent; import mage.filter.common.FilterPermanentCard; import mage.filter.predicate.Predicates; @@ -55,6 +52,10 @@ import mage.players.Player; import mage.target.common.TargetCardInHand; import mage.target.common.TargetCreatureOrPlayer; +import java.util.HashSet; +import java.util.Set; +import java.util.UUID; + /** * * @author LevelX2 @@ -122,7 +123,7 @@ class UginTheSpiritDragonEffect2 extends OneShotEffect { } FilterPermanent filter = new FilterPermanent("permanent with converted mana cost X or less that's one or more colors"); - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, cmc + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, cmc + 1)); filter.add(Predicates.not(new ColorlessPredicate())); Set permanentsToExile = new HashSet<>(); permanentsToExile.addAll(game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)); diff --git a/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java b/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java index 79ba7ddd543..7e1518597cf 100644 --- a/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java +++ b/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java @@ -27,19 +27,20 @@ */ package mage.cards.u; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.filter.predicate.permanent.ControllerPredicate; +import java.util.UUID; + /** * * @author fireshoes @@ -49,7 +50,7 @@ public class UlvenwaldObserver extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature you control with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/u/Unearth.java b/Mage.Sets/src/mage/cards/u/Unearth.java index 49b423f3ab5..ae206bd1354 100644 --- a/Mage.Sets/src/mage/cards/u/Unearth.java +++ b/Mage.Sets/src/mage/cards/u/Unearth.java @@ -27,19 +27,20 @@ */ package mage.cards.u; -import java.util.UUID; -import mage.constants.CardType; +import mage.abilities.CountType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.CyclingAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; import mage.filter.FilterCard; import mage.filter.common.FilterCreatureCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * @author Plopman @@ -49,7 +50,7 @@ public class Unearth extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public Unearth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java b/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java index 1c37fe5572d..4a78f45d486 100644 --- a/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java +++ b/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java @@ -27,20 +27,21 @@ */ package mage.cards.v; -import java.util.UUID; -import mage.constants.CardType; -import mage.constants.Zone; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.RegenerateTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; -import mage.filter.Filter.ComparisonType; +import mage.constants.CardType; +import mage.constants.Zone; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author North @@ -50,7 +51,7 @@ public class VagrantPlowbeasts extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public VagrantPlowbeasts(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/ValorousStance.java b/Mage.Sets/src/mage/cards/v/ValorousStance.java index 87478ab4201..6dee7f701b0 100644 --- a/Mage.Sets/src/mage/cards/v/ValorousStance.java +++ b/Mage.Sets/src/mage/cards/v/ValorousStance.java @@ -27,7 +27,7 @@ */ package mage.cards.v; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -36,11 +36,12 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.ToughnessPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -50,7 +51,7 @@ public class ValorousStance extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); } public ValorousStance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java b/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java index 9ab114745d6..c08c63c1caa 100644 --- a/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java +++ b/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java @@ -27,18 +27,19 @@ */ package mage.cards.v; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.keyword.ScryEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.Target; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author LevelX2 @@ -47,7 +48,7 @@ public class VanquishTheFoul extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } public VanquishTheFoul(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java b/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java index bfd5f8d2476..69517275d81 100644 --- a/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java +++ b/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java @@ -27,8 +27,8 @@ */ package mage.cards.v; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; @@ -37,7 +37,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.TargetController; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -45,6 +44,8 @@ import mage.game.Game; import mage.players.Player; import mage.target.TargetPlayer; +import java.util.UUID; + /** * * @author Styxo @@ -90,7 +91,7 @@ class VenarianGlimmerEffect extends OneShotEffect { Player player = game.getPlayer(targetPointer.getFirst(game, source)); if (player != null) { FilterCard filter = new FilterNonlandCard(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); Effect effect = new DiscardCardYouChooseTargetEffect(filter, TargetController.ANY); effect.setTargetPointer(targetPointer); effect.apply(game, source); diff --git a/Mage.Sets/src/mage/cards/v/VillainousWealth.java b/Mage.Sets/src/mage/cards/v/VillainousWealth.java index 8e3181a2eb2..c0c8320c508 100644 --- a/Mage.Sets/src/mage/cards/v/VillainousWealth.java +++ b/Mage.Sets/src/mage/cards/v/VillainousWealth.java @@ -27,19 +27,14 @@ */ package mage.cards.v; -import java.util.UUID; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; -import mage.cards.Card; -import mage.cards.CardImpl; -import mage.cards.CardSetInfo; -import mage.cards.Cards; -import mage.cards.CardsImpl; +import mage.cards.*; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -49,6 +44,8 @@ import mage.target.common.TargetCardInExile; import mage.target.common.TargetOpponent; import mage.util.CardUtil; +import java.util.UUID; + /** * * @author LevelX2 @@ -97,7 +94,7 @@ class VillainousWealthEffect extends OneShotEffect { if (controller != null) { Player player = game.getPlayer(targetPointer.getFirst(game, source)); FilterCard filter = new FilterNonlandCard(); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); UUID exileId = CardUtil.getCardExileZoneId(game, source); if (player != null) { Cards cardsToExile = new CardsImpl(); diff --git a/Mage.Sets/src/mage/cards/v/VineSnare.java b/Mage.Sets/src/mage/cards/v/VineSnare.java index f8267fc69cf..2e228ab1b4a 100644 --- a/Mage.Sets/src/mage/cards/v/VineSnare.java +++ b/Mage.Sets/src/mage/cards/v/VineSnare.java @@ -27,16 +27,17 @@ */ package mage.cards.v; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.common.PreventAllDamageByAllPermanentsEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; +import java.util.UUID; + /** * * @author LevelX2 @@ -46,7 +47,7 @@ public class VineSnare extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 4 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 5)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 5)); } public VineSnare(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VodalianKnights.java b/Mage.Sets/src/mage/cards/v/VodalianKnights.java index 32ed0da6632..4c72bad721b 100644 --- a/Mage.Sets/src/mage/cards/v/VodalianKnights.java +++ b/Mage.Sets/src/mage/cards/v/VodalianKnights.java @@ -27,8 +27,8 @@ */ package mage.cards.v; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -43,9 +43,10 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterLandPermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -67,7 +68,7 @@ public class VodalianKnights extends CardImpl { // When you control no Islands, sacrifice Vodalian Knights. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), Filter.ComparisonType.Equal, 0, + new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, new SacrificeSourceEffect())); // {U}: Vodalian Knights gains flying until end of turn. diff --git a/Mage.Sets/src/mage/cards/v/Void.java b/Mage.Sets/src/mage/cards/v/Void.java index 8a1045ec6b7..725c4b47086 100644 --- a/Mage.Sets/src/mage/cards/v/Void.java +++ b/Mage.Sets/src/mage/cards/v/Void.java @@ -27,10 +27,8 @@ */ package mage.cards.v; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; import mage.cards.CardImpl; @@ -39,7 +37,6 @@ import mage.choices.Choice; import mage.choices.ChoiceImpl; import mage.constants.CardType; import mage.constants.Outcome; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -49,14 +46,17 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.TargetPlayer; +import java.util.HashSet; +import java.util.Set; +import java.util.UUID; + /** - * * @author LevelX2 */ public class Void extends CardImpl { public Void(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{B}{R}"); + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{B}{R}"); // Choose a number. Destroy all artifacts and creatures with converted mana cost equal to that number. Then target player reveals his or her hand and discards all nonland cards with converted mana cost equal to the number. this.getSpellAbility().addTarget(new TargetPlayer()); @@ -110,7 +110,7 @@ class VoidEffect extends OneShotEffect { } } FilterCard filterCard = new FilterCard(); - filterCard.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, number)); + filterCard.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, number)); filterCard.add(Predicates.not(new CardTypePredicate(CardType.LAND))); Player targetPlayer = game.getPlayer(targetPointer.getFirst(game, source)); diff --git a/Mage.Sets/src/mage/cards/w/WarNameAspirant.java b/Mage.Sets/src/mage/cards/w/WarNameAspirant.java index 4caee17f46b..ab1f874104a 100644 --- a/Mage.Sets/src/mage/cards/w/WarNameAspirant.java +++ b/Mage.Sets/src/mage/cards/w/WarNameAspirant.java @@ -27,8 +27,8 @@ */ package mage.cards.w; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.condition.common.RaidCondition; @@ -39,11 +39,12 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.watchers.common.PlayerAttackedWatcher; +import java.util.UUID; + /** * * @author emerald000 @@ -53,7 +54,7 @@ public class WarNameAspirant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 1 or less"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.LessThan, 2)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 2)); } public WarNameAspirant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WarpingWail.java b/Mage.Sets/src/mage/cards/w/WarpingWail.java index b4f5f30064b..9a7bf365ee0 100644 --- a/Mage.Sets/src/mage/cards/w/WarpingWail.java +++ b/Mage.Sets/src/mage/cards/w/WarpingWail.java @@ -27,7 +27,7 @@ */ package mage.cards.w; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CounterTargetEffect; @@ -36,8 +36,6 @@ import mage.abilities.effects.common.ExileTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.filter.Filter; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterSpell; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.Predicates; @@ -48,6 +46,8 @@ import mage.game.permanent.token.EldraziScionToken; import mage.target.TargetSpell; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -59,8 +59,8 @@ public class WarpingWail extends CardImpl { static { filterCreature.add(Predicates.or( - new PowerPredicate(Filter.ComparisonType.LessThan, 2), - new ToughnessPredicate(ComparisonType.LessThan, 2))); + new PowerPredicate(CountType.FEWER_THAN, 2), + new ToughnessPredicate(CountType.FEWER_THAN, 2))); filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); } diff --git a/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java b/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java index 90c9bdb64f6..bb825b05aae 100644 --- a/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java +++ b/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java @@ -27,20 +27,20 @@ */ package mage.cards.w; -import java.util.UUID; - -import mage.constants.CardType; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.effects.common.DamageTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreatureOrPlayer; +import java.util.UUID; + /** * * @author Plopman @@ -49,7 +49,7 @@ import mage.target.common.TargetCreatureOrPlayer; private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 4)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); } public WhereAncientsTread(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildPair.java b/Mage.Sets/src/mage/cards/w/WildPair.java index 3813014b4d4..ef18d21642b 100644 --- a/Mage.Sets/src/mage/cards/w/WildPair.java +++ b/Mage.Sets/src/mage/cards/w/WildPair.java @@ -27,9 +27,9 @@ */ package mage.cards.w; -import java.util.UUID; import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.condition.Condition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -37,12 +37,7 @@ import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.cards.CardsImpl; -import mage.constants.CardType; -import mage.constants.Outcome; -import mage.constants.SetTargetPointer; -import mage.constants.TargetController; -import mage.constants.Zone; -import mage.filter.Filter; +import mage.constants.*; import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.IntComparePredicate; @@ -54,6 +49,8 @@ import mage.players.Player; import mage.target.common.TargetCardInLibrary; import mage.watchers.common.CastFromHandWatcher; +import java.util.UUID; + /** * * @author fenhl @@ -111,7 +108,7 @@ class WildPairEffect extends OneShotEffect { if (permanent != null) { int totalPT = permanent.getPower().getValue() + permanent.getToughness().getValue(); FilterCreatureCard filter = new FilterCreatureCard("creature card with total power and toughness " + totalPT); - filter.add(new TotalPowerAndToughnessPredicate(Filter.ComparisonType.Equal, totalPT)); + filter.add(new TotalPowerAndToughnessPredicate(CountType.EQUAL_TO, totalPT)); TargetCardInLibrary target = new TargetCardInLibrary(1, filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { @@ -132,7 +129,7 @@ class WildPairEffect extends OneShotEffect { */ class TotalPowerAndToughnessPredicate extends IntComparePredicate { - public TotalPowerAndToughnessPredicate(Filter.ComparisonType type, int value) { + public TotalPowerAndToughnessPredicate(CountType type, int value) { super(type, value); } diff --git a/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java b/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java index 9119596e310..5286c5ee850 100644 --- a/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java +++ b/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java @@ -27,7 +27,7 @@ */ package mage.cards.w; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.Mode; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CounterTargetEffect; @@ -38,12 +38,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter; import mage.filter.FilterSpell; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.TargetSpell; import mage.target.common.TargetControlledCreaturePermanent; +import java.util.UUID; + /** * * @author Styxo @@ -53,7 +54,7 @@ public class WisdomOfTheJedi extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("spell with converted mana cost of 3 or less"); static { - filterSpell.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filterSpell.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public WisdomOfTheJedi(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java index 5f186fa00aa..cc9fe80a60b 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java @@ -30,6 +30,7 @@ package mage.cards.w; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -39,7 +40,6 @@ import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.CardTypePredicate; @@ -99,7 +99,7 @@ class WoodlandBellowerEffect extends OneShotEffect { filter.add(new ColorPredicate(ObjectColor.GREEN)); filter.add(new CardTypePredicate(CardType.CREATURE)); filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage.Sets/src/mage/cards/w/Wrangle.java b/Mage.Sets/src/mage/cards/w/Wrangle.java index 9837a6c5153..ef05776b69c 100644 --- a/Mage.Sets/src/mage/cards/w/Wrangle.java +++ b/Mage.Sets/src/mage/cards/w/Wrangle.java @@ -27,7 +27,7 @@ */ package mage.cards.w; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.effects.Effect; import mage.abilities.effects.common.UntapTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -37,11 +37,12 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.Duration; -import mage.filter.Filter.ComparisonType; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** * * @author fireshoes @@ -51,7 +52,7 @@ public class Wrangle extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or less"); static { - filter.add(new PowerPredicate(ComparisonType.LessThan, 5)); + filter.add(new PowerPredicate(CountType.FEWER_THAN, 5)); } public Wrangle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java b/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java index f5d657079f2..19da42bce64 100644 --- a/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java +++ b/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java @@ -29,6 +29,7 @@ package mage.cards.y; import mage.MageInt; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.PutCountersSourceCost; import mage.abilities.costs.common.TapSourceCost; @@ -42,7 +43,6 @@ import mage.constants.Outcome; import mage.constants.SuperType; import mage.constants.Zone; import mage.counters.Counter; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; @@ -108,7 +108,7 @@ class YisanTheWandererBardEffect extends OneShotEffect { if (sourcePermanent != null && controller != null) { int newConvertedCost = sourcePermanent.getCounters(game).getCount("verse"); FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, newConvertedCost)); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, newConvertedCost)); filter.add(new CardTypePredicate(CardType.CREATURE)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java b/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java index 517c63b07a1..1f938a1917d 100644 --- a/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java +++ b/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java @@ -27,8 +27,8 @@ */ package mage.cards.z; -import java.util.UUID; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.AttacksTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.keyword.FlyingAbility; @@ -36,12 +36,13 @@ import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.CardTypePredicate; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.target.common.TargetCardInLibrary; +import java.util.UUID; + /** * * @author LevelX2 @@ -52,7 +53,7 @@ public class ZurTheEnchanter extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, 4)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); } public ZurTheEnchanter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java b/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java index d94c5ca2674..ff08e91e062 100644 --- a/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java +++ b/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java @@ -28,6 +28,7 @@ package mage.cards.z; import mage.MageInt; +import mage.abilities.CountType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.abilities.keyword.DashAbility; @@ -36,7 +37,6 @@ import mage.cards.CardSetInfo; import mage.constants.CardType; import mage.constants.SuperType; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -51,7 +51,7 @@ public class ZurgoBellstriker extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 1)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); } public ZurgoBellstriker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage/src/main/java/mage/abilities/CountType.java b/Mage/src/main/java/mage/abilities/CountType.java index 767a6ce74f2..524829fbdaa 100644 --- a/Mage/src/main/java/mage/abilities/CountType.java +++ b/Mage/src/main/java/mage/abilities/CountType.java @@ -3,12 +3,23 @@ package mage.abilities; /** * Created by IGOUDT on 5-3-2017. */ -public enum CountType { - MORE_THAN, FEWER_THAN, EQUAL_TO; +public enum CountType { + MORE_THAN(">"), FEWER_THAN("<"), EQUAL_TO("=="); + + String operator; + + CountType(String op) { + operator = op; + } + + @Override + public String toString() { + return operator; + } - public static boolean compare(int source, CountType comparison, int target){ - switch (comparison){ + public static boolean compare(int source, CountType comparison, int target) { + switch (comparison) { case MORE_THAN: return source > target; case FEWER_THAN: @@ -16,7 +27,7 @@ public enum CountType { case EQUAL_TO: return source == target; default: - throw new IllegalArgumentException("comparison rules for "+comparison + " missing"); + throw new IllegalArgumentException("comparison rules for " + comparison + " missing"); } } } diff --git a/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java index 850443f3570..9019fd97399 100644 --- a/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java @@ -27,10 +27,10 @@ */ package mage.abilities.common; +import mage.abilities.CountType; import mage.abilities.StateTriggeredAbility; import mage.abilities.effects.Effect; import mage.constants.Zone; -import mage.filter.Filter.ComparisonType; import mage.filter.FilterPermanent; import mage.game.Game; import mage.game.events.GameEvent; @@ -44,10 +44,10 @@ import mage.game.events.GameEvent; public class ControlsPermanentsControllerTriggeredAbility extends StateTriggeredAbility { protected final FilterPermanent filter; - protected final ComparisonType type; + protected final CountType type; protected final int value; - public ControlsPermanentsControllerTriggeredAbility(FilterPermanent filter, ComparisonType type, int value, Effect effect) { + public ControlsPermanentsControllerTriggeredAbility(FilterPermanent filter, CountType type, int value, Effect effect) { super(Zone.BATTLEFIELD, effect); this.filter = filter; this.value = value; @@ -69,24 +69,7 @@ public class ControlsPermanentsControllerTriggeredAbility extends StateTriggered @Override public boolean checkTrigger(GameEvent event, Game game) { int inputValue = game.getBattlefield().countAll(filter, getControllerId(), game); - switch (type) { - case Equal: - if (inputValue != value) { - return false; - } - break; - case GreaterThan: - if (inputValue <= value) { - return false; - } - break; - case LessThan: - if (inputValue >= value) { - return false; - } - break; - } - return true; + return CountType.compare(value, type, inputValue); } @Override diff --git a/Mage/src/main/java/mage/abilities/condition/Condition.java b/Mage/src/main/java/mage/abilities/condition/Condition.java index 5ea393c4c91..512d3720003 100644 --- a/Mage/src/main/java/mage/abilities/condition/Condition.java +++ b/Mage/src/main/java/mage/abilities/condition/Condition.java @@ -1,9 +1,10 @@ package mage.abilities.condition; -import java.io.Serializable; import mage.abilities.Ability; import mage.game.Game; +import java.io.Serializable; + /** * Interface describing condition occurrence. @@ -13,24 +14,6 @@ import mage.game.Game; @FunctionalInterface public interface Condition extends Serializable { - enum ComparisonType { - - GreaterThan(">"), - Equal("=="), - LessThan("<"); - - private final String text; - - ComparisonType(String text) { - this.text = text; - } - - @Override - public String toString() { - return text; - } - } - /** * Checks the game to see if this condition applies for the given ability. * diff --git a/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java b/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java index b0e6681f8d2..cfa5e4f5a86 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java @@ -27,22 +27,23 @@ */ package mage.abilities.condition.common; -import java.util.UUID; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.condition.Condition; import mage.game.Game; import mage.players.Player; +import java.util.UUID; + /** - * * @author LevelX2 */ public class CardsInAnyLibraryCondition implements Condition { - protected final Condition.ComparisonType type; + protected final CountType type; protected final int value; - public CardsInAnyLibraryCondition(Condition.ComparisonType type, int value) { + public CardsInAnyLibraryCondition(CountType type, int value) { this.type = type; this.value = value; } @@ -54,23 +55,8 @@ public class CardsInAnyLibraryCondition implements Condition { for (UUID playerId : game.getState().getPlayersInRange(controller.getId(), game)) { Player player = game.getPlayer(playerId); if (player != null) { - switch (type) { - case GreaterThan: - if (player.getLibrary().size() > value) { - return true; - } - break; - case Equal: - if (player.getLibrary().size() == value) { - return true; - } - break; - case LessThan: - if (player.getLibrary().size() < value) { - return true; - } - break; - } + return CountType.compare(player.getLibrary().size(), type, value); + } } } @@ -81,13 +67,13 @@ public class CardsInAnyLibraryCondition implements Condition { public String toString() { StringBuilder sb = new StringBuilder("a library has "); switch (type) { - case GreaterThan: + case MORE_THAN: sb.append(value + 1).append(" or more cards in it "); break; - case Equal: + case EQUAL_TO: sb.append(value).append(" cards in it "); break; - case LessThan: + case FEWER_THAN: sb.append(value - 1).append(" or fewer cards in it "); break; } diff --git a/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java b/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java index 3a2df9c78bc..512a914ef68 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java @@ -29,8 +29,8 @@ package mage.abilities.condition.common; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.condition.Condition; -import mage.filter.Filter; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; import mage.game.Game; @@ -43,7 +43,7 @@ public enum FerociousCondition implements Condition { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3)); + filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java b/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java index 46294e4581e..03bae928ed4 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java @@ -29,10 +29,10 @@ package mage.abilities.effects.common.cost; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; import mage.constants.Outcome; -import mage.filter.Filter; import mage.filter.common.FilterNonlandCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -58,7 +58,7 @@ public class CastWithoutPayingManaCostEffect extends OneShotEffect { public CastWithoutPayingManaCostEffect(int maxCost) { super(Outcome.PlayForFree); filter = new FilterNonlandCard("card with converted mana cost " + maxCost + " or less from your hand"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, maxCost + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, maxCost + 1)); this.manaCost = maxCost; this.staticText = "you may cast a card with converted mana cost " + maxCost + " or less from your hand without paying its mana cost"; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java index 889ca401dcb..e4b753d777d 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java @@ -28,11 +28,11 @@ package mage.abilities.effects.common.search; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; import mage.constants.Outcome; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; @@ -67,7 +67,7 @@ public class SearchLibraryWithLessCMCPutInPlayEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { FilterCard advancedFilter = filter.copy(); // never change static objects so copy the object here before - advancedFilter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, source.getManaCostsToPay().getX() + 1)); + advancedFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); TargetCardInLibrary target = new TargetCardInLibrary(advancedFilter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java index 86de47c2833..8805ea9e7a4 100644 --- a/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java @@ -28,6 +28,7 @@ package mage.abilities.effects.keyword; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.StaticValue; import mage.abilities.effects.Effect; @@ -35,7 +36,6 @@ import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.counter.AddCountersTargetEffect; import mage.constants.Outcome; import mage.counters.CounterType; -import mage.filter.Filter; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterCreaturePermanent; @@ -96,7 +96,7 @@ public class BolsterEffect extends OneShotEffect { if (leastToughness != Integer.MAX_VALUE) { if (selectedCreature == null) { FilterPermanent filter = new FilterControlledCreaturePermanent("creature you control with toughness " + leastToughness); - filter.add(new ToughnessPredicate(Filter.ComparisonType.Equal, leastToughness)); + filter.add(new ToughnessPredicate(CountType.EQUAL_TO, leastToughness)); Target target = new TargetPermanent(1,1, filter, true); if (controller.chooseTarget(outcome, target, source, game)) { selectedCreature = game.getPermanent(target.getFirstTarget()); diff --git a/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java b/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java index 056926ec1a3..027d6c67df2 100644 --- a/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java @@ -28,18 +28,19 @@ package mage.abilities.keyword; -import java.util.UUID; +import mage.abilities.CountType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.StaticValue; import mage.abilities.effects.common.ReturnToHandTargetEffect; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.filter.predicate.mageobject.SubtypePredicate; import mage.game.Game; import mage.target.common.TargetCardInYourGraveyard; +import java.util.UUID; + /** * * 702.45. Soulshift @@ -75,7 +76,7 @@ public class SoulshiftAbility extends DiesTriggeredAbility { this.getTargets().clear(); int intValue = amount.calculate(game, this, null); FilterCard filter = new FilterCard("Spirit card with converted mana cost " + intValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.LessThan, intValue + 1)); + filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, intValue + 1)); filter.add(new SubtypePredicate("Spirit")); this.addTarget(new TargetCardInYourGraveyard(filter)); super.trigger(game, controllerId); //To change body of generated methods, choose Tools | Templates. diff --git a/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java b/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java index 5dc86dada78..0b87c3fe2a6 100644 --- a/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java @@ -1,6 +1,8 @@ package mage.abilities.keyword; +import mage.MageObject; import mage.abilities.Ability; +import mage.abilities.CountType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -8,17 +10,14 @@ import mage.abilities.effects.OneShotEffect; import mage.cards.Cards; import mage.cards.CardsImpl; import mage.constants.Outcome; +import mage.constants.TimingRule; import mage.constants.Zone; -import mage.filter.Filter; import mage.filter.FilterCard; import mage.filter.predicate.mageobject.ConvertedManaCostPredicate; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInLibrary; -import mage.MageObject; -import mage.constants.TimingRule; - /** * * 702.52. Transmute @@ -79,7 +78,7 @@ class TransmuteEffect extends OneShotEffect { MageObject sourceObject = game.getObject(source.getSourceId()); if (sourceObject != null && controller != null) { FilterCard filter = new FilterCard("card with converted mana cost " + sourceObject.getConvertedManaCost()); - filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, sourceObject.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, sourceObject.getConvertedManaCost())); TargetCardInLibrary target = new TargetCardInLibrary(1, filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage/src/main/java/mage/filter/Filter.java b/Mage/src/main/java/mage/filter/Filter.java index 83c7d8ee528..3f701fa69b6 100644 --- a/Mage/src/main/java/mage/filter/Filter.java +++ b/Mage/src/main/java/mage/filter/Filter.java @@ -27,37 +27,18 @@ */ package mage.filter; -import java.io.Serializable; import mage.filter.predicate.Predicate; import mage.game.Game; +import java.io.Serializable; + /** - * + * @param * @author BetaSteward_at_googlemail.com * @author North - * - * @param */ public interface Filter extends Serializable { - enum ComparisonType { - - GreaterThan(">"), - Equal("=="), - LessThan("<"); - - private final String text; - - ComparisonType(String text) { - this.text = text; - } - - @Override - public String toString() { - return text; - } - } - enum ComparisonScope { Any, All } diff --git a/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java b/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java index 47e376f5115..90e6f3c638a 100644 --- a/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate; import mage.MageObject; -import mage.filter.Filter; +import mage.abilities.CountType; import mage.game.Game; /** @@ -38,10 +38,10 @@ import mage.game.Game; */ public abstract class IntComparePredicate implements Predicate { - protected final Filter.ComparisonType type; + protected final CountType type; protected final int value; - public IntComparePredicate(Filter.ComparisonType type, int value) { + public IntComparePredicate(CountType type, int value) { this.type = type; this.value = value; } @@ -51,24 +51,7 @@ public abstract class IntComparePredicate implements Predi @Override public final boolean apply(T input, Game game) { int inputValue = getInputValue(input); - switch (type) { - case Equal: - if (inputValue != value) { - return false; - } - break; - case GreaterThan: - if (inputValue <= value) { - return false; - } - break; - case LessThan: - if (inputValue >= value) { - return false; - } - break; - } - return true; + return CountType.compare(value, type, inputValue); } @Override diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java index 3524d26dedf..7515c5e71be 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate.mageobject; import mage.MageObject; -import mage.filter.Filter; +import mage.abilities.CountType; import mage.filter.predicate.IntComparePredicate; /** @@ -37,7 +37,7 @@ import mage.filter.predicate.IntComparePredicate; */ public class ConvertedManaCostPredicate extends IntComparePredicate { - public ConvertedManaCostPredicate(Filter.ComparisonType type, int value) { + public ConvertedManaCostPredicate(CountType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java index 8e696050760..45425282e32 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate.mageobject; import mage.MageObject; -import mage.filter.Filter; +import mage.abilities.CountType; import mage.filter.predicate.IntComparePredicate; /** @@ -37,7 +37,7 @@ import mage.filter.predicate.IntComparePredicate; */ public class PowerPredicate extends IntComparePredicate { - public PowerPredicate(Filter.ComparisonType type, int value) { + public PowerPredicate(CountType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java index a17d2ca73f5..228aaafed05 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate.mageobject; import mage.MageObject; -import mage.filter.Filter; +import mage.abilities.CountType; import mage.filter.predicate.IntComparePredicate; /** @@ -37,7 +37,7 @@ import mage.filter.predicate.IntComparePredicate; */ public class ToughnessPredicate extends IntComparePredicate { - public ToughnessPredicate(Filter.ComparisonType type, int value) { + public ToughnessPredicate(CountType type, int value) { super(type, value); } From 60a325c43fdfb3bf83b0e3747e0df4fbeab08e13 Mon Sep 17 00:00:00 2001 From: ingmargoudt Date: Tue, 11 Apr 2017 16:50:46 +0200 Subject: [PATCH 09/21] fix reversed intcompare --- .../main/java/mage/filter/predicate/IntComparePredicate.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java b/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java index 90e6f3c638a..261f84f771d 100644 --- a/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java @@ -51,7 +51,7 @@ public abstract class IntComparePredicate implements Predi @Override public final boolean apply(T input, Game game) { int inputValue = getInputValue(input); - return CountType.compare(value, type, inputValue); + return CountType.compare(inputValue, type, value); } @Override From 03643d53a30cd8bcfa49f9f09eae96f054602920 Mon Sep 17 00:00:00 2001 From: ingmargoudt Date: Tue, 11 Apr 2017 17:01:59 +0200 Subject: [PATCH 10/21] rename counttype to comparisontype --- Mage.Sets/src/mage/cards/a/AbruptDecay.java | 4 ++-- Mage.Sets/src/mage/cards/a/AbzanCharm.java | 4 ++-- .../src/mage/cards/a/AegisOfTheMeek.java | 6 +++--- Mage.Sets/src/mage/cards/a/AetherVial.java | 4 ++-- Mage.Sets/src/mage/cards/a/AkkiUnderling.java | 4 ++-- .../mage/cards/a/AleshaWhoSmilesAtDeath.java | 4 ++-- .../mage/cards/a/AlignedHedronNetwork.java | 4 ++-- Mage.Sets/src/mage/cards/a/Aluren.java | 6 +++--- Mage.Sets/src/mage/cards/a/AmrouKithkin.java | 4 ++-- Mage.Sets/src/mage/cards/a/AmrouScout.java | 4 ++-- Mage.Sets/src/mage/cards/a/AngelicAccord.java | 4 ++-- .../src/mage/cards/a/ApothecaryGeist.java | 4 ++-- .../src/mage/cards/a/AppetiteForBrains.java | 4 ++-- Mage.Sets/src/mage/cards/a/ArachnusWeb.java | 4 ++-- .../src/mage/cards/a/ArtificersEpiphany.java | 4 ++-- .../src/mage/cards/a/ArtificersIntuition.java | 4 ++-- .../src/mage/cards/a/AshenmoorCohort.java | 4 ++-- .../mage/cards/a/AshiokNightmareWeaver.java | 4 ++-- Mage.Sets/src/mage/cards/a/AsylumVisitor.java | 4 ++-- .../src/mage/cards/a/AuriokSalvagers.java | 4 ++-- .../src/mage/cards/a/AustereCommand.java | 6 +++--- .../src/mage/cards/a/AysenBureaucrats.java | 4 ++-- .../src/mage/cards/b/BalaGedScorpion.java | 4 ++-- .../src/mage/cards/b/BallynockCohort.java | 4 ++-- .../src/mage/cards/b/BarbarianOutcast.java | 4 ++-- Mage.Sets/src/mage/cards/b/BarrenGlory.java | 4 ++-- .../src/mage/cards/b/BeaconBehemoth.java | 4 ++-- Mage.Sets/src/mage/cards/b/BigGameHunter.java | 4 ++-- Mage.Sets/src/mage/cards/b/Biovisionary.java | 4 ++-- Mage.Sets/src/mage/cards/b/BirthingPod.java | 4 ++-- .../src/mage/cards/b/BlackcleaveCliffs.java | 4 ++-- Mage.Sets/src/mage/cards/b/Blightspeaker.java | 4 ++-- Mage.Sets/src/mage/cards/b/BloodLust.java | 4 ++-- .../src/mage/cards/b/BloodchiefAscension.java | 4 ++-- .../src/mage/cards/b/BloodlineKeeper.java | 4 ++-- .../src/mage/cards/b/BloodthornTaunter.java | 4 ++-- Mage.Sets/src/mage/cards/b/BloomingMarsh.java | 4 ++-- Mage.Sets/src/mage/cards/b/BogGlider.java | 4 ++-- Mage.Sets/src/mage/cards/b/BogSerpent.java | 4 ++-- .../src/mage/cards/b/BotanicalSanctum.java | 4 ++-- Mage.Sets/src/mage/cards/b/BrainInAJar.java | 4 ++-- Mage.Sets/src/mage/cards/b/BrassclawOrcs.java | 4 ++-- .../src/mage/cards/b/BreakThroughTheLine.java | 4 ++-- .../src/mage/cards/b/BriarberryCohort.java | 4 ++-- Mage.Sets/src/mage/cards/b/BringToLight.java | 4 ++-- .../src/mage/cards/b/BrinkOfMadness.java | 4 ++-- Mage.Sets/src/mage/cards/b/BygoneBishop.java | 4 ++-- Mage.Sets/src/mage/cards/c/CanopyVista.java | 4 ++-- Mage.Sets/src/mage/cards/c/CateranBrute.java | 4 ++-- .../src/mage/cards/c/CateranEnforcer.java | 4 ++-- .../src/mage/cards/c/CateranKidnappers.java | 4 ++-- .../src/mage/cards/c/CateranOverlord.java | 4 ++-- .../src/mage/cards/c/CateranPersuader.java | 4 ++-- Mage.Sets/src/mage/cards/c/CateranSlaver.java | 4 ++-- .../src/mage/cards/c/CelestialKirin.java | 4 ++-- .../src/mage/cards/c/ChampionsDrake.java | 4 ++-- .../src/mage/cards/c/ChroniclerOfHeroes.java | 4 ++-- Mage.Sets/src/mage/cards/c/CinderGlade.java | 4 ++-- Mage.Sets/src/mage/cards/c/CitanulFlute.java | 4 ++-- .../src/mage/cards/c/ClifftopRetreat.java | 4 ++-- Mage.Sets/src/mage/cards/c/ColfenorsUrn.java | 4 ++-- .../src/mage/cards/c/CollectedCompany.java | 4 ++-- .../src/mage/cards/c/CollectiveEffort.java | 4 ++-- .../mage/cards/c/CompanionOfTheTrials.java | 4 ++-- .../src/mage/cards/c/CompleteDisregard.java | 4 ++-- .../src/mage/cards/c/ConcealedCourtyard.java | 4 ++-- Mage.Sets/src/mage/cards/c/ConduitOfRuin.java | 4 ++-- .../src/mage/cards/c/ConsumeTheMeek.java | 4 ++-- .../src/mage/cards/c/CopperlineGorge.java | 4 ++-- .../src/mage/cards/c/CovetousDragon.java | 4 ++-- .../src/mage/cards/c/CrabappleCohort.java | 4 ++-- Mage.Sets/src/mage/cards/c/Crackdown.java | 4 ++-- Mage.Sets/src/mage/cards/c/CracklingDoom.java | 4 ++-- .../src/mage/cards/c/CraftyPathmage.java | 4 ++-- Mage.Sets/src/mage/cards/c/CryptChampion.java | 4 ++-- Mage.Sets/src/mage/cards/c/CullingScales.java | 4 ++-- Mage.Sets/src/mage/cards/c/CullingSun.java | 4 ++-- Mage.Sets/src/mage/cards/c/CyclopsTyrant.java | 4 ++-- Mage.Sets/src/mage/cards/d/Dandan.java | 4 ++-- .../src/mage/cards/d/DarkslickShores.java | 4 ++-- .../src/mage/cards/d/DaxosOfMeletis.java | 4 ++-- .../src/mage/cards/d/DeathmaskNezumi.java | 4 ++-- .../src/mage/cards/d/DeepfireElemental.java | 4 ++-- Mage.Sets/src/mage/cards/d/Defeat.java | 4 ++-- Mage.Sets/src/mage/cards/d/DefiantFalcon.java | 4 ++-- .../src/mage/cards/d/DemolitionStomper.java | 4 ++-- .../src/mage/cards/d/DesiccatedNaga.java | 4 ++-- Mage.Sets/src/mage/cards/d/Detonate.java | 4 ++-- Mage.Sets/src/mage/cards/d/DimirCharm.java | 4 ++-- .../src/mage/cards/d/DiscipleOfDeceit.java | 4 ++-- .../src/mage/cards/d/DisdainfulStroke.java | 4 ++-- Mage.Sets/src/mage/cards/d/Disembowel.java | 4 ++-- .../src/mage/cards/d/DistendedMindbender.java | 6 +++--- Mage.Sets/src/mage/cards/d/Dominate.java | 4 ++-- .../src/mage/cards/d/DominatorDrone.java | 4 ++-- Mage.Sets/src/mage/cards/d/DragonBreath.java | 4 ++-- Mage.Sets/src/mage/cards/d/DragonFangs.java | 4 ++-- Mage.Sets/src/mage/cards/d/DragonScales.java | 4 ++-- Mage.Sets/src/mage/cards/d/DragonShadow.java | 4 ++-- Mage.Sets/src/mage/cards/d/DragonWings.java | 4 ++-- .../src/mage/cards/d/DragonmasterOutcast.java | 4 ++-- .../src/mage/cards/d/DragonskullSummit.java | 4 ++-- Mage.Sets/src/mage/cards/d/DreamProwler.java | 4 ++-- Mage.Sets/src/mage/cards/d/DrillSkimmer.java | 4 ++-- .../src/mage/cards/d/DriverOfTheDead.java | 4 ++-- Mage.Sets/src/mage/cards/d/DropOfHoney.java | 4 ++-- .../src/mage/cards/d/DrownedCatacomb.java | 4 ++-- Mage.Sets/src/mage/cards/d/Drumhunter.java | 4 ++-- .../src/mage/cards/d/DuergarHedgeMage.java | 6 +++--- Mage.Sets/src/mage/cards/d/DuskDawn.java | 6 +++--- Mage.Sets/src/mage/cards/d/DustStalker.java | 4 ++-- Mage.Sets/src/mage/cards/d/DwarvenNomad.java | 4 ++-- .../src/mage/cards/d/DwarvenWarriors.java | 4 ++-- Mage.Sets/src/mage/cards/d/DwynensElite.java | 4 ++-- Mage.Sets/src/mage/cards/e/EdgeOfAutumn.java | 4 ++-- .../src/mage/cards/e/EldritchEvolution.java | 4 ++-- .../src/mage/cards/e/ElegantEdgecrafters.java | 4 ++-- Mage.Sets/src/mage/cards/e/ElementalBond.java | 4 ++-- .../src/mage/cards/e/ElspethSunsChampion.java | 4 ++-- .../src/mage/cards/e/EmrakulsInfluence.java | 4 ++-- .../src/mage/cards/e/EndangeredArmodon.java | 6 +++--- .../mage/cards/e/EndrekSahrMasterBreeder.java | 4 ++-- .../src/mage/cards/e/EngulfTheShore.java | 4 ++-- .../src/mage/cards/e/EnthrallingVictor.java | 4 ++-- Mage.Sets/src/mage/cards/e/EpharasWarden.java | 4 ++-- .../src/mage/cards/e/EpicExperiment.java | 4 ++-- Mage.Sets/src/mage/cards/e/EpicStruggle.java | 4 ++-- Mage.Sets/src/mage/cards/e/ErebossTitan.java | 4 ++-- .../src/mage/cards/e/ErrantDoomsayers.java | 4 ++-- Mage.Sets/src/mage/cards/e/Evershrike.java | 4 ++-- .../src/mage/cards/e/ExileIntoDarkness.java | 4 ++-- .../src/mage/cards/e/ExuberantFirestoker.java | 4 ++-- .../src/mage/cards/e/EzuriClawOfProgress.java | 4 ++-- .../src/mage/cards/f/FaerieMiscreant.java | 4 ++-- .../src/mage/cards/f/FavorOfTheMighty.java | 4 ++-- .../mage/cards/f/FerocityOfTheUnderworld.java | 4 ++-- Mage.Sets/src/mage/cards/f/FierceEmpath.java | 4 ++-- .../src/mage/cards/f/FiremindsForesight.java | 4 ++-- .../src/mage/cards/f/FleetFootedMonk.java | 4 ++-- .../src/mage/cards/f/FleshpulperGiant.java | 4 ++-- Mage.Sets/src/mage/cards/f/Fleshwrither.java | 4 ++-- Mage.Sets/src/mage/cards/f/Fragmentize.java | 4 ++-- .../src/mage/cards/g/GarruksPackleader.java | 4 ++-- Mage.Sets/src/mage/cards/g/GateSmasher.java | 4 ++-- Mage.Sets/src/mage/cards/g/GazeOfGranite.java | 4 ++-- Mage.Sets/src/mage/cards/g/GenesisHydra.java | 4 ++-- Mage.Sets/src/mage/cards/g/GenesisWave.java | 4 ++-- .../src/mage/cards/g/GethLordOfTheVault.java | 4 ++-- Mage.Sets/src/mage/cards/g/GhirapurGuide.java | 4 ++-- .../src/mage/cards/g/GhirapurOrrery.java | 4 ++-- .../src/mage/cards/g/GlacialFortress.java | 4 ++-- Mage.Sets/src/mage/cards/g/Glimmervoid.java | 4 ++-- .../src/mage/cards/g/GoblinDarkDwellers.java | 4 ++-- Mage.Sets/src/mage/cards/g/GoblinKites.java | 4 ++-- Mage.Sets/src/mage/cards/g/GoblinMutant.java | 6 +++--- .../src/mage/cards/g/GoblinTunneler.java | 4 ++-- .../src/mage/cards/g/GoblinsOfTheFlarg.java | 4 ++-- Mage.Sets/src/mage/cards/g/Godtoucher.java | 4 ++-- .../src/mage/cards/g/GodtrackerOfJund.java | 4 ++-- .../src/mage/cards/g/GoldmeadowDodger.java | 4 ++-- Mage.Sets/src/mage/cards/g/GorillaPack.java | 4 ++-- Mage.Sets/src/mage/cards/g/GorillaShaman.java | 4 ++-- Mage.Sets/src/mage/cards/g/Granulate.java | 4 ++-- Mage.Sets/src/mage/cards/g/Grozoth.java | 4 ++-- .../src/mage/cards/g/GustriderExuberant.java | 4 ++-- .../src/mage/cards/g/GutwrencherOni.java | 4 ++-- .../src/mage/cards/g/GwyllionHedgeMage.java | 6 +++--- Mage.Sets/src/mage/cards/h/HagHedgeMage.java | 6 +++--- Mage.Sets/src/mage/cards/h/HammerMage.java | 4 ++-- .../mage/cards/h/HanweirMilitiaCaptain.java | 4 ++-- .../src/mage/cards/h/HauntedPlateMail.java | 4 ++-- Mage.Sets/src/mage/cards/h/HearthCharm.java | 4 ++-- Mage.Sets/src/mage/cards/h/HearthKami.java | 4 ++-- .../mage/cards/h/HeidarRimewindMaster.java | 4 ++-- .../src/mage/cards/h/HellkiteHatchling.java | 6 +++--- .../src/mage/cards/h/HellkiteTyrant.java | 4 ++-- .../src/mage/cards/h/HibernationsEnd.java | 4 ++-- .../src/mage/cards/h/HiddenDragonslayer.java | 4 ++-- .../src/mage/cards/h/HinterlandHarbor.java | 4 ++-- .../src/mage/cards/h/HollowbornBarghest.java | 4 ++-- Mage.Sets/src/mage/cards/h/HorriblyAwry.java | 4 ++-- .../src/mage/cards/h/HowltoothHollow.java | 4 ++-- .../src/mage/cards/h/HumbleTheBrute.java | 4 ++-- Mage.Sets/src/mage/cards/i/ImaginaryPet.java | 4 ++-- .../src/mage/cards/i/ImperialRecruiter.java | 4 ++-- .../mage/cards/i/InquisitionOfKozilek.java | 4 ++-- .../src/mage/cards/i/InspiringVantage.java | 4 ++-- Mage.Sets/src/mage/cards/i/IntrepidHero.java | 4 ++-- .../src/mage/cards/i/IronclawBuzzardiers.java | 4 ++-- Mage.Sets/src/mage/cards/i/IronclawOrcs.java | 4 ++-- .../src/mage/cards/i/IslandFishJasconius.java | 4 ++-- Mage.Sets/src/mage/cards/i/IslebackSpawn.java | 4 ++-- .../src/mage/cards/i/IsochronScepter.java | 4 ++-- .../src/mage/cards/i/IsolatedChapel.java | 4 ++-- .../src/mage/cards/i/IvoryCraneNetsuke.java | 4 ++-- .../src/mage/cards/i/IzzetGuildmage.java | 6 +++--- Mage.Sets/src/mage/cards/j/JarJarBinks.java | 4 ++-- Mage.Sets/src/mage/cards/j/JuntuStakes.java | 4 ++-- .../src/mage/cards/j/JushiApprentice.java | 4 ++-- .../src/mage/cards/k/KahoMinamoHistorian.java | 4 ++-- .../mage/cards/k/KalemneDiscipleOfIroas.java | 4 ++-- Mage.Sets/src/mage/cards/k/KavuLair.java | 4 ++-- Mage.Sets/src/mage/cards/k/KavuRunner.java | 4 ++-- .../src/mage/cards/k/KheruBloodsucker.java | 4 ++-- Mage.Sets/src/mage/cards/k/KillingGlare.java | 4 ++-- .../mage/cards/k/KiyomaroFirstToStand.java | 6 +++--- .../mage/cards/k/KnollspineInvocation.java | 4 ++-- .../src/mage/cards/k/KorLineSlinger.java | 4 ++-- .../cards/k/KozilekTheGreatDistortion.java | 6 +++--- .../src/mage/cards/k/KozileksReturn.java | 4 ++-- Mage.Sets/src/mage/cards/k/KrosanDrover.java | 4 ++-- Mage.Sets/src/mage/cards/k/KrovikanRot.java | 4 ++-- .../src/mage/cards/k/KukemssaSerpent.java | 4 ++-- Mage.Sets/src/mage/cards/k/Kurgadon.java | 4 ++-- .../src/mage/cards/l/LagonnaBandElder.java | 4 ++-- .../src/mage/cards/l/LambholtPacifist.java | 4 ++-- .../mage/cards/l/LamplighterOfSelhoff.java | 4 ++-- Mage.Sets/src/mage/cards/l/LastBreath.java | 4 ++-- .../src/mage/cards/l/LaviniaOfTheTenth.java | 4 ++-- .../src/mage/cards/l/LeechriddenSwamp.java | 4 ++-- .../src/mage/cards/l/LegacyOfTheBeloved.java | 4 ++-- Mage.Sets/src/mage/cards/l/LegacysAllure.java | 4 ++-- Mage.Sets/src/mage/cards/l/LeoninSquire.java | 4 ++-- .../src/mage/cards/l/LibraryOfAlexandria.java | 4 ++-- Mage.Sets/src/mage/cards/l/Lifeline.java | 4 ++-- .../cards/l/LilianaDefiantNecromancer.java | 4 ++-- .../src/mage/cards/l/LinSivviDefiantHero.java | 4 ++-- .../src/mage/cards/l/LinessaZephyrMage.java | 4 ++-- Mage.Sets/src/mage/cards/l/Liquify.java | 4 ++-- Mage.Sets/src/mage/cards/l/LoneRider.java | 4 ++-- .../src/mage/cards/m/MadblindMountain.java | 4 ++-- .../src/mage/cards/m/MagnigothTreefolk.java | 12 +++++------ .../src/mage/cards/m/MagusOfTheLibrary.java | 4 ++-- Mage.Sets/src/mage/cards/m/MantaRay.java | 4 ++-- .../src/mage/cards/m/MaraudingMaulhorn.java | 4 ++-- Mage.Sets/src/mage/cards/m/MarbleTitan.java | 4 ++-- Mage.Sets/src/mage/cards/m/Marjhan.java | 4 ++-- Mage.Sets/src/mage/cards/m/MarkOfTheOni.java | 4 ++-- .../src/mage/cards/m/MaskOfIntolerance.java | 4 ++-- .../src/mage/cards/m/MatterReshaper.java | 4 ++-- .../src/mage/cards/m/MayaelTheAnima.java | 4 ++-- Mage.Sets/src/mage/cards/m/MayaelsAria.java | 8 ++++---- Mage.Sets/src/mage/cards/m/Meekstone.java | 4 ++-- Mage.Sets/src/mage/cards/m/MentalMisstep.java | 4 ++-- .../src/mage/cards/m/MentorOfTheMeek.java | 4 ++-- Mage.Sets/src/mage/cards/m/MerchantShip.java | 4 ++-- .../mage/cards/m/MetallurgicSummonings.java | 4 ++-- .../src/mage/cards/m/MidnightScavengers.java | 4 ++-- .../src/mage/cards/m/MightOfTheWild.java | 4 ++-- .../src/mage/cards/m/MightyEmergence.java | 4 ++-- .../src/mage/cards/m/MinamoSightbender.java | 4 ++-- .../src/mage/cards/m/MinotaurTactician.java | 6 +++--- .../src/mage/cards/m/MistmeadowSkulk.java | 4 ++-- .../src/mage/cards/m/MistveilPlains.java | 4 ++-- Mage.Sets/src/mage/cards/m/MobRule.java | 12 +++++------ Mage.Sets/src/mage/cards/m/MoggJailer.java | 4 ++-- Mage.Sets/src/mage/cards/m/Molder.java | 4 ++-- .../src/mage/cards/m/MoonringIsland.java | 4 ++-- Mage.Sets/src/mage/cards/m/Mosstodon.java | 4 ++-- Mage.Sets/src/mage/cards/m/MouthFeed.java | 4 ++-- .../src/mage/cards/m/MudbrawlerCohort.java | 4 ++-- Mage.Sets/src/mage/cards/n/NantukoShaman.java | 4 ++-- Mage.Sets/src/mage/cards/n/NaturalState.java | 4 ++-- Mage.Sets/src/mage/cards/n/Necroplasm.java | 4 ++-- .../src/mage/cards/n/NehebTheWorthy.java | 4 ++-- Mage.Sets/src/mage/cards/n/NemesisTrap.java | 4 ++-- .../src/mage/cards/n/NezumiShortfang.java | 14 ++++++------- Mage.Sets/src/mage/cards/n/NightDealings.java | 4 ++-- .../src/mage/cards/n/NissaVastwoodSeer.java | 4 ++-- Mage.Sets/src/mage/cards/n/NoContest.java | 6 +++--- .../src/mage/cards/n/NoggleHedgeMage.java | 6 +++--- .../src/mage/cards/n/NotOfThisWorld.java | 4 ++-- Mage.Sets/src/mage/cards/n/NoxiousDragon.java | 4 ++-- Mage.Sets/src/mage/cards/o/ONaginata.java | 4 ++-- .../src/mage/cards/o/OjutaisCommand.java | 4 ++-- Mage.Sets/src/mage/cards/o/OketraTheTrue.java | 4 ++-- .../src/mage/cards/o/OpalLakeGatekeepers.java | 4 ++-- Mage.Sets/src/mage/cards/o/Ophiomancer.java | 4 ++-- Mage.Sets/src/mage/cards/o/OrcishVeteran.java | 4 ++-- .../src/mage/cards/o/OrderOfWhiteclay.java | 4 ++-- Mage.Sets/src/mage/cards/o/Orgg.java | 6 +++--- .../src/mage/cards/o/OrochiEggwatcher.java | 4 ++-- Mage.Sets/src/mage/cards/o/OrzhovCharm.java | 4 ++-- Mage.Sets/src/mage/cards/o/OutlandBoar.java | 4 ++-- Mage.Sets/src/mage/cards/o/Overload.java | 6 +++--- Mage.Sets/src/mage/cards/p/Paleoloth.java | 4 ++-- .../src/mage/cards/p/PanopticMirror.java | 4 ++-- Mage.Sets/src/mage/cards/p/PaupersCage.java | 4 ++-- Mage.Sets/src/mage/cards/p/Pendelhaven.java | 6 +++--- .../src/mage/cards/p/PendelhavenElder.java | 6 +++--- Mage.Sets/src/mage/cards/p/Peppersmoke.java | 4 ++-- .../src/mage/cards/p/PerniciousDeed.java | 4 ++-- Mage.Sets/src/mage/cards/p/PillarOfLight.java | 4 ++-- Mage.Sets/src/mage/cards/p/PirateShip.java | 4 ++-- Mage.Sets/src/mage/cards/p/Plaguebearer.java | 4 ++-- Mage.Sets/src/mage/cards/p/PorphyryNodes.java | 4 ++-- .../src/mage/cards/p/PostmortemLunge.java | 4 ++-- Mage.Sets/src/mage/cards/p/PrairieStream.java | 4 ++-- .../mage/cards/p/ProclamationOfRebirth.java | 6 +++--- .../src/mage/cards/p/ProfaneCommand.java | 4 ++-- .../src/mage/cards/p/ProfanerOfTheDead.java | 4 ++-- Mage.Sets/src/mage/cards/p/Prohibit.java | 6 +++--- Mage.Sets/src/mage/cards/p/ProteanHulk.java | 6 +++--- .../src/mage/cards/p/PuncturingLight.java | 4 ++-- .../src/mage/cards/p/PuppetsVerdict.java | 6 +++--- Mage.Sets/src/mage/cards/q/QuillmaneBaku.java | 4 ++-- .../src/mage/cards/r/RadiantsJudgment.java | 4 ++-- .../src/mage/cards/r/RakeclawGargantuan.java | 4 ++-- .../src/mage/cards/r/RallyTheAncestors.java | 4 ++-- .../src/mage/cards/r/RamosianCaptain.java | 4 ++-- .../src/mage/cards/r/RamosianCommander.java | 4 ++-- .../src/mage/cards/r/RamosianLieutenant.java | 4 ++-- .../src/mage/cards/r/RamosianRevivalist.java | 4 ++-- .../src/mage/cards/r/RamosianSergeant.java | 4 ++-- .../src/mage/cards/r/RamosianSkyMarshal.java | 4 ++-- Mage.Sets/src/mage/cards/r/Ramroller.java | 4 ++-- Mage.Sets/src/mage/cards/r/RangerOfEos.java | 4 ++-- Mage.Sets/src/mage/cards/r/RathiAssassin.java | 4 ++-- Mage.Sets/src/mage/cards/r/RathiFiend.java | 4 ++-- .../src/mage/cards/r/RathiIntimidator.java | 4 ++-- .../src/mage/cards/r/RazorvergeThicket.java | 4 ++-- Mage.Sets/src/mage/cards/r/ReaveSoul.java | 4 ++-- Mage.Sets/src/mage/cards/r/ReaverDrone.java | 4 ++-- .../src/mage/cards/r/RecklessCohort.java | 4 ++-- .../src/mage/cards/r/RecruiterOfTheGuard.java | 4 ++-- .../src/mage/cards/r/RelentlessDead.java | 4 ++-- .../src/mage/cards/r/RenegadeRallier.java | 4 ++-- Mage.Sets/src/mage/cards/r/Repeal.java | 4 ++-- Mage.Sets/src/mage/cards/r/Reprisal.java | 4 ++-- .../src/mage/cards/r/ResourcefulReturn.java | 4 ++-- .../mage/cards/r/RetributionOfTheMeek.java | 4 ++-- .../src/mage/cards/r/ReturnToTheRanks.java | 4 ++-- Mage.Sets/src/mage/cards/r/Reveillark.java | 4 ++-- Mage.Sets/src/mage/cards/r/Reverence.java | 4 ++-- .../src/mage/cards/r/RimewindCryomancer.java | 4 ++-- .../src/mage/cards/r/RimewindTaskmage.java | 4 ++-- Mage.Sets/src/mage/cards/r/RoarOfJukai.java | 4 ++-- Mage.Sets/src/mage/cards/r/RootboundCrag.java | 4 ++-- Mage.Sets/src/mage/cards/r/Rootgrapple.java | 4 ++-- Mage.Sets/src/mage/cards/r/RunnersBane.java | 4 ++-- .../src/mage/cards/s/SacellumGodspeaker.java | 4 ++-- .../src/mage/cards/s/SalvagingStation.java | 4 ++-- Mage.Sets/src/mage/cards/s/SanctumOfUgin.java | 4 ++-- Mage.Sets/src/mage/cards/s/SapseepForest.java | 4 ++-- Mage.Sets/src/mage/cards/s/Sarcomancy.java | 4 ++-- Mage.Sets/src/mage/cards/s/SarkhansRage.java | 4 ++-- .../src/mage/cards/s/SaruliGatekeepers.java | 4 ++-- Mage.Sets/src/mage/cards/s/ScaldingTongs.java | 4 ++-- .../src/mage/cards/s/ScourgeOfFleets.java | 4 ++-- Mage.Sets/src/mage/cards/s/ScrapTrawler.java | 4 ++-- .../src/mage/cards/s/ScrollOfOrigins.java | 4 ++-- .../src/mage/cards/s/ScuttlingDoomEngine.java | 4 ++-- Mage.Sets/src/mage/cards/s/SeaSerpent.java | 4 ++-- .../src/mage/cards/s/SeachromeCoast.java | 4 ++-- Mage.Sets/src/mage/cards/s/SearingLight.java | 4 ++-- Mage.Sets/src/mage/cards/s/Seasinger.java | 6 +++--- Mage.Sets/src/mage/cards/s/SelesnyaCharm.java | 4 ++-- .../src/mage/cards/s/SelkieHedgeMage.java | 6 +++--- .../src/mage/cards/s/SenatorBailOrgana.java | 4 ++-- Mage.Sets/src/mage/cards/s/SerendibDjinn.java | 4 ++-- .../mage/cards/s/ShamanOfTheGreatHunt.java | 4 ++-- .../src/mage/cards/s/ShamanicRevelation.java | 4 ++-- Mage.Sets/src/mage/cards/s/ShelldockIsle.java | 4 ++-- .../src/mage/cards/s/ShelteredValley.java | 4 ++-- .../src/mage/cards/s/ShowOfDominance.java | 4 ++-- .../mage/cards/s/ShrineOfTheForsakenGods.java | 4 ++-- .../src/mage/cards/s/SidarKondoOfJamuraa.java | 4 ++-- .../mage/cards/s/SightOfTheScalelords.java | 4 ++-- Mage.Sets/src/mage/cards/s/Silkwrap.java | 4 ++-- .../src/mage/cards/s/SilumgarAssassin.java | 4 ++-- Mage.Sets/src/mage/cards/s/SkeletonShip.java | 4 ++-- Mage.Sets/src/mage/cards/s/SkittishKavu.java | 4 ++-- Mage.Sets/src/mage/cards/s/SkyfireKirin.java | 4 ++-- Mage.Sets/src/mage/cards/s/SkymarkRoc.java | 4 ++-- .../src/mage/cards/s/SkywhalersShot.java | 4 ++-- .../src/mage/cards/s/SlipstreamSerpent.java | 4 ++-- .../mage/cards/s/SmeltWardGatekeepers.java | 4 ++-- .../src/mage/cards/s/SmiteTheMonstrous.java | 4 ++-- .../src/mage/cards/s/SmolderingMarsh.java | 4 ++-- Mage.Sets/src/mage/cards/s/Smother.java | 4 ++-- .../src/mage/cards/s/SneakyHomunculus.java | 4 ++-- Mage.Sets/src/mage/cards/s/SnuffOut.java | 4 ++-- Mage.Sets/src/mage/cards/s/SolarTide.java | 6 +++--- .../src/mage/cards/s/SoratamiMirrorGuard.java | 4 ++-- .../mage/cards/s/SpearbreakerBehemoth.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpellBlast.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpellBurst.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpellQueller.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpellSnare.java | 4 ++-- .../mage/cards/s/SpellbreakerBehemoth.java | 4 ++-- .../src/mage/cards/s/SpellstutterSprite.java | 4 ++-- .../src/mage/cards/s/SpinerockKnoll.java | 4 ++-- .../src/mage/cards/s/SpirebluffCanal.java | 4 ++-- Mage.Sets/src/mage/cards/s/SpiritMirror.java | 4 ++-- .../src/mage/cards/s/StarfieldOfNyx.java | 4 ++-- .../src/mage/cards/s/StatuteOfDenial.java | 4 ++-- Mage.Sets/src/mage/cards/s/Stenchskipper.java | 4 ++-- Mage.Sets/src/mage/cards/s/StirTheGrave.java | 4 ++-- .../src/mage/cards/s/StranglingSoot.java | 4 ++-- .../src/mage/cards/s/StrengthOfArms.java | 4 ++-- .../src/mage/cards/s/SubterraneanScout.java | 4 ++-- Mage.Sets/src/mage/cards/s/SulfurFalls.java | 4 ++-- Mage.Sets/src/mage/cards/s/SultaiFlayer.java | 4 ++-- Mage.Sets/src/mage/cards/s/SunTitan.java | 4 ++-- Mage.Sets/src/mage/cards/s/Sunforger.java | 4 ++-- Mage.Sets/src/mage/cards/s/SunkenHollow.java | 4 ++-- Mage.Sets/src/mage/cards/s/SunpetalGrove.java | 4 ++-- .../src/mage/cards/s/SunseedNurturer.java | 4 ++-- .../src/mage/cards/s/SunspireGatekeepers.java | 4 ++-- .../mage/cards/s/SunstrikeLegionnaire.java | 4 ++-- Mage.Sets/src/mage/cards/s/Sunweb.java | 4 ++-- Mage.Sets/src/mage/cards/s/SupplyCaravan.java | 4 ++-- .../src/mage/cards/s/SuspensionField.java | 4 ++-- Mage.Sets/src/mage/cards/s/Swat.java | 4 ++-- Mage.Sets/src/mage/cards/s/SwiftWarkite.java | 4 ++-- .../src/mage/cards/s/SwordOfTheMeek.java | 6 +++--- .../src/mage/cards/s/SyggRiverCutthroat.java | 4 ++-- .../src/mage/cards/s/SylvanAdvocate.java | 6 +++--- Mage.Sets/src/mage/cards/t/TaintedField.java | 6 +++--- Mage.Sets/src/mage/cards/t/TaintedIsle.java | 6 +++--- Mage.Sets/src/mage/cards/t/TaintedPeak.java | 6 +++--- Mage.Sets/src/mage/cards/t/TaintedWood.java | 6 +++--- .../src/mage/cards/t/TajNarSwordsmith.java | 4 ++-- Mage.Sets/src/mage/cards/t/TawnossWand.java | 4 ++-- Mage.Sets/src/mage/cards/t/TectonicEdge.java | 4 ++-- .../src/mage/cards/t/TempleOfTheFalseGod.java | 4 ++-- .../src/mage/cards/t/TemurAscendancy.java | 4 ++-- Mage.Sets/src/mage/cards/t/TemurCharm.java | 4 ++-- .../src/mage/cards/t/TerashisVerdict.java | 4 ++-- .../src/mage/cards/t/TetheredGriffin.java | 4 ++-- .../src/mage/cards/t/TethmosHighPriest.java | 4 ++-- .../src/mage/cards/t/TezzeretTheSeeker.java | 4 ++-- .../src/mage/cards/t/TezzeretsAmbition.java | 4 ++-- Mage.Sets/src/mage/cards/t/Thoughtbind.java | 4 ++-- .../src/mage/cards/t/ThreadsOfDisloyalty.java | 4 ++-- Mage.Sets/src/mage/cards/t/Thumbscrews.java | 4 ++-- .../mage/cards/t/ThundercloudElemental.java | 4 ++-- .../src/mage/cards/t/TimelyHordemate.java | 4 ++-- .../src/mage/cards/t/ToolcraftExemplar.java | 4 ++-- .../src/mage/cards/t/TransgressTheMind.java | 4 ++-- Mage.Sets/src/mage/cards/t/TreasureMage.java | 4 ++-- Mage.Sets/src/mage/cards/t/TrinketMage.java | 4 ++-- Mage.Sets/src/mage/cards/t/TrophyMage.java | 4 ++-- .../src/mage/cards/u/UbulSarGatekeepers.java | 4 ++-- .../src/mage/cards/u/UginTheSpiritDragon.java | 4 ++-- .../src/mage/cards/u/UlvenwaldObserver.java | 4 ++-- .../src/mage/cards/u/UnderhandedDesigns.java | 4 ++-- Mage.Sets/src/mage/cards/u/Unearth.java | 4 ++-- .../src/mage/cards/v/VagrantPlowbeasts.java | 4 ++-- .../src/mage/cards/v/ValorousStance.java | 4 ++-- .../src/mage/cards/v/VanquishTheFoul.java | 4 ++-- .../src/mage/cards/v/VenarianGlimmer.java | 4 ++-- .../src/mage/cards/v/VillainousWealth.java | 4 ++-- Mage.Sets/src/mage/cards/v/VineSnare.java | 4 ++-- .../src/mage/cards/v/VodalianKnights.java | 4 ++-- Mage.Sets/src/mage/cards/v/Void.java | 4 ++-- .../src/mage/cards/w/WarNameAspirant.java | 4 ++-- Mage.Sets/src/mage/cards/w/WarpingWail.java | 6 +++--- .../src/mage/cards/w/WhereAncientsTread.java | 4 ++-- Mage.Sets/src/mage/cards/w/WildPair.java | 6 +++--- .../src/mage/cards/w/WisdomOfTheJedi.java | 4 ++-- .../src/mage/cards/w/WoodbornBehemoth.java | 4 ++-- .../src/mage/cards/w/WoodlandBellower.java | 4 ++-- .../src/mage/cards/w/WoodlandCemetery.java | 4 ++-- Mage.Sets/src/mage/cards/w/Wrangle.java | 4 ++-- .../mage/cards/y/YisanTheWandererBard.java | 4 ++-- .../src/mage/cards/z/ZurTheEnchanter.java | 4 ++-- .../src/mage/cards/z/ZurgoBellstriker.java | 4 ++-- ...sPermanentsControllerTriggeredAbility.java | 8 ++++---- .../condition/IntCompareCondition.java | 8 ++++---- .../common/CardsInAnyLibraryCondition.java | 8 ++++---- .../common/CardsInHandCondition.java | 18 ++++++++--------- .../common/DevouredCreaturesCondition.java | 4 ++-- .../condition/common/FerociousCondition.java | 4 ++-- .../OpponentControlsPermanentCondition.java | 12 +++++------ .../common/OpponentLostLifeCondition.java | 4 ++-- .../common/PermanentHasCounterCondition.java | 12 +++++------ .../PermanentsOnTheBattlefieldCondition.java | 20 +++++++++---------- .../common/YouGainedLifeCondition.java | 4 ++-- .../cost/CastWithoutPayingManaCostEffect.java | 4 ++-- ...archLibraryWithLessCMCPutInPlayEffect.java | 4 ++-- .../effects/keyword/BolsterEffect.java | 4 ++-- .../abilities/keyword/SoulshiftAbility.java | 4 ++-- .../abilities/keyword/TransmuteAbility.java | 4 ++-- .../ComparisonType.java} | 8 ++++---- .../filter/predicate/IntComparePredicate.java | 8 ++++---- .../ConvertedManaCostPredicate.java | 4 ++-- .../predicate/mageobject/PowerPredicate.java | 4 ++-- .../mageobject/ToughnessPredicate.java | 4 ++-- 489 files changed, 1062 insertions(+), 1062 deletions(-) rename Mage/src/main/java/mage/{abilities/CountType.java => constants/ComparisonType.java} (77%) diff --git a/Mage.Sets/src/mage/cards/a/AbruptDecay.java b/Mage.Sets/src/mage/cards/a/AbruptDecay.java index cd7739a7b65..f165f1d5b3a 100644 --- a/Mage.Sets/src/mage/cards/a/AbruptDecay.java +++ b/Mage.Sets/src/mage/cards/a/AbruptDecay.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CantBeCounteredSourceEffect; @@ -52,7 +52,7 @@ public class AbruptDecay extends CardImpl { private static final FilterNonlandPermanent filter = new FilterNonlandPermanent("nonland permanent with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public AbruptDecay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AbzanCharm.java b/Mage.Sets/src/mage/cards/a/AbzanCharm.java index e7be1abc5eb..7883fd582a6 100644 --- a/Mage.Sets/src/mage/cards/a/AbzanCharm.java +++ b/Mage.Sets/src/mage/cards/a/AbzanCharm.java @@ -27,7 +27,7 @@ */ package mage.cards.a; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.abilities.effects.common.ExileTargetEffect; @@ -53,7 +53,7 @@ public class AbzanCharm extends CardImpl { private static final FilterCreaturePermanent FILTER = new FilterCreaturePermanent("creature with power 3 or greater"); static { - FILTER.add(new PowerPredicate(CountType.MORE_THAN, 2)); + FILTER.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public AbzanCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java b/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java index b04027d8bbc..cf272661ea4 100644 --- a/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/a/AegisOfTheMeek.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -54,8 +54,8 @@ public class AegisOfTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("1/1 creature"); static { - filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); - filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(ComparisonType.EQUAL_TO, 1)); } public AegisOfTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AetherVial.java b/Mage.Sets/src/mage/cards/a/AetherVial.java index 7c49e5a1fb9..6fd5b126768 100644 --- a/Mage.Sets/src/mage/cards/a/AetherVial.java +++ b/Mage.Sets/src/mage/cards/a/AetherVial.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -104,7 +104,7 @@ class AetherVialEffect extends OneShotEffect { int count = permanent.getCounters(game).getCount(CounterType.CHARGE); FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost equal to " + count); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, count)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, count)); String choiceText = "Put a " + filter.getMessage() + " from your hand onto the battlefield?"; Player controller = game.getPlayer(source.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/a/AkkiUnderling.java b/Mage.Sets/src/mage/cards/a/AkkiUnderling.java index d1effeb8f35..f7170621862 100644 --- a/Mage.Sets/src/mage/cards/a/AkkiUnderling.java +++ b/Mage.Sets/src/mage/cards/a/AkkiUnderling.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.CardsInHandCondition; @@ -60,7 +60,7 @@ public class AkkiUnderling extends CardImpl { this.toughness = new MageInt(1); // As long as you have seven or more cards in hand, Akki Underling gets +2/+1 and has first strike. - Condition condition = new CardsInHandCondition(CountType.MORE_THAN,6); + Condition condition = new CardsInHandCondition(ComparisonType.MORE_THAN,6); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostSourceEffect(2,1, Duration.WhileOnBattlefield), condition, "As long as you have seven or more cards in hand, {this} gets +2/+1")); ability.addEffect(new ConditionalContinuousEffect( diff --git a/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java b/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java index e4a0ad3126a..54390ae3e3b 100644 --- a/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java +++ b/Mage.Sets/src/mage/cards/a/AleshaWhoSmilesAtDeath.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.AttacksTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; @@ -59,7 +59,7 @@ public class AleshaWhoSmilesAtDeath extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public AleshaWhoSmilesAtDeath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java b/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java index 22747da1120..61013190b9c 100644 --- a/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java +++ b/Mage.Sets/src/mage/cards/a/AlignedHedronNetwork.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.OnLeaveReturnExiledToBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -77,7 +77,7 @@ class AlignedHedronNetworkExileEffect extends OneShotEffect { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public AlignedHedronNetworkExileEffect() { diff --git a/Mage.Sets/src/mage/cards/a/Aluren.java b/Mage.Sets/src/mage/cards/a/Aluren.java index cfd6dce66f6..0dc6fe48978 100644 --- a/Mage.Sets/src/mage/cards/a/Aluren.java +++ b/Mage.Sets/src/mage/cards/a/Aluren.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.SourceIsSpellCondition; import mage.abilities.costs.AlternativeCostSourceAbility; @@ -63,7 +63,7 @@ public class Aluren extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public Aluren(UUID ownerId, CardSetInfo setInfo) { @@ -95,7 +95,7 @@ class AlurenRuleEffect extends ContinuousEffectImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } private static AlternativeCostSourceAbility alternativeCastingCostAbility = new AlternativeCostSourceAbility(null, SourceIsSpellCondition.instance, null, filter, true); diff --git a/Mage.Sets/src/mage/cards/a/AmrouKithkin.java b/Mage.Sets/src/mage/cards/a/AmrouKithkin.java index 2bc4d079b37..4aed558c559 100644 --- a/Mage.Sets/src/mage/cards/a/AmrouKithkin.java +++ b/Mage.Sets/src/mage/cards/a/AmrouKithkin.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class AmrouKithkin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public AmrouKithkin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AmrouScout.java b/Mage.Sets/src/mage/cards/a/AmrouScout.java index 171c0ce1d57..9fa6bc606fa 100644 --- a/Mage.Sets/src/mage/cards/a/AmrouScout.java +++ b/Mage.Sets/src/mage/cards/a/AmrouScout.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -53,7 +53,7 @@ public class AmrouScout extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("Rebel permanent card with converted mana cost 3 or less"); static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public AmrouScout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AngelicAccord.java b/Mage.Sets/src/mage/cards/a/AngelicAccord.java index 2cbe190e36b..67c024f43e5 100644 --- a/Mage.Sets/src/mage/cards/a/AngelicAccord.java +++ b/Mage.Sets/src/mage/cards/a/AngelicAccord.java @@ -27,7 +27,7 @@ */ package mage.cards.a; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.condition.common.YouGainedLifeCondition; import mage.abilities.effects.common.CreateTokenEffect; @@ -52,7 +52,7 @@ public class AngelicAccord extends CardImpl { // At the beginning of each end step, if you gained 4 or more life this turn, create a 4/4 white Angel creature token with flying. this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new AngelToken()), TargetController.ANY, - new YouGainedLifeCondition(CountType.MORE_THAN, 3), false), new PlayerGainedLifeWatcher()); + new YouGainedLifeCondition(ComparisonType.MORE_THAN, 3), false), new PlayerGainedLifeWatcher()); } public AngelicAccord(final AngelicAccord card) { diff --git a/Mage.Sets/src/mage/cards/a/ApothecaryGeist.java b/Mage.Sets/src/mage/cards/a/ApothecaryGeist.java index dd3e34c4427..cc10a547b4b 100644 --- a/Mage.Sets/src/mage/cards/a/ApothecaryGeist.java +++ b/Mage.Sets/src/mage/cards/a/ApothecaryGeist.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -70,7 +70,7 @@ public class ApothecaryGeist extends CardImpl { TriggeredAbility triggeredAbility = new EntersBattlefieldTriggeredAbility(new GainLifeEffect(3)); this.addAbility(new ConditionalTriggeredAbility( triggeredAbility, - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0), "When {this} enters the battlefield, if you control another Spirit, you gain 3 life.")); } diff --git a/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java b/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java index 439e9a9b677..0a81d1f4a13 100644 --- a/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java +++ b/Mage.Sets/src/mage/cards/a/AppetiteForBrains.java @@ -27,7 +27,7 @@ */ package mage.cards.a; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.ExileCardYouChooseTargetOpponentEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class AppetiteForBrains extends CardImpl { private static final FilterCard filter = new FilterCard("a card from it with converted mana cost 4 or greater"); static { - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 3)); } public AppetiteForBrains(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/ArachnusWeb.java b/Mage.Sets/src/mage/cards/a/ArachnusWeb.java index e0c88f8fba2..e4148b6e239 100644 --- a/Mage.Sets/src/mage/cards/a/ArachnusWeb.java +++ b/Mage.Sets/src/mage/cards/a/ArachnusWeb.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.AttachedToMatchesFilterCondition; @@ -70,7 +70,7 @@ public class ArachnusWeb extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBlockAttackActivateAttachedEffect())); // At the beginning of the end step, if enchanted creature's power is 4 or greater, destroy Arachnus Web. FilterPermanent filter = new FilterPermanent("if enchanted creature's power is 4 or greater"); - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, new DestroySourceEffect(), TargetController.ANY, new AttachedToMatchesFilterCondition(filter), false)); diff --git a/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java b/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java index a1733147458..8a66e8ab486 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersEpiphany.java @@ -27,7 +27,7 @@ */ package mage.cards.a; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -59,7 +59,7 @@ public class ArtificersEpiphany extends CardImpl { this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(2)); this.getSpellAbility().addEffect(new ConditionalOneShotEffect( new DiscardControllerEffect(1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.EQUAL_TO, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.EQUAL_TO, 0))); } public ArtificersEpiphany(final ArtificersEpiphany card) { diff --git a/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java b/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java index 51d16f01cbd..0bd1b80f709 100644 --- a/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java +++ b/Mage.Sets/src/mage/cards/a/ArtificersIntuition.java @@ -28,7 +28,7 @@ package mage.cards.a; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardCardCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -51,7 +51,7 @@ public class ArtificersIntuition extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("artifact card with converted mana cost 1 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public ArtificersIntuition(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}"); diff --git a/Mage.Sets/src/mage/cards/a/AshenmoorCohort.java b/Mage.Sets/src/mage/cards/a/AshenmoorCohort.java index f35b29f5698..bf6411c8744 100644 --- a/Mage.Sets/src/mage/cards/a/AshenmoorCohort.java +++ b/Mage.Sets/src/mage/cards/a/AshenmoorCohort.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -69,7 +69,7 @@ public class AshenmoorCohort extends CardImpl { this.toughness = new MageInt(3); // Ashenmoor Cohort gets +1/+1 as long as you control another black creature. - Condition condition = new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0); + Condition condition = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0); ConditionalContinuousEffect effect = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), condition, rule); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); diff --git a/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java b/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java index dec05e4939b..31061db2e6b 100644 --- a/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java +++ b/Mage.Sets/src/mage/cards/a/AshiokNightmareWeaver.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; import mage.abilities.costs.Cost; @@ -151,7 +151,7 @@ class AshiokNightmareWeaverPutIntoPlayEffect extends OneShotEffect { } FilterCard filter = new FilterCreatureCard("creature card with converted mana cost {" + cmc + "} exiled with " + sourceObject.getIdName()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); Target target = new TargetCardInExile(filter, CardUtil.getExileZoneId(game, source.getSourceId(), source.getSourceObjectZoneChangeCounter())); diff --git a/Mage.Sets/src/mage/cards/a/AsylumVisitor.java b/Mage.Sets/src/mage/cards/a/AsylumVisitor.java index dcf465bc6a1..3b2674cc8a5 100644 --- a/Mage.Sets/src/mage/cards/a/AsylumVisitor.java +++ b/Mage.Sets/src/mage/cards/a/AsylumVisitor.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.mana.ManaCostsImpl; @@ -60,7 +60,7 @@ public class AsylumVisitor extends CardImpl { // At the beginning of each player's upkeep, if that player has no cards in hand, you draw a card and you lose 1 life. Ability ability = new ConditionalTriggeredAbility(new BeginningOfUpkeepTriggeredAbility(new DrawCardSourceControllerEffect(1), TargetController.ANY, false), - new CardsInHandCondition(CountType.EQUAL_TO, 0, null, TargetController.ACTIVE), + new CardsInHandCondition(ComparisonType.EQUAL_TO, 0, null, TargetController.ACTIVE), "At the beginning of each player's upkeep, if that player has no cards in hand, you draw a card and you lose 1 life."); Effect effect = new LoseLifeSourceControllerEffect(1); effect.setText("and you lose 1 life"); diff --git a/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java b/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java index f387aad4e56..641b0223af8 100644 --- a/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java +++ b/Mage.Sets/src/mage/cards/a/AuriokSalvagers.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.ReturnToHandTargetEffect; @@ -51,7 +51,7 @@ public class AuriokSalvagers extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("artifact card with converted mana cost 1 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public AuriokSalvagers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AustereCommand.java b/Mage.Sets/src/mage/cards/a/AustereCommand.java index 2c198904495..f11d4bffdb5 100644 --- a/Mage.Sets/src/mage/cards/a/AustereCommand.java +++ b/Mage.Sets/src/mage/cards/a/AustereCommand.java @@ -27,7 +27,7 @@ */ package mage.cards.a; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.CardImpl; @@ -49,8 +49,8 @@ public class AustereCommand extends CardImpl { private static final FilterCreaturePermanent filter3orLess = new FilterCreaturePermanent("creatures with converted mana cost 3 or less"); private static final FilterCreaturePermanent filter4orMore = new FilterCreaturePermanent("creatures with converted mana cost 4 or greater"); static { - filter3orLess.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); - filter4orMore.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 3)); + filter3orLess.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); + filter4orMore.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 3)); } public AustereCommand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java b/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java index 0b2c9260106..8a444ac5b19 100644 --- a/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java +++ b/Mage.Sets/src/mage/cards/a/AysenBureaucrats.java @@ -29,7 +29,7 @@ package mage.cards.a; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -52,7 +52,7 @@ public class AysenBureaucrats extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public AysenBureaucrats(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java b/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java index ef6d2b09879..7241e6597b3 100644 --- a/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java +++ b/Mage.Sets/src/mage/cards/b/BalaGedScorpion.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class BalaGedScorpion extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 1 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 2)); } public BalaGedScorpion(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BallynockCohort.java b/Mage.Sets/src/mage/cards/b/BallynockCohort.java index bba09b860e8..3defb5fe74c 100644 --- a/Mage.Sets/src/mage/cards/b/BallynockCohort.java +++ b/Mage.Sets/src/mage/cards/b/BallynockCohort.java @@ -29,7 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -76,7 +76,7 @@ public class BallynockCohort extends CardImpl { this.addAbility(FirstStrikeAbility.getInstance()); // Ballynock Cohort gets +1/+1 as long as you control another white creature. - Condition condition = new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0); + Condition condition = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0); Effect effect = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), condition, rule); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); diff --git a/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java b/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java index 90363e3a51b..9c8d623ba84 100644 --- a/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java +++ b/Mage.Sets/src/mage/cards/b/BarbarianOutcast.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.cards.CardImpl; @@ -62,7 +62,7 @@ public class BarbarianOutcast extends CardImpl { // When you control no Swamps, sacrifice Barbarian Outcast. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Swamp", "no Swamps"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Swamp", "no Swamps"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/b/BarrenGlory.java b/Mage.Sets/src/mage/cards/b/BarrenGlory.java index 9237bc17d62..fc218110f24 100644 --- a/Mage.Sets/src/mage/cards/b/BarrenGlory.java +++ b/Mage.Sets/src/mage/cards/b/BarrenGlory.java @@ -27,7 +27,7 @@ */ package mage.cards.b; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.condition.Condition; @@ -55,7 +55,7 @@ public class BarrenGlory extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{4}{W}{W}"); // At the beginning of your upkeep, if you control no permanents other than Barren Glory and have no cards in hand, you win the game. - Condition condition = new CardsInHandCondition(CountType.EQUAL_TO, 0); + Condition condition = new CardsInHandCondition(ComparisonType.EQUAL_TO, 0); TriggeredAbility ability = new BarrenGloryTriggeredAbility(); this.addAbility(new ConditionalTriggeredAbility(ability, condition, diff --git a/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java b/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java index ad15a03218e..10a87add3e8 100644 --- a/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java +++ b/Mage.Sets/src/mage/cards/b/BeaconBehemoth.java @@ -30,7 +30,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -55,7 +55,7 @@ public class BeaconBehemoth extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public BeaconBehemoth (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BigGameHunter.java b/Mage.Sets/src/mage/cards/b/BigGameHunter.java index 1c11258b239..2a047c025c9 100644 --- a/Mage.Sets/src/mage/cards/b/BigGameHunter.java +++ b/Mage.Sets/src/mage/cards/b/BigGameHunter.java @@ -29,7 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -52,7 +52,7 @@ public class BigGameHunter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public BigGameHunter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/Biovisionary.java b/Mage.Sets/src/mage/cards/b/Biovisionary.java index 85fb04f0d3a..470a326338c 100644 --- a/Mage.Sets/src/mage/cards/b/Biovisionary.java +++ b/Mage.Sets/src/mage/cards/b/Biovisionary.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.effects.common.WinGameSourceControllerEffect; @@ -64,7 +64,7 @@ public class Biovisionary extends CardImpl { this.addAbility(new BeginningOfEndStepTriggeredAbility( Zone.BATTLEFIELD, new WinGameSourceControllerEffect(), TargetController.ANY, - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 3), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 3), false)); } diff --git a/Mage.Sets/src/mage/cards/b/BirthingPod.java b/Mage.Sets/src/mage/cards/b/BirthingPod.java index 91965ca0514..98449eb5905 100644 --- a/Mage.Sets/src/mage/cards/b/BirthingPod.java +++ b/Mage.Sets/src/mage/cards/b/BirthingPod.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateAsSorceryActivatedAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.common.SacrificeTargetCost; @@ -106,7 +106,7 @@ class BirthingPodEffect extends OneShotEffect { if (sacrificedPermanent != null && controller != null) { int newConvertedCost = sacrificedPermanent.getConvertedManaCost() + 1; FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, newConvertedCost)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); filter.add(new CardTypePredicate(CardType.CREATURE)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/b/BlackcleaveCliffs.java b/Mage.Sets/src/mage/cards/b/BlackcleaveCliffs.java index 589d743d159..731fb288fa4 100644 --- a/Mage.Sets/src/mage/cards/b/BlackcleaveCliffs.java +++ b/Mage.Sets/src/mage/cards/b/BlackcleaveCliffs.java @@ -27,7 +27,7 @@ */ package mage.cards.b; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -54,7 +54,7 @@ public class BlackcleaveCliffs extends CardImpl { public BlackcleaveCliffs(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new BlackManaAbility()); diff --git a/Mage.Sets/src/mage/cards/b/Blightspeaker.java b/Mage.Sets/src/mage/cards/b/Blightspeaker.java index 07b66ab56c5..6700fcacc65 100644 --- a/Mage.Sets/src/mage/cards/b/Blightspeaker.java +++ b/Mage.Sets/src/mage/cards/b/Blightspeaker.java @@ -29,7 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -57,7 +57,7 @@ public class Blightspeaker extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public Blightspeaker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodLust.java b/Mage.Sets/src/mage/cards/b/BloodLust.java index 1003021ce22..90ebfd4f504 100644 --- a/Mage.Sets/src/mage/cards/b/BloodLust.java +++ b/Mage.Sets/src/mage/cards/b/BloodLust.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.dynamicvalue.DynamicValue; @@ -58,7 +58,7 @@ public class BloodLust extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 4)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 4)); } public BloodLust(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloodchiefAscension.java b/Mage.Sets/src/mage/cards/b/BloodchiefAscension.java index 7efa892a8c0..477416bc396 100644 --- a/Mage.Sets/src/mage/cards/b/BloodchiefAscension.java +++ b/Mage.Sets/src/mage/cards/b/BloodchiefAscension.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.PutCardIntoGraveFromAnywhereAllTriggeredAbility; import mage.abilities.condition.common.OpponentLostLifeCondition; @@ -61,7 +61,7 @@ public class BloodchiefAscension extends CardImpl { this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.QUEST.createInstance(1), false), TargetController.ANY, - new OpponentLostLifeCondition(CountType.MORE_THAN, 1), + new OpponentLostLifeCondition(ComparisonType.MORE_THAN, 1), true)); // Whenever a card is put into an opponent's graveyard from anywhere, if Bloodchief Ascension has three or more quest counters on it, you may have that player lose 2 life. If you do, you gain 2 life. diff --git a/Mage.Sets/src/mage/cards/b/BloodlineKeeper.java b/Mage.Sets/src/mage/cards/b/BloodlineKeeper.java index 35f446cc724..dff74ced117 100644 --- a/Mage.Sets/src/mage/cards/b/BloodlineKeeper.java +++ b/Mage.Sets/src/mage/cards/b/BloodlineKeeper.java @@ -29,7 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -80,7 +80,7 @@ public class BloodlineKeeper extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new TransformSourceEffect(true), new ManaCostsImpl("{B}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 4)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 4)); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java b/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java index 92ea0de659e..3178612ec13 100644 --- a/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java +++ b/Mage.Sets/src/mage/cards/b/BloodthornTaunter.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -53,7 +53,7 @@ public class BloodthornTaunter extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public BloodthornTaunter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BloomingMarsh.java b/Mage.Sets/src/mage/cards/b/BloomingMarsh.java index 48fe128a99e..cc15acea0ed 100644 --- a/Mage.Sets/src/mage/cards/b/BloomingMarsh.java +++ b/Mage.Sets/src/mage/cards/b/BloomingMarsh.java @@ -27,7 +27,7 @@ */ package mage.cards.b; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -53,7 +53,7 @@ public class BloomingMarsh extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // Blooming Marsh enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/b/BogGlider.java b/Mage.Sets/src/mage/cards/b/BogGlider.java index 6e7d080fa81..4f5c07a420c 100644 --- a/Mage.Sets/src/mage/cards/b/BogGlider.java +++ b/Mage.Sets/src/mage/cards/b/BogGlider.java @@ -29,7 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.costs.common.TapSourceCost; @@ -60,7 +60,7 @@ public class BogGlider extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public BogGlider(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BogSerpent.java b/Mage.Sets/src/mage/cards/b/BogSerpent.java index 9dbf2f808a7..30974bfbbea 100644 --- a/Mage.Sets/src/mage/cards/b/BogSerpent.java +++ b/Mage.Sets/src/mage/cards/b/BogSerpent.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -58,7 +58,7 @@ public class BogSerpent extends CardImpl { // When you control no Swamps, sacrifice Bog Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Swamp", "no Swamps"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Swamp", "no Swamps"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/b/BotanicalSanctum.java b/Mage.Sets/src/mage/cards/b/BotanicalSanctum.java index 0c7e97986cc..b3f915e816f 100644 --- a/Mage.Sets/src/mage/cards/b/BotanicalSanctum.java +++ b/Mage.Sets/src/mage/cards/b/BotanicalSanctum.java @@ -27,7 +27,7 @@ */ package mage.cards.b; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -53,7 +53,7 @@ public class BotanicalSanctum extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // Botanical Sanctum enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/b/BrainInAJar.java b/Mage.Sets/src/mage/cards/b/BrainInAJar.java index edef4084240..7d4b3a5a31c 100644 --- a/Mage.Sets/src/mage/cards/b/BrainInAJar.java +++ b/Mage.Sets/src/mage/cards/b/BrainInAJar.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.RemoveVariableCountersSourceCost; import mage.abilities.costs.common.TapSourceCost; @@ -108,7 +108,7 @@ class BrainInAJarCastEffect extends OneShotEffect { if (controller != null && sourceObject != null) { int counters = sourceObject.getCounters(game).getCount(CounterType.CHARGE); FilterCard filter = new FilterInstantOrSorceryCard(); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, counters)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, counters)); int cardsToCast = controller.getHand().count(filter, source.getControllerId(), source.getSourceId(), game); if (cardsToCast > 0 && controller.chooseUse(outcome, "Cast an instant or sorcery card with converted mana costs of " + counters + " from your hand without paying its mana cost?", source, game)) { TargetCardInHand target = new TargetCardInHand(filter); diff --git a/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java b/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java index 82d63009803..fe1e7359506 100644 --- a/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java +++ b/Mage.Sets/src/mage/cards/b/BrassclawOrcs.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class BrassclawOrcs extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public BrassclawOrcs(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java b/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java index 8489e523e31..dea188b4e3c 100644 --- a/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java +++ b/Mage.Sets/src/mage/cards/b/BreakThroughTheLine.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; @@ -55,7 +55,7 @@ public class BreakThroughTheLine extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public BreakThroughTheLine(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/b/BriarberryCohort.java b/Mage.Sets/src/mage/cards/b/BriarberryCohort.java index 02325152c55..9daa2bb5031 100644 --- a/Mage.Sets/src/mage/cards/b/BriarberryCohort.java +++ b/Mage.Sets/src/mage/cards/b/BriarberryCohort.java @@ -29,7 +29,7 @@ package mage.cards.b; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -76,7 +76,7 @@ public class BriarberryCohort extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // Briarberry Cohort gets +1/+1 as long as you control another blue creature. - Condition condition = new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0); + Condition condition = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0); Effect effect = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), condition, rule); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); diff --git a/Mage.Sets/src/mage/cards/b/BringToLight.java b/Mage.Sets/src/mage/cards/b/BringToLight.java index 2385da95b42..b5e761f4ed0 100644 --- a/Mage.Sets/src/mage/cards/b/BringToLight.java +++ b/Mage.Sets/src/mage/cards/b/BringToLight.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.dynamicvalue.common.ColorsOfManaSpentToCastCount; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -98,7 +98,7 @@ class BringToLightEffect extends OneShotEffect { int numberColors = ColorsOfManaSpentToCastCount.getInstance().calculate(game, source, this); FilterCard filter = new FilterCard(); filter.add(Predicates.or(new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, numberColors + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, numberColors + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); controller.searchLibrary(target, game); Card card = controller.getLibrary().getCard(target.getFirstTarget(), game); diff --git a/Mage.Sets/src/mage/cards/b/BrinkOfMadness.java b/Mage.Sets/src/mage/cards/b/BrinkOfMadness.java index ed975ce678f..927ee2a5b2d 100644 --- a/Mage.Sets/src/mage/cards/b/BrinkOfMadness.java +++ b/Mage.Sets/src/mage/cards/b/BrinkOfMadness.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; @@ -63,7 +63,7 @@ public class BrinkOfMadness extends CardImpl { TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new SacrificeSourceEffect(), TargetController.YOU, false); ability.addEffect(new BrinkOfMadnessEffect()); ability.addTarget(new TargetOpponent()); - CardsInHandCondition contition = new CardsInHandCondition(CountType.EQUAL_TO, 0); + CardsInHandCondition contition = new CardsInHandCondition(ComparisonType.EQUAL_TO, 0); this.addAbility(new ConditionalTriggeredAbility(ability, contition, "At the beginning of your upkeep, if you have no cards in hand, sacrifice {this} and target opponent discards his or her hand.")); } diff --git a/Mage.Sets/src/mage/cards/b/BygoneBishop.java b/Mage.Sets/src/mage/cards/b/BygoneBishop.java index 9ed5d5b8221..269c66c3e2c 100644 --- a/Mage.Sets/src/mage/cards/b/BygoneBishop.java +++ b/Mage.Sets/src/mage/cards/b/BygoneBishop.java @@ -28,7 +28,7 @@ package mage.cards.b; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.keyword.InvestigateEffect; import mage.abilities.keyword.FlyingAbility; @@ -51,7 +51,7 @@ public class BygoneBishop extends CardImpl { static { filterSpell.add(new CardTypePredicate(CardType.CREATURE)); - filterSpell.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public BygoneBishop(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CanopyVista.java b/Mage.Sets/src/mage/cards/c/CanopyVista.java index 50754aec89b..735205468fe 100644 --- a/Mage.Sets/src/mage/cards/c/CanopyVista.java +++ b/Mage.Sets/src/mage/cards/c/CanopyVista.java @@ -27,7 +27,7 @@ */ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -62,7 +62,7 @@ public class CanopyVista extends CardImpl { this.subtype.add("Plains"); // Canopy Vista enters the battlefield tapped unless you control two or more basic lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); String abilityText = "tapped unless you control two or more basic lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new GreenManaAbility()); diff --git a/Mage.Sets/src/mage/cards/c/CateranBrute.java b/Mage.Sets/src/mage/cards/c/CateranBrute.java index 5fdb062f6f7..feba5fdb9b5 100644 --- a/Mage.Sets/src/mage/cards/c/CateranBrute.java +++ b/Mage.Sets/src/mage/cards/c/CateranBrute.java @@ -30,7 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class CateranBrute extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public CateranBrute(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranEnforcer.java b/Mage.Sets/src/mage/cards/c/CateranEnforcer.java index e2ad4bc24c6..486c294c45b 100644 --- a/Mage.Sets/src/mage/cards/c/CateranEnforcer.java +++ b/Mage.Sets/src/mage/cards/c/CateranEnforcer.java @@ -30,7 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -57,7 +57,7 @@ public class CateranEnforcer extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public CateranEnforcer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranKidnappers.java b/Mage.Sets/src/mage/cards/c/CateranKidnappers.java index 10179cfc58b..ba7d15e9a0a 100644 --- a/Mage.Sets/src/mage/cards/c/CateranKidnappers.java +++ b/Mage.Sets/src/mage/cards/c/CateranKidnappers.java @@ -30,7 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -55,7 +55,7 @@ public class CateranKidnappers extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public CateranKidnappers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranOverlord.java b/Mage.Sets/src/mage/cards/c/CateranOverlord.java index c3a382e629b..75a81adfbcc 100644 --- a/Mage.Sets/src/mage/cards/c/CateranOverlord.java +++ b/Mage.Sets/src/mage/cards/c/CateranOverlord.java @@ -30,7 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.costs.common.TapSourceCost; @@ -59,7 +59,7 @@ public class CateranOverlord extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 7)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 7)); } public CateranOverlord(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranPersuader.java b/Mage.Sets/src/mage/cards/c/CateranPersuader.java index 5ea39c484c8..2c5b03af298 100644 --- a/Mage.Sets/src/mage/cards/c/CateranPersuader.java +++ b/Mage.Sets/src/mage/cards/c/CateranPersuader.java @@ -30,7 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class CateranPersuader extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public CateranPersuader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CateranSlaver.java b/Mage.Sets/src/mage/cards/c/CateranSlaver.java index e66a95194fd..8457a86e0c6 100644 --- a/Mage.Sets/src/mage/cards/c/CateranSlaver.java +++ b/Mage.Sets/src/mage/cards/c/CateranSlaver.java @@ -30,7 +30,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -57,7 +57,7 @@ public class CateranSlaver extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 6)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 6)); } public CateranSlaver(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CelestialKirin.java b/Mage.Sets/src/mage/cards/c/CelestialKirin.java index 6da8b2446e7..bf9f3e3a3e0 100644 --- a/Mage.Sets/src/mage/cards/c/CelestialKirin.java +++ b/Mage.Sets/src/mage/cards/c/CelestialKirin.java @@ -29,7 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.DestroyAllEffect; @@ -101,7 +101,7 @@ class CelestialKirinEffect extends OneShotEffect { if (spell != null) { int cmc = spell.getConvertedManaCost(); FilterPermanent filter = new FilterPermanent(); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); return new DestroyAllEffect(filter).apply(game, source); } return false; diff --git a/Mage.Sets/src/mage/cards/c/ChampionsDrake.java b/Mage.Sets/src/mage/cards/c/ChampionsDrake.java index 47e60b3a825..816bed6d212 100644 --- a/Mage.Sets/src/mage/cards/c/ChampionsDrake.java +++ b/Mage.Sets/src/mage/cards/c/ChampionsDrake.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentHasCounterCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -64,7 +64,7 @@ public class ChampionsDrake extends CardImpl { this.addAbility(FlyingAbility.getInstance()); // Champion's Drake gets +3/+3 as long as you control a creature with three or more level counters on it. - ConditionalContinuousEffect effect = new ConditionalContinuousEffect(new BoostSourceEffect(3, 3, Duration.WhileOnBattlefield), new PermanentHasCounterCondition(CounterType.LEVEL, 2, new FilterControlledCreaturePermanent(), CountType.MORE_THAN), rule); + ConditionalContinuousEffect effect = new ConditionalContinuousEffect(new BoostSourceEffect(3, 3, Duration.WhileOnBattlefield), new PermanentHasCounterCondition(CounterType.LEVEL, 2, new FilterControlledCreaturePermanent(), ComparisonType.MORE_THAN), rule); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/c/ChroniclerOfHeroes.java b/Mage.Sets/src/mage/cards/c/ChroniclerOfHeroes.java index b522b64ba24..b657840bbc6 100644 --- a/Mage.Sets/src/mage/cards/c/ChroniclerOfHeroes.java +++ b/Mage.Sets/src/mage/cards/c/ChroniclerOfHeroes.java @@ -29,7 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.effects.OneShotEffect; @@ -101,7 +101,7 @@ class ChroniclerOfHeroesEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { - if (new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0).apply(game, source)) { + if (new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0).apply(game, source)) { controller.drawCards(1, game); } return true; diff --git a/Mage.Sets/src/mage/cards/c/CinderGlade.java b/Mage.Sets/src/mage/cards/c/CinderGlade.java index 067db035aac..05d7677aa85 100644 --- a/Mage.Sets/src/mage/cards/c/CinderGlade.java +++ b/Mage.Sets/src/mage/cards/c/CinderGlade.java @@ -27,7 +27,7 @@ */ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -63,7 +63,7 @@ public class CinderGlade extends CardImpl { this.subtype.add("Forest"); // Cinder Glade enters the battlefield tapped unless you control two or more basic lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); String abilityText = "tapped unless you control two or more basic lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new RedManaAbility()); diff --git a/Mage.Sets/src/mage/cards/c/CitanulFlute.java b/Mage.Sets/src/mage/cards/c/CitanulFlute.java index 9a59b7e2c4d..92bdbe60a8e 100644 --- a/Mage.Sets/src/mage/cards/c/CitanulFlute.java +++ b/Mage.Sets/src/mage/cards/c/CitanulFlute.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -98,7 +98,7 @@ class CitanulFluteSearchEffect extends OneShotEffect { FilterCard filter = new FilterCard("creature card with converted mana cost X or less"); filter.add(new CardTypePredicate(CardType.CREATURE)); //Set the mana cost one higher to 'emulate' a less than or equal to comparison. - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (player.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/c/ClifftopRetreat.java b/Mage.Sets/src/mage/cards/c/ClifftopRetreat.java index 0528415e7cc..83ed18010bf 100644 --- a/Mage.Sets/src/mage/cards/c/ClifftopRetreat.java +++ b/Mage.Sets/src/mage/cards/c/ClifftopRetreat.java @@ -28,7 +28,7 @@ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -60,7 +60,7 @@ public class ClifftopRetreat extends CardImpl { public ClifftopRetreat(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Mountain or a Plains"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new RedManaAbility()); diff --git a/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java b/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java index be227c5269b..4d6fac944eb 100644 --- a/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java +++ b/Mage.Sets/src/mage/cards/c/ColfenorsUrn.java @@ -29,7 +29,7 @@ package mage.cards.c; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.condition.Condition; @@ -60,7 +60,7 @@ public class ColfenorsUrn extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); } public ColfenorsUrn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CollectedCompany.java b/Mage.Sets/src/mage/cards/c/CollectedCompany.java index a57e526fa60..219a992b0e9 100644 --- a/Mage.Sets/src/mage/cards/c/CollectedCompany.java +++ b/Mage.Sets/src/mage/cards/c/CollectedCompany.java @@ -27,7 +27,7 @@ */ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.LookLibraryAndPickControllerEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -49,7 +49,7 @@ public class CollectedCompany extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public CollectedCompany(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CollectiveEffort.java b/Mage.Sets/src/mage/cards/c/CollectiveEffort.java index b096ebb38f9..38efbd27faf 100644 --- a/Mage.Sets/src/mage/cards/c/CollectiveEffort.java +++ b/Mage.Sets/src/mage/cards/c/CollectiveEffort.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.costs.Cost; import mage.abilities.costs.common.TapTargetCost; @@ -71,7 +71,7 @@ public class CollectiveEffort extends CardImpl { static { filterUntapped.add(Predicates.not(new TappedPredicate())); - filterDestroyCreature.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filterDestroyCreature.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public CollectiveEffort(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CompanionOfTheTrials.java b/Mage.Sets/src/mage/cards/c/CompanionOfTheTrials.java index 2eb8443dbf9..34827a65a54 100644 --- a/Mage.Sets/src/mage/cards/c/CompanionOfTheTrials.java +++ b/Mage.Sets/src/mage/cards/c/CompanionOfTheTrials.java @@ -30,7 +30,7 @@ package mage.cards.c; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.mana.ManaCostsImpl; @@ -70,7 +70,7 @@ public class CompanionOfTheTrials extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new ManaCostsImpl("{1}{W}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/c/CompleteDisregard.java b/Mage.Sets/src/mage/cards/c/CompleteDisregard.java index ed90b7f7bd6..cdcde803547 100644 --- a/Mage.Sets/src/mage/cards/c/CompleteDisregard.java +++ b/Mage.Sets/src/mage/cards/c/CompleteDisregard.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.ExileTargetEffect; import mage.abilities.keyword.DevoidAbility; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class CompleteDisregard extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public CompleteDisregard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/ConcealedCourtyard.java b/Mage.Sets/src/mage/cards/c/ConcealedCourtyard.java index a0e2e4a65b5..5a43f451a4c 100644 --- a/Mage.Sets/src/mage/cards/c/ConcealedCourtyard.java +++ b/Mage.Sets/src/mage/cards/c/ConcealedCourtyard.java @@ -27,7 +27,7 @@ */ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -53,7 +53,7 @@ public class ConcealedCourtyard extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // Concealed Courtyard enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java b/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java index a7f375cd502..a74e1bb0768 100644 --- a/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java +++ b/Mage.Sets/src/mage/cards/c/ConduitOfRuin.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CastSourceTriggeredAbility; @@ -66,7 +66,7 @@ public class ConduitOfRuin extends CardImpl { static { filter.add(new ColorlessPredicate()); - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 6)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 6)); filterCost.add(new FirstCastCreatureSpellPredicate()); } diff --git a/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java b/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java index b852ff26fba..8efa76d4ef8 100644 --- a/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java +++ b/Mage.Sets/src/mage/cards/c/ConsumeTheMeek.java @@ -27,7 +27,7 @@ */ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -46,7 +46,7 @@ public class ConsumeTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public ConsumeTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CopperlineGorge.java b/Mage.Sets/src/mage/cards/c/CopperlineGorge.java index 2f6bac02761..e8009154d02 100644 --- a/Mage.Sets/src/mage/cards/c/CopperlineGorge.java +++ b/Mage.Sets/src/mage/cards/c/CopperlineGorge.java @@ -27,7 +27,7 @@ */ package mage.cards.c; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -55,7 +55,7 @@ public class CopperlineGorge extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); // Copperline Gorge enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control two or fewer other lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new RedManaAbility()); diff --git a/Mage.Sets/src/mage/cards/c/CovetousDragon.java b/Mage.Sets/src/mage/cards/c/CovetousDragon.java index e6bbd144151..0b6b5ed1ffa 100644 --- a/Mage.Sets/src/mage/cards/c/CovetousDragon.java +++ b/Mage.Sets/src/mage/cards/c/CovetousDragon.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.keyword.FlyingAbility; @@ -56,7 +56,7 @@ public class CovetousDragon extends CardImpl { // When you control no artifacts, sacrifice Covetous Dragon. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterArtifactPermanent("no artifacts"), CountType.EQUAL_TO, 0, + new FilterArtifactPermanent("no artifacts"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/c/CrabappleCohort.java b/Mage.Sets/src/mage/cards/c/CrabappleCohort.java index ff28c86aab8..fd78d7b584e 100644 --- a/Mage.Sets/src/mage/cards/c/CrabappleCohort.java +++ b/Mage.Sets/src/mage/cards/c/CrabappleCohort.java @@ -29,7 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -72,7 +72,7 @@ public class CrabappleCohort extends CardImpl { this.toughness = new MageInt(4); // Crabapple Cohort gets +1/+1 as long as you control another green creature. - Condition condition = new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0); + Condition condition = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0); Effect effect = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), condition, rule); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/c/Crackdown.java b/Mage.Sets/src/mage/cards/c/Crackdown.java index eda4fd77f74..aab0a2efa5f 100644 --- a/Mage.Sets/src/mage/cards/c/Crackdown.java +++ b/Mage.Sets/src/mage/cards/c/Crackdown.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -54,7 +54,7 @@ public class Crackdown extends CardImpl { static { filter.add(Predicates.not(new ColorPredicate(ObjectColor.WHITE))); - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public Crackdown(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CracklingDoom.java b/Mage.Sets/src/mage/cards/c/CracklingDoom.java index 28668420645..a00a12f6dc6 100644 --- a/Mage.Sets/src/mage/cards/c/CracklingDoom.java +++ b/Mage.Sets/src/mage/cards/c/CracklingDoom.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.DamagePlayersEffect; import mage.cards.CardImpl; @@ -117,7 +117,7 @@ class CracklingDoomEffect extends OneShotEffect { } } else if (greatestPower != Integer.MIN_VALUE) { FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature to sacrifice with power equal to " + greatestPower); - filter.add(new PowerPredicate(CountType.EQUAL_TO, greatestPower)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, greatestPower)); Target target = new TargetControlledCreaturePermanent(filter); if (opponent.choose(outcome, target, playerId, game)) { Permanent permanent = game.getPermanent(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/c/CraftyPathmage.java b/Mage.Sets/src/mage/cards/c/CraftyPathmage.java index 9c1019b177b..617a1811c15 100644 --- a/Mage.Sets/src/mage/cards/c/CraftyPathmage.java +++ b/Mage.Sets/src/mage/cards/c/CraftyPathmage.java @@ -29,7 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; @@ -52,7 +52,7 @@ public class CraftyPathmage extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public CraftyPathmage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/c/CryptChampion.java b/Mage.Sets/src/mage/cards/c/CryptChampion.java index 19520144c40..b5bdb2ddbbc 100644 --- a/Mage.Sets/src/mage/cards/c/CryptChampion.java +++ b/Mage.Sets/src/mage/cards/c/CryptChampion.java @@ -29,7 +29,7 @@ package mage.cards.c; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.ManaWasSpentCondition; import mage.abilities.effects.OneShotEffect; @@ -112,7 +112,7 @@ class CryptChampionEffect extends OneShotEffect { if (player != null) { FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); filter.add(new OwnerIdPredicate(playerId)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); Target target = new TargetCardInGraveyard(filter); if (target.canChoose(playerId, game) && player.chooseTarget(outcome, target, source, game)) { Card card = game.getCard(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/c/CullingScales.java b/Mage.Sets/src/mage/cards/c/CullingScales.java index 6d562f3d703..2f556931057 100644 --- a/Mage.Sets/src/mage/cards/c/CullingScales.java +++ b/Mage.Sets/src/mage/cards/c/CullingScales.java @@ -28,7 +28,7 @@ package mage.cards.c; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; @@ -83,7 +83,7 @@ class HasLowestCMCAmongstNonlandPermanentsPredicate implements Predicate cardsToHand = new HashSet<>(); for (Permanent permanent : game.getBattlefield().getActivePermanents(creatureFilter, source.getControllerId(), source.getSourceId(), game)) { cardsToHand.add(permanent); diff --git a/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java b/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java index ddb664b0456..0012fc759c8 100644 --- a/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java +++ b/Mage.Sets/src/mage/cards/e/EnthrallingVictor.java @@ -29,7 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.UntapTargetEffect; @@ -58,7 +58,7 @@ public class EnthrallingVictor extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature an opponent controls with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/e/EpharasWarden.java b/Mage.Sets/src/mage/cards/e/EpharasWarden.java index 49d5f7afdaf..fac914a3907 100644 --- a/Mage.Sets/src/mage/cards/e/EpharasWarden.java +++ b/Mage.Sets/src/mage/cards/e/EpharasWarden.java @@ -29,7 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -52,7 +52,7 @@ public class EpharasWarden extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public EpharasWarden(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/EpicExperiment.java b/Mage.Sets/src/mage/cards/e/EpicExperiment.java index 158ab220dfc..8abf7274fca 100644 --- a/Mage.Sets/src/mage/cards/e/EpicExperiment.java +++ b/Mage.Sets/src/mage/cards/e/EpicExperiment.java @@ -29,7 +29,7 @@ package mage.cards.e; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; @@ -91,7 +91,7 @@ class EpicExperimentEffect extends OneShotEffect { // cast the possible cards without paying the mana ExileZone epicExperimentExileZone = game.getExile().getExileZone(source.getSourceId()); FilterCard filter = new FilterInstantOrSorceryCard(); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); filter.setMessage("instant and sorcery cards with converted mana cost " + source.getManaCostsToPay().getX() + " or less"); Cards cardsToCast = new CardsImpl(); if (epicExperimentExileZone == null) { diff --git a/Mage.Sets/src/mage/cards/e/EpicStruggle.java b/Mage.Sets/src/mage/cards/e/EpicStruggle.java index 625e8faea0e..1d8ad26f5b9 100644 --- a/Mage.Sets/src/mage/cards/e/EpicStruggle.java +++ b/Mage.Sets/src/mage/cards/e/EpicStruggle.java @@ -27,7 +27,7 @@ */ package mage.cards.e; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -54,7 +54,7 @@ public class EpicStruggle extends CardImpl { // At the beginning of your upkeep, if you control twenty or more creatures, you win the game. this.addAbility(new ConditionalTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(new WinGameSourceControllerEffect(), TargetController.YOU, false), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 19), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 19), "At the beginning of your upkeep, if you control twenty or more creatures, you win the game.")); } diff --git a/Mage.Sets/src/mage/cards/e/ErebossTitan.java b/Mage.Sets/src/mage/cards/e/ErebossTitan.java index 1d052dd4710..d92d6976006 100644 --- a/Mage.Sets/src/mage/cards/e/ErebossTitan.java +++ b/Mage.Sets/src/mage/cards/e/ErebossTitan.java @@ -28,7 +28,7 @@ package mage.cards.e; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -75,7 +75,7 @@ public class ErebossTitan extends CardImpl { // Erebos's Titan has indestructible as long as no opponent controls a creature. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new GainAbilitySourceEffect(IndestructibleAbility.getInstance(), Duration.WhileOnBattlefield), - new PermanentsOnTheBattlefieldCondition(filter, CountType.EQUAL_TO, 0, false), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.EQUAL_TO, 0, false), "As long as your opponents control no creatures, {this} has indestructible"))); // Whenever a creature leaves an opponent's graveyard, you may discard a card. If you do, return Erebos's Titan from your graveyard to your hand. diff --git a/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java b/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java index 6bc571328c3..7414a00ec6d 100644 --- a/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java +++ b/Mage.Sets/src/mage/cards/e/ErrantDoomsayers.java @@ -29,7 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -52,7 +52,7 @@ public class ErrantDoomsayers extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 2 or less"); static { - filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, 3)); } public ErrantDoomsayers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/Evershrike.java b/Mage.Sets/src/mage/cards/e/Evershrike.java index 9e36d56a123..37db61cb5fc 100644 --- a/Mage.Sets/src/mage/cards/e/Evershrike.java +++ b/Mage.Sets/src/mage/cards/e/Evershrike.java @@ -29,7 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -118,7 +118,7 @@ class EvershrikeEffect extends OneShotEffect { filterAuraCard.add(new CardTypePredicate(CardType.ENCHANTMENT)); filterAuraCard.add(new SubtypePredicate("Aura")); filterAuraCard.add(new AuraCardCanAttachToPermanentId(evershrikePermanent.getId())); - filterAuraCard.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xAmount)); + filterAuraCard.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xAmount)); int count = controller.getHand().count(filterAuraCard, game); while (controller.canRespond() && count > 0 && controller.chooseUse(Outcome.Benefit, "Do you wish to put an Aura card from your hand onto Evershrike", source, game)) { TargetCard targetAura = new TargetCard(Zone.HAND, filterAuraCard); diff --git a/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java b/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java index 7de5df7d2e6..45199bf1370 100644 --- a/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java +++ b/Mage.Sets/src/mage/cards/e/ExileIntoDarkness.java @@ -28,7 +28,7 @@ package mage.cards.e; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.MoreCardsInHandThanOpponentsCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -54,7 +54,7 @@ public class ExileIntoDarkness extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public ExileIntoDarkness(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java b/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java index 516a6ba3e09..98fa02c1599 100644 --- a/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java +++ b/Mage.Sets/src/mage/cards/e/ExuberantFirestoker.java @@ -28,7 +28,7 @@ package mage.cards.e; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.DamageTargetEffect; import mage.abilities.mana.ColorlessManaAbility; @@ -80,7 +80,7 @@ class ExuberantFirestokerTriggeredAbility extends TriggeredAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public ExuberantFirestokerTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java b/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java index 9be0ad354df..36839e59629 100644 --- a/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java +++ b/Mage.Sets/src/mage/cards/e/EzuriClawOfProgress.java @@ -29,7 +29,7 @@ package mage.cards.e; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -58,7 +58,7 @@ public class EzuriClawOfProgress extends CardImpl { final private static FilterControlledCreaturePermanent filter2 = new FilterControlledCreaturePermanent(); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); filter2.add(new AnotherPredicate()); } diff --git a/Mage.Sets/src/mage/cards/f/FaerieMiscreant.java b/Mage.Sets/src/mage/cards/f/FaerieMiscreant.java index aa3e9a37e0a..035b51291cd 100644 --- a/Mage.Sets/src/mage/cards/f/FaerieMiscreant.java +++ b/Mage.Sets/src/mage/cards/f/FaerieMiscreant.java @@ -29,7 +29,7 @@ package mage.cards.f; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -73,7 +73,7 @@ public class FaerieMiscreant extends CardImpl { // When Faerie Miscreant enters the battlefield, if you control another creature named Faerie Miscreant, draw a card. Ability ability = new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1), false), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0), "When Faerie Miscreant enters the battlefield, if you control another creature named Faerie Miscreant, draw a card"); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java b/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java index 49238b2e23b..254a318a074 100644 --- a/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java +++ b/Mage.Sets/src/mage/cards/f/FavorOfTheMighty.java @@ -29,7 +29,7 @@ package mage.cards.f; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.ContinuousEffectImpl; import mage.abilities.keyword.ProtectionAbility; @@ -108,7 +108,7 @@ class FavorOfTheMightyEffect extends ContinuousEffectImpl { } } FilterPermanent filterMaxCMC = new FilterCreaturePermanent(); - filterMaxCMC.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, maxCMC)); + filterMaxCMC.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, maxCMC)); for (Permanent permanent : game.getBattlefield().getActivePermanents(filterMaxCMC, source.getControllerId(), game)) { if (permanent != null) { permanent.addAbility(new ProtectionAbility(filter), source.getSourceId(), game); diff --git a/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java b/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java index f5d93ccb0d1..c24504a8618 100644 --- a/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java +++ b/Mage.Sets/src/mage/cards/f/FerocityOfTheUnderworld.java @@ -27,7 +27,7 @@ */ package mage.cards.f; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.CopyTargetSpellEffect; import mage.abilities.effects.common.DestroyTargetEffect; @@ -56,7 +56,7 @@ public class FerocityOfTheUnderworld extends CardImpl { private static final FilterSpell filterMode2 = new FilterSpell("instant or sorcery spell"); static { - filterMode1.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filterMode1.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); filterMode2.add(Predicates.or(new CardTypePredicate(CardType.INSTANT), new CardTypePredicate(CardType.SORCERY))); } diff --git a/Mage.Sets/src/mage/cards/f/FierceEmpath.java b/Mage.Sets/src/mage/cards/f/FierceEmpath.java index 7b63074ae2b..3465547d763 100644 --- a/Mage.Sets/src/mage/cards/f/FierceEmpath.java +++ b/Mage.Sets/src/mage/cards/f/FierceEmpath.java @@ -28,7 +28,7 @@ package mage.cards.f; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class FierceEmpath extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with converted mana cost 6 or greater"); static { - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } public FierceEmpath(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); diff --git a/Mage.Sets/src/mage/cards/f/FiremindsForesight.java b/Mage.Sets/src/mage/cards/f/FiremindsForesight.java index 7b7cc5a08a4..96fa659953e 100644 --- a/Mage.Sets/src/mage/cards/f/FiremindsForesight.java +++ b/Mage.Sets/src/mage/cards/f/FiremindsForesight.java @@ -28,7 +28,7 @@ package mage.cards.f; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; @@ -100,7 +100,7 @@ class FiremindsForesightSearchEffect extends OneShotEffect { for (int cmc=3; cmc > 0; cmc--) { FilterCard filter = new FilterCard("instant card with converted mana cost " + cmc); filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); cardsCount = cardsInLibrary.count(filter, game); diff --git a/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java b/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java index c323262c0ad..d2d91541180 100644 --- a/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java +++ b/Mage.Sets/src/mage/cards/f/FleetFootedMonk.java @@ -28,7 +28,7 @@ package mage.cards.f; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class FleetFootedMonk extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public FleetFootedMonk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java b/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java index 8acdc40faf4..a031d92fb33 100644 --- a/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java +++ b/Mage.Sets/src/mage/cards/f/FleshpulperGiant.java @@ -29,7 +29,7 @@ package mage.cards.f; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class FleshpulperGiant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughess 2 or less"); static { - filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, 3)); } public FleshpulperGiant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/f/Fleshwrither.java b/Mage.Sets/src/mage/cards/f/Fleshwrither.java index 06a5ac1b033..f37df33a279 100644 --- a/Mage.Sets/src/mage/cards/f/Fleshwrither.java +++ b/Mage.Sets/src/mage/cards/f/Fleshwrither.java @@ -30,7 +30,7 @@ package mage.cards.f; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -98,7 +98,7 @@ class FleshwritherEffect extends OneShotEffect { MageObject sourceObject = game.getObject(source.getSourceId()); if (sourceObject != null && controller != null) { FilterCreatureCard filter = new FilterCreatureCard("creature with converted mana cost " + sourceObject.getConvertedManaCost()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, sourceObject.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, sourceObject.getConvertedManaCost())); TargetCardInLibrary target = new TargetCardInLibrary(1, filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage.Sets/src/mage/cards/f/Fragmentize.java b/Mage.Sets/src/mage/cards/f/Fragmentize.java index 9f6c147e53a..5c22ec3614f 100644 --- a/Mage.Sets/src/mage/cards/f/Fragmentize.java +++ b/Mage.Sets/src/mage/cards/f/Fragmentize.java @@ -27,7 +27,7 @@ */ package mage.cards.f; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class Fragmentize extends CardImpl { private static final FilterArtifactOrEnchantmentPermanent filter = new FilterArtifactOrEnchantmentPermanent("artifact or enchantment with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public Fragmentize(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GarruksPackleader.java b/Mage.Sets/src/mage/cards/g/GarruksPackleader.java index 297c2f61cd7..b96ff7d4836 100644 --- a/Mage.Sets/src/mage/cards/g/GarruksPackleader.java +++ b/Mage.Sets/src/mage/cards/g/GarruksPackleader.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; @@ -52,7 +52,7 @@ public class GarruksPackleader extends CardImpl { private static final FilterPermanent filter = new FilterControlledCreaturePermanent("another creature with power 3 or greater"); static { filter.add(new AnotherPredicate()); - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public GarruksPackleader(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GateSmasher.java b/Mage.Sets/src/mage/cards/g/GateSmasher.java index 68f587c722c..b7bca328b8e 100644 --- a/Mage.Sets/src/mage/cards/g/GateSmasher.java +++ b/Mage.Sets/src/mage/cards/g/GateSmasher.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.AttachableToRestrictedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -59,7 +59,7 @@ public class GateSmasher extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature with 3 or more power"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); } public GateSmasher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GazeOfGranite.java b/Mage.Sets/src/mage/cards/g/GazeOfGranite.java index 2c1cc62d97d..0a2dbc5ad24 100644 --- a/Mage.Sets/src/mage/cards/g/GazeOfGranite.java +++ b/Mage.Sets/src/mage/cards/g/GazeOfGranite.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -49,7 +49,7 @@ public class GazeOfGranite extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("each nonland permanent with converted mana cost X or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public GazeOfGranite(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GenesisHydra.java b/Mage.Sets/src/mage/cards/g/GenesisHydra.java index d2bd7396ee8..028d47da732 100644 --- a/Mage.Sets/src/mage/cards/g/GenesisHydra.java +++ b/Mage.Sets/src/mage/cards/g/GenesisHydra.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -119,7 +119,7 @@ class GenesisHydraPutOntoBattlefieldEffect extends OneShotEffect { FilterCard filter = new FilterPermanentCard("a nonland permanent card with converted mana cost " + count + " or less to put onto the battlefield"); filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, count + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, count + 1)); TargetCard target1 = new TargetCard(Zone.LIBRARY, filter); target1.setRequired(false); if (cards.count(filter, controller.getId(), source.getSourceId(), game) > 0) { diff --git a/Mage.Sets/src/mage/cards/g/GenesisWave.java b/Mage.Sets/src/mage/cards/g/GenesisWave.java index 7912b1f5f65..9ce78884637 100644 --- a/Mage.Sets/src/mage/cards/g/GenesisWave.java +++ b/Mage.Sets/src/mage/cards/g/GenesisWave.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; @@ -101,7 +101,7 @@ class GenesisWaveEffect extends OneShotEffect { if (!cards.isEmpty()) { controller.revealCards(sourceObject.getIdName(), cards, game); FilterCard filter = new FilterCard("cards with converted mana cost " + xValue + " or less to put onto the battlefield"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue + 1)); filter.add( Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), diff --git a/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java b/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java index af7b93c1f09..bf7c05163b4 100644 --- a/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java +++ b/Mage.Sets/src/mage/cards/g/GethLordOfTheVault.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; @@ -86,7 +86,7 @@ public class GethLordOfTheVault extends CardImpl { filter.add(Predicates.or( new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE))); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); Target target = new TargetCardInOpponentsGraveyard(filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/g/GhirapurGuide.java b/Mage.Sets/src/mage/cards/g/GhirapurGuide.java index 420a7a37f6f..236250cdedc 100644 --- a/Mage.Sets/src/mage/cards/g/GhirapurGuide.java +++ b/Mage.Sets/src/mage/cards/g/GhirapurGuide.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.combat.CantBeBlockedByAllTargetEffect; @@ -53,7 +53,7 @@ public class GhirapurGuide extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public GhirapurGuide(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GhirapurOrrery.java b/Mage.Sets/src/mage/cards/g/GhirapurOrrery.java index 0ebcfada162..587403829be 100644 --- a/Mage.Sets/src/mage/cards/g/GhirapurOrrery.java +++ b/Mage.Sets/src/mage/cards/g/GhirapurOrrery.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.IntCompareCondition; @@ -77,7 +77,7 @@ public class GhirapurOrrery extends CardImpl { class GhirapurOrreryCondition extends IntCompareCondition { GhirapurOrreryCondition() { - super(CountType.EQUAL_TO, 0); + super(ComparisonType.EQUAL_TO, 0); } @Override diff --git a/Mage.Sets/src/mage/cards/g/GlacialFortress.java b/Mage.Sets/src/mage/cards/g/GlacialFortress.java index 129b7d9ee3d..b37642ca6bb 100644 --- a/Mage.Sets/src/mage/cards/g/GlacialFortress.java +++ b/Mage.Sets/src/mage/cards/g/GlacialFortress.java @@ -28,7 +28,7 @@ package mage.cards.g; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -61,7 +61,7 @@ public class GlacialFortress extends CardImpl { public GlacialFortress(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Plains or an Island"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new BlueManaAbility()); diff --git a/Mage.Sets/src/mage/cards/g/Glimmervoid.java b/Mage.Sets/src/mage/cards/g/Glimmervoid.java index 77a33903152..68807d768ee 100644 --- a/Mage.Sets/src/mage/cards/g/Glimmervoid.java +++ b/Mage.Sets/src/mage/cards/g/Glimmervoid.java @@ -27,7 +27,7 @@ */ package mage.cards.g; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.OnEventTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -53,7 +53,7 @@ public class Glimmervoid extends CardImpl { // At the beginning of the end step, if you control no artifacts, sacrifice Glimmervoid. TriggeredAbility triggered = new OnEventTriggeredAbility(GameEvent.EventType.END_TURN_STEP_PRE, "beginning of the end step", true, new SacrificeSourceEffect()); - this.addAbility(new ConditionalTriggeredAbility(triggered, new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), CountType.FEWER_THAN, 1), + this.addAbility(new ConditionalTriggeredAbility(triggered, new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), ComparisonType.FEWER_THAN, 1), "At the beginning of the end step, if you control no artifacts, sacrifice {this}.")); // {tap}: Add one mana of any color to your mana pool. this.addAbility(new AnyColorManaAbility()); diff --git a/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java b/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java index 5c27f0af7d9..0396414faf2 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java +++ b/Mage.Sets/src/mage/cards/g/GoblinDarkDwellers.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -62,7 +62,7 @@ public class GoblinDarkDwellers extends CardImpl { private static final FilterInstantOrSorceryCard filter = new FilterInstantOrSorceryCard("instant or sorcery card with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public GoblinDarkDwellers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinKites.java b/Mage.Sets/src/mage/cards/g/GoblinKites.java index f20a827a88f..a2df287e58c 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinKites.java +++ b/Mage.Sets/src/mage/cards/g/GoblinKites.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -58,7 +58,7 @@ public class GoblinKites extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("controlled creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/g/GoblinMutant.java b/Mage.Sets/src/mage/cards/g/GoblinMutant.java index 5890cd64c93..3177df3a463 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinMutant.java +++ b/Mage.Sets/src/mage/cards/g/GoblinMutant.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantAttackIfDefenderControlsPermanent; @@ -56,8 +56,8 @@ public class GoblinMutant extends CardImpl { static final private FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(Predicates.and(new PowerPredicate(CountType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); - filter2.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(Predicates.and(new PowerPredicate(ComparisonType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); + filter2.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public GoblinMutant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinTunneler.java b/Mage.Sets/src/mage/cards/g/GoblinTunneler.java index 6c7cc64198f..2c71e47c1f6 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinTunneler.java +++ b/Mage.Sets/src/mage/cards/g/GoblinTunneler.java @@ -30,7 +30,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; @@ -53,7 +53,7 @@ public class GoblinTunneler extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public GoblinTunneler(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java b/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java index 355a66e54f8..7bb36b7d651 100644 --- a/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java +++ b/Mage.Sets/src/mage/cards/g/GoblinsOfTheFlarg.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.keyword.MountainwalkAbility; @@ -63,7 +63,7 @@ public class GoblinsOfTheFlarg extends CardImpl { // When you control a Dwarf, sacrifice Goblins of the Flarg. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - filter, CountType.MORE_THAN, 0, + filter, ComparisonType.MORE_THAN, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/g/Godtoucher.java b/Mage.Sets/src/mage/cards/g/Godtoucher.java index a7fa90281b1..77a9f841ed2 100644 --- a/Mage.Sets/src/mage/cards/g/Godtoucher.java +++ b/Mage.Sets/src/mage/cards/g/Godtoucher.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -56,7 +56,7 @@ public class Godtoucher extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public Godtoucher(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java b/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java index bdd0821302d..58c65535a3e 100644 --- a/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java +++ b/Mage.Sets/src/mage/cards/g/GodtrackerOfJund.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.common.counter.AddCountersSourceEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class GodtrackerOfJund extends CardImpl { final private static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent(); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } String rule = "Whenever a creature with power 5 or greater enters the battlefield under your control, you may put a +1/+1 counter on {this}."; diff --git a/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java b/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java index 0b6f99942c8..30a7e2afc7a 100644 --- a/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java +++ b/Mage.Sets/src/mage/cards/g/GoldmeadowDodger.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class GoldmeadowDodger extends CardImpl { private static final FilterCreaturePermanent FILTER = new FilterCreaturePermanent("creatures with power 4 or greater"); static { - FILTER.add(new PowerPredicate(CountType.MORE_THAN, 3)); + FILTER.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public GoldmeadowDodger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GorillaPack.java b/Mage.Sets/src/mage/cards/g/GorillaPack.java index 0ee340e08d7..338b286a0bc 100644 --- a/Mage.Sets/src/mage/cards/g/GorillaPack.java +++ b/Mage.Sets/src/mage/cards/g/GorillaPack.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -58,7 +58,7 @@ public class GorillaPack extends CardImpl { // When you control no Forests, sacrifice Gorilla Pack. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Forest", "no Forests"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Forest", "no Forests"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/g/GorillaShaman.java b/Mage.Sets/src/mage/cards/g/GorillaShaman.java index f17ab085c1b..40e02de8106 100644 --- a/Mage.Sets/src/mage/cards/g/GorillaShaman.java +++ b/Mage.Sets/src/mage/cards/g/GorillaShaman.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -75,7 +75,7 @@ public class GorillaShaman extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterArtifactPermanent filter = new FilterArtifactPermanent(new StringBuilder("noncreature artifact with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); Target target = new TargetPermanent(filter); ability.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/g/Granulate.java b/Mage.Sets/src/mage/cards/g/Granulate.java index b6dee8d7d23..5ccfe2706f5 100644 --- a/Mage.Sets/src/mage/cards/g/Granulate.java +++ b/Mage.Sets/src/mage/cards/g/Granulate.java @@ -27,7 +27,7 @@ */ package mage.cards.g; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class Granulate extends CardImpl { private static final FilterNonlandPermanent filter = new FilterNonlandPermanent("nonland artifact with converted mana cost 4 or less"); static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public Granulate(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{R}{R}"); diff --git a/Mage.Sets/src/mage/cards/g/Grozoth.java b/Mage.Sets/src/mage/cards/g/Grozoth.java index fe92efc9644..bf65f45bb6d 100644 --- a/Mage.Sets/src/mage/cards/g/Grozoth.java +++ b/Mage.Sets/src/mage/cards/g/Grozoth.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -93,7 +93,7 @@ class GrozothEffect extends SearchEffect { private static final FilterCard filter = new FilterCard(); static { - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 9)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, 9)); } public GrozothEffect() { diff --git a/Mage.Sets/src/mage/cards/g/GustriderExuberant.java b/Mage.Sets/src/mage/cards/g/GustriderExuberant.java index 12af7c269c3..18aa54d6ce1 100644 --- a/Mage.Sets/src/mage/cards/g/GustriderExuberant.java +++ b/Mage.Sets/src/mage/cards/g/GustriderExuberant.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; @@ -52,7 +52,7 @@ public class GustriderExuberant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public GustriderExuberant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/g/GutwrencherOni.java b/Mage.Sets/src/mage/cards/g/GutwrencherOni.java index 0f9d0c1dd8e..6497775e97b 100644 --- a/Mage.Sets/src/mage/cards/g/GutwrencherOni.java +++ b/Mage.Sets/src/mage/cards/g/GutwrencherOni.java @@ -28,7 +28,7 @@ package mage.cards.g; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; @@ -70,7 +70,7 @@ public class GutwrencherOni extends CardImpl { // At the beginning of your upkeep, discard a card if you don't control an Ogre. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new ConditionalOneShotEffect( new DiscardControllerEffect(1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.EQUAL_TO, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.EQUAL_TO, 0), "discard a card if you don't control an Ogre"), TargetController.YOU, false)); } diff --git a/Mage.Sets/src/mage/cards/g/GwyllionHedgeMage.java b/Mage.Sets/src/mage/cards/g/GwyllionHedgeMage.java index 000e265bd58..f21a73b86c4 100644 --- a/Mage.Sets/src/mage/cards/g/GwyllionHedgeMage.java +++ b/Mage.Sets/src/mage/cards/g/GwyllionHedgeMage.java @@ -29,7 +29,7 @@ package mage.cards.g; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -73,13 +73,13 @@ public class GwyllionHedgeMage extends CardImpl { this.toughness = new MageInt(2); // When Gwyllion Hedge-Mage enters the battlefield, if you control two or more Plains, you may create a 1/1 white Kithkin Soldier creature token. - Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new KithkinToken()), true), new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), rule1); + Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new KithkinToken()), true), new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), rule1); this.addAbility(ability); // When Gwyllion Hedge-Mage enters the battlefield, if you control two or more Swamps, you may put a -1/-1 counter on target creature. Ability ability2 = new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new AddCountersTargetEffect(CounterType.M1M1.createInstance()), true), - new PermanentsOnTheBattlefieldCondition(filter2, CountType.MORE_THAN, 1), + new PermanentsOnTheBattlefieldCondition(filter2, ComparisonType.MORE_THAN, 1), rule2); ability2.addTarget(new TargetCreaturePermanent()); this.addAbility(ability2); diff --git a/Mage.Sets/src/mage/cards/h/HagHedgeMage.java b/Mage.Sets/src/mage/cards/h/HagHedgeMage.java index d93279bb809..e2f114d65dc 100644 --- a/Mage.Sets/src/mage/cards/h/HagHedgeMage.java +++ b/Mage.Sets/src/mage/cards/h/HagHedgeMage.java @@ -30,7 +30,7 @@ package mage.cards.h; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -71,12 +71,12 @@ public class HagHedgeMage extends CardImpl { this.toughness = new MageInt(2); // When Hag Hedge-Mage enters the battlefield, if you control two or more Swamps, you may have target player discard a card. - Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new DiscardTargetEffect(1), true), new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), rule); + Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new DiscardTargetEffect(1), true), new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), rule); ability.addTarget(new TargetPlayer()); this.addAbility(ability); // When Hag Hedge-Mage enters the battlefield, if you control two or more Forests, you may put target card from your graveyard on top of your library. - Ability ability2 = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new PutOnLibraryTargetEffect(true), true), new PermanentsOnTheBattlefieldCondition(filter2, CountType.MORE_THAN, 1), rule2); + Ability ability2 = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new PutOnLibraryTargetEffect(true), true), new PermanentsOnTheBattlefieldCondition(filter2, ComparisonType.MORE_THAN, 1), rule2); ability2.addTarget(new TargetCardInYourGraveyard()); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/h/HammerMage.java b/Mage.Sets/src/mage/cards/h/HammerMage.java index 880f5f40d83..206a18feb68 100644 --- a/Mage.Sets/src/mage/cards/h/HammerMage.java +++ b/Mage.Sets/src/mage/cards/h/HammerMage.java @@ -29,7 +29,7 @@ package mage.cards.h; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardCardCost; import mage.abilities.costs.common.TapSourceCost; @@ -96,7 +96,7 @@ class HammerMageEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { FilterArtifactPermanent filter = new FilterArtifactPermanent(); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); for(Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/h/HanweirMilitiaCaptain.java b/Mage.Sets/src/mage/cards/h/HanweirMilitiaCaptain.java index 81542b800a3..7c9de0f6cbf 100644 --- a/Mage.Sets/src/mage/cards/h/HanweirMilitiaCaptain.java +++ b/Mage.Sets/src/mage/cards/h/HanweirMilitiaCaptain.java @@ -29,7 +29,7 @@ package mage.cards.h; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -64,7 +64,7 @@ public class HanweirMilitiaCaptain extends CardImpl { this.addAbility(new TransformAbility()); this.addAbility(new ConditionalTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(new TransformSourceEffect(true), TargetController.YOU, false), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 3), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 3), "At the beginning of your upkeep, if you control four or more creatures, transform {this}")); } diff --git a/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java b/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java index fe19288821c..c545393995b 100644 --- a/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java +++ b/Mage.Sets/src/mage/cards/h/HauntedPlateMail.java @@ -30,7 +30,7 @@ package mage.cards.h; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.mana.ManaCostsImpl; @@ -64,7 +64,7 @@ public class HauntedPlateMail extends CardImpl { Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new HauntedPlateMailToken(),"", Duration.EndOfTurn), new ManaCostsImpl("{0}"), - new PermanentsOnTheBattlefieldCondition(new FilterCreaturePermanent(), CountType.EQUAL_TO, 0), + new PermanentsOnTheBattlefieldCondition(new FilterCreaturePermanent(), ComparisonType.EQUAL_TO, 0), "{0}: Until end of turn, Haunted Plate Mail becomes a 4/4 Spirit artifact creature that's no longer an Equipment. Activate this ability only if you control no creatures."); this.addAbility(ability); // Equip {4} diff --git a/Mage.Sets/src/mage/cards/h/HearthCharm.java b/Mage.Sets/src/mage/cards/h/HearthCharm.java index 5e120809dd2..55a817ca0a2 100644 --- a/Mage.Sets/src/mage/cards/h/HearthCharm.java +++ b/Mage.Sets/src/mage/cards/h/HearthCharm.java @@ -27,7 +27,7 @@ */ package mage.cards.h; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; @@ -56,7 +56,7 @@ public class HearthCharm extends CardImpl { static { filter1.add(new CardTypePredicate(CardType.ARTIFACT)); filter2.add(new AttackingPredicate()); - filter3.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter3.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public HearthCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HearthKami.java b/Mage.Sets/src/mage/cards/h/HearthKami.java index 271136a3168..f61e32677cb 100644 --- a/Mage.Sets/src/mage/cards/h/HearthKami.java +++ b/Mage.Sets/src/mage/cards/h/HearthKami.java @@ -29,7 +29,7 @@ package mage.cards.h; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -74,7 +74,7 @@ public class HearthKami extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterArtifactPermanent filter = new FilterArtifactPermanent(new StringBuilder("artifact with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); Target target = new TargetPermanent(filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java b/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java index a5fd8ef2a2e..050b0b02bed 100644 --- a/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java +++ b/Mage.Sets/src/mage/cards/h/HeidarRimewindMaster.java @@ -29,7 +29,7 @@ package mage.cards.h; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; @@ -70,7 +70,7 @@ public class HeidarRimewindMaster extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new GenericManaCost(2), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 3)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 3)); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/h/HellkiteHatchling.java b/Mage.Sets/src/mage/cards/h/HellkiteHatchling.java index 72866d3810e..dd48741ebaf 100644 --- a/Mage.Sets/src/mage/cards/h/HellkiteHatchling.java +++ b/Mage.Sets/src/mage/cards/h/HellkiteHatchling.java @@ -28,7 +28,7 @@ package mage.cards.h; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.DevouredCreaturesCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -63,11 +63,11 @@ public class HellkiteHatchling extends CardImpl { // Hellkite Hatchling has flying and trample if it devoured a creature. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilitySourceEffect(FlyingAbility.getInstance()), - new DevouredCreaturesCondition(CountType.MORE_THAN, 0), + new DevouredCreaturesCondition(ComparisonType.MORE_THAN, 0), "{this} has flying if it devoured a creature"))); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilitySourceEffect(TrampleAbility.getInstance()), - new DevouredCreaturesCondition(CountType.MORE_THAN, 0), + new DevouredCreaturesCondition(ComparisonType.MORE_THAN, 0), "{this} has trample if it devoured a creature"))); } diff --git a/Mage.Sets/src/mage/cards/h/HellkiteTyrant.java b/Mage.Sets/src/mage/cards/h/HellkiteTyrant.java index 774aa00c0ee..f989cb8b28a 100644 --- a/Mage.Sets/src/mage/cards/h/HellkiteTyrant.java +++ b/Mage.Sets/src/mage/cards/h/HellkiteTyrant.java @@ -31,7 +31,7 @@ import java.util.List; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility; @@ -83,7 +83,7 @@ public class HellkiteTyrant extends CardImpl { TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(new WinGameSourceControllerEffect(), TargetController.YOU, false); this.addAbility(new ConditionalTriggeredAbility( ability, - new PermanentsOnTheBattlefieldCondition(new FilterArtifactPermanent(), CountType.MORE_THAN, 19), + new PermanentsOnTheBattlefieldCondition(new FilterArtifactPermanent(), ComparisonType.MORE_THAN, 19), "At the beginning of your upkeep, if you control twenty or more artifacts, you win the game.")); } diff --git a/Mage.Sets/src/mage/cards/h/HibernationsEnd.java b/Mage.Sets/src/mage/cards/h/HibernationsEnd.java index 55b30b05a23..4186307d617 100644 --- a/Mage.Sets/src/mage/cards/h/HibernationsEnd.java +++ b/Mage.Sets/src/mage/cards/h/HibernationsEnd.java @@ -28,7 +28,7 @@ package mage.cards.h; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.OneShotEffect; @@ -130,7 +130,7 @@ class HibernationsEndEffect extends OneShotEffect { if (sourcePermanent != null && player != null) { int newConvertedCost = sourcePermanent.getCounters(game).getCount("age"); FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, newConvertedCost)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); filter.add(new CardTypePredicate(CardType.CREATURE)); TargetCardInLibrary target = new TargetCardInLibrary(filter); return new SearchLibraryPutInPlayEffect(target).apply(game, source); diff --git a/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java b/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java index bcbbf899142..a1637ab7cdd 100644 --- a/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java +++ b/Mage.Sets/src/mage/cards/h/HiddenDragonslayer.java @@ -29,7 +29,7 @@ package mage.cards.h; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.TurnedFaceUpSourceTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -55,7 +55,7 @@ public class HiddenDragonslayer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater an opponent controls"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/h/HinterlandHarbor.java b/Mage.Sets/src/mage/cards/h/HinterlandHarbor.java index 81725368c4f..50b816f6bd8 100644 --- a/Mage.Sets/src/mage/cards/h/HinterlandHarbor.java +++ b/Mage.Sets/src/mage/cards/h/HinterlandHarbor.java @@ -28,7 +28,7 @@ package mage.cards.h; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -60,7 +60,7 @@ public class HinterlandHarbor extends CardImpl { public HinterlandHarbor(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tapped unless you control a Forest or an Island"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new GreenManaAbility()); diff --git a/Mage.Sets/src/mage/cards/h/HollowbornBarghest.java b/Mage.Sets/src/mage/cards/h/HollowbornBarghest.java index 1bf6c02d656..fffdf87a875 100644 --- a/Mage.Sets/src/mage/cards/h/HollowbornBarghest.java +++ b/Mage.Sets/src/mage/cards/h/HollowbornBarghest.java @@ -30,7 +30,7 @@ package mage.cards.h; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; @@ -66,7 +66,7 @@ public class HollowbornBarghest extends CardImpl { this.toughness = new MageInt(6); // At the beginning of your upkeep, if you have no cards in hand, each opponent loses 2 life. - Condition condition = new CardsInHandCondition(CountType.EQUAL_TO, 0); + Condition condition = new CardsInHandCondition(ComparisonType.EQUAL_TO, 0); TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(new HollowbornBarghestEffect(), TargetController.YOU, false); this.addAbility(new ConditionalTriggeredAbility(ability, condition, rule)); diff --git a/Mage.Sets/src/mage/cards/h/HorriblyAwry.java b/Mage.Sets/src/mage/cards/h/HorriblyAwry.java index a87660857c6..71861240d8b 100644 --- a/Mage.Sets/src/mage/cards/h/HorriblyAwry.java +++ b/Mage.Sets/src/mage/cards/h/HorriblyAwry.java @@ -28,7 +28,7 @@ package mage.cards.h; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.CounterTargetWithReplacementEffect; import mage.abilities.keyword.DevoidAbility; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class HorriblyAwry extends CardImpl { private static final FilterCreatureSpell filter = new FilterCreatureSpell("creature spell with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public HorriblyAwry(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/h/HowltoothHollow.java b/Mage.Sets/src/mage/cards/h/HowltoothHollow.java index 4dd3bfa5bb6..7a230979842 100644 --- a/Mage.Sets/src/mage/cards/h/HowltoothHollow.java +++ b/Mage.Sets/src/mage/cards/h/HowltoothHollow.java @@ -29,7 +29,7 @@ package mage.cards.h; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.common.TapSourceCost; @@ -62,7 +62,7 @@ public class HowltoothHollow extends CardImpl { Zone.BATTLEFIELD, new HideawayPlayEffect(), new ManaCostsImpl("{B}"), - new CardsInHandCondition(CountType.EQUAL_TO, 0, null, TargetController.ANY)); + new CardsInHandCondition(ComparisonType.EQUAL_TO, 0, null, TargetController.ANY)); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java b/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java index afaf64e711b..6649cbf9ae3 100644 --- a/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java +++ b/Mage.Sets/src/mage/cards/h/HumbleTheBrute.java @@ -27,7 +27,7 @@ */ package mage.cards.h; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.keyword.InvestigateEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class HumbleTheBrute extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public HumbleTheBrute(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/ImaginaryPet.java b/Mage.Sets/src/mage/cards/i/ImaginaryPet.java index cb532b84be5..ca2be425c73 100644 --- a/Mage.Sets/src/mage/cards/i/ImaginaryPet.java +++ b/Mage.Sets/src/mage/cards/i/ImaginaryPet.java @@ -29,7 +29,7 @@ package mage.cards.i; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; @@ -54,7 +54,7 @@ public class ImaginaryPet extends CardImpl { // At the beginning of your upkeep, if you have a card in hand, return Imaginary Pet to its owner's hand. TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(new ReturnToHandSourceEffect(true), TargetController.YOU, false); - this.addAbility(new ConditionalTriggeredAbility(ability, new CardsInHandCondition(CountType.MORE_THAN, 0), + this.addAbility(new ConditionalTriggeredAbility(ability, new CardsInHandCondition(ComparisonType.MORE_THAN, 0), "At the beginning of your upkeep, if you have a card in hand, return {this} to its owner's hand.")); } diff --git a/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java b/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java index 564016059cb..54d22093be5 100644 --- a/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java +++ b/Mage.Sets/src/mage/cards/i/ImperialRecruiter.java @@ -28,7 +28,7 @@ package mage.cards.i; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class ImperialRecruiter extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with power 2 or less"); static{ - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public ImperialRecruiter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java b/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java index bf75f77b458..3355c019e9e 100644 --- a/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java +++ b/Mage.Sets/src/mage/cards/i/InquisitionOfKozilek.java @@ -28,7 +28,7 @@ package mage.cards.i; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -52,7 +52,7 @@ public class InquisitionOfKozilek extends CardImpl { static { filter.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public InquisitionOfKozilek(UUID ownerId, CardSetInfo setInfo){ diff --git a/Mage.Sets/src/mage/cards/i/InspiringVantage.java b/Mage.Sets/src/mage/cards/i/InspiringVantage.java index d7a0ee12711..32353b18e90 100644 --- a/Mage.Sets/src/mage/cards/i/InspiringVantage.java +++ b/Mage.Sets/src/mage/cards/i/InspiringVantage.java @@ -29,7 +29,7 @@ package mage.cards.i; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -53,7 +53,7 @@ public class InspiringVantage extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // Inspiring Vantage enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/i/IntrepidHero.java b/Mage.Sets/src/mage/cards/i/IntrepidHero.java index fac2bcc859b..0a9e72eff72 100644 --- a/Mage.Sets/src/mage/cards/i/IntrepidHero.java +++ b/Mage.Sets/src/mage/cards/i/IntrepidHero.java @@ -29,7 +29,7 @@ package mage.cards.i; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.DestroyTargetEffect; @@ -52,7 +52,7 @@ public class IntrepidHero extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN,3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN,3)); } public IntrepidHero(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java b/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java index dbf5b08e47a..79e3dde1283 100644 --- a/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java +++ b/Mage.Sets/src/mage/cards/i/IronclawBuzzardiers.java @@ -28,7 +28,7 @@ package mage.cards.i; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -53,7 +53,7 @@ public class IronclawBuzzardiers extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public IronclawBuzzardiers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IronclawOrcs.java b/Mage.Sets/src/mage/cards/i/IronclawOrcs.java index 87932a18829..87d4477fb10 100644 --- a/Mage.Sets/src/mage/cards/i/IronclawOrcs.java +++ b/Mage.Sets/src/mage/cards/i/IronclawOrcs.java @@ -28,7 +28,7 @@ package mage.cards.i; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class IronclawOrcs extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public IronclawOrcs(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java b/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java index 5d4705b24ee..27f72f37be7 100644 --- a/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java +++ b/Mage.Sets/src/mage/cards/i/IslandFishJasconius.java @@ -28,7 +28,7 @@ package mage.cards.i; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; @@ -74,7 +74,7 @@ public class IslandFishJasconius extends CardImpl { // When you control no Islands, sacrifice Island Fish Jasconius. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/i/IslebackSpawn.java b/Mage.Sets/src/mage/cards/i/IslebackSpawn.java index b4f8aad2720..4331779ca96 100644 --- a/Mage.Sets/src/mage/cards/i/IslebackSpawn.java +++ b/Mage.Sets/src/mage/cards/i/IslebackSpawn.java @@ -28,7 +28,7 @@ package mage.cards.i; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.CardsInAnyLibraryCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -60,7 +60,7 @@ public class IslebackSpawn extends CardImpl { // Isleback Spawn gets +4/+8 as long as a library has twenty or fewer cards in it. this.addAbility(new SimpleStaticAbility(Zone.ALL, new ConditionalContinuousEffect( new BoostSourceEffect(4,8, Duration.EndOfGame), - new CardsInAnyLibraryCondition(CountType.FEWER_THAN, 21), + new CardsInAnyLibraryCondition(ComparisonType.FEWER_THAN, 21), "{this} gets +4/+8 as long as a library has twenty or fewer cards in it"))); } diff --git a/Mage.Sets/src/mage/cards/i/IsochronScepter.java b/Mage.Sets/src/mage/cards/i/IsochronScepter.java index 391bb7ce852..41cda253d07 100644 --- a/Mage.Sets/src/mage/cards/i/IsochronScepter.java +++ b/Mage.Sets/src/mage/cards/i/IsochronScepter.java @@ -28,7 +28,7 @@ package mage.cards.i; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -87,7 +87,7 @@ class IsochronScepterImprintEffect extends OneShotEffect { static { filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public IsochronScepterImprintEffect() { diff --git a/Mage.Sets/src/mage/cards/i/IsolatedChapel.java b/Mage.Sets/src/mage/cards/i/IsolatedChapel.java index 5feab6da620..b7c2a199477 100644 --- a/Mage.Sets/src/mage/cards/i/IsolatedChapel.java +++ b/Mage.Sets/src/mage/cards/i/IsolatedChapel.java @@ -28,7 +28,7 @@ package mage.cards.i; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -60,7 +60,7 @@ public class IsolatedChapel extends CardImpl { public IsolatedChapel(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Plains or a Swamp"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new WhiteManaAbility()); diff --git a/Mage.Sets/src/mage/cards/i/IvoryCraneNetsuke.java b/Mage.Sets/src/mage/cards/i/IvoryCraneNetsuke.java index ba5703c8572..6859d99db0d 100644 --- a/Mage.Sets/src/mage/cards/i/IvoryCraneNetsuke.java +++ b/Mage.Sets/src/mage/cards/i/IvoryCraneNetsuke.java @@ -29,7 +29,7 @@ package mage.cards.i; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; @@ -52,7 +52,7 @@ public class IvoryCraneNetsuke extends CardImpl { // At the beginning of your upkeep, if you have seven or more cards in hand, you gain 4 life. TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new GainLifeEffect(4), TargetController.YOU, false); - CardsInHandCondition condition = new CardsInHandCondition(CountType.MORE_THAN, 6); + CardsInHandCondition condition = new CardsInHandCondition(ComparisonType.MORE_THAN, 6); this.addAbility(new ConditionalTriggeredAbility(ability, condition, "At the beginning of your upkeep, if you have seven or more cards in hand, you gain 4 life.")); } diff --git a/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java b/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java index a8e9ebc65ee..24f808ef39e 100644 --- a/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java +++ b/Mage.Sets/src/mage/cards/i/IzzetGuildmage.java @@ -29,7 +29,7 @@ package mage.cards.i; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.CopyTargetSpellEffect; @@ -57,10 +57,10 @@ public class IzzetGuildmage extends CardImpl { static { filterInstant.add(new CardTypePredicate(CardType.INSTANT)); - filterInstant.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filterInstant.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); filterInstant.add(new ControllerPredicate(TargetController.YOU)); filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); - filterSorcery.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filterSorcery.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); filterSorcery.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/j/JarJarBinks.java b/Mage.Sets/src/mage/cards/j/JarJarBinks.java index 0f0e2825c7f..bc0ba826359 100644 --- a/Mage.Sets/src/mage/cards/j/JarJarBinks.java +++ b/Mage.Sets/src/mage/cards/j/JarJarBinks.java @@ -29,7 +29,7 @@ package mage.cards.j; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.common.CantBlockAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -181,7 +181,7 @@ class JarJarBinksTapEffect extends OneShotEffect { } if (multipleExist) { FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("one of the creatures with the highest power"); - filter.add(new PowerPredicate(CountType.EQUAL_TO, highestPower)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, highestPower)); Target target = new TargetPermanent(filter); target.setNotTarget(true); if (target.canChoose(source.getSourceId(), source.getControllerId(), game)) { diff --git a/Mage.Sets/src/mage/cards/j/JuntuStakes.java b/Mage.Sets/src/mage/cards/j/JuntuStakes.java index 99324b56b8f..f9e1bc3945a 100644 --- a/Mage.Sets/src/mage/cards/j/JuntuStakes.java +++ b/Mage.Sets/src/mage/cards/j/JuntuStakes.java @@ -27,7 +27,7 @@ */ package mage.cards.j; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class JuntuStakes extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 1 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 2)); } public JuntuStakes(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/j/JushiApprentice.java b/Mage.Sets/src/mage/cards/j/JushiApprentice.java index a0030807742..a923723e74f 100644 --- a/Mage.Sets/src/mage/cards/j/JushiApprentice.java +++ b/Mage.Sets/src/mage/cards/j/JushiApprentice.java @@ -29,7 +29,7 @@ package mage.cards.j; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.common.TapSourceCost; @@ -68,7 +68,7 @@ public class JushiApprentice extends CardImpl { // {2}{U}, {tap}: Draw a card. If you have nine or more cards in hand, flip Jushi Apprentice. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}{U}")); ability.addCost(new TapSourceCost()); - ability.addEffect(new ConditionalOneShotEffect(new FlipSourceEffect(new TomoyaTheRevealer()), new CardsInHandCondition(CountType.MORE_THAN, 8), + ability.addEffect(new ConditionalOneShotEffect(new FlipSourceEffect(new TomoyaTheRevealer()), new CardsInHandCondition(ComparisonType.MORE_THAN, 8), "If you have nine or more cards in hand, flip {this}")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java b/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java index 55fbb04b72e..f9d00b41f68 100644 --- a/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java +++ b/Mage.Sets/src/mage/cards/k/KahoMinamoHistorian.java @@ -30,7 +30,7 @@ package mage.cards.k; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -148,7 +148,7 @@ class KahoMinamoHistorianCastEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { FilterCard filter = new FilterCard(); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, source.getManaCostsToPay().getX())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, source.getManaCostsToPay().getX())); TargetCardInExile target = new TargetCardInExile(filter, CardUtil.getCardExileZoneId(game, source)); Cards cards = game.getExile().getExileZone(CardUtil.getCardExileZoneId(game, source)); if (!cards.isEmpty() && controller.choose(Outcome.PlayForFree, cards, target, game)) { diff --git a/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java b/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java index dee8a0f13d9..82fa188348b 100644 --- a/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java +++ b/Mage.Sets/src/mage/cards/k/KalemneDiscipleOfIroas.java @@ -29,7 +29,7 @@ package mage.cards.k; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.dynamicvalue.DynamicValue; @@ -63,7 +63,7 @@ public class KalemneDiscipleOfIroas extends CardImpl { static { filterSpell.add(new CardTypePredicate(CardType.CREATURE)); - filterSpell.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 4)); + filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 4)); } public KalemneDiscipleOfIroas(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KavuLair.java b/Mage.Sets/src/mage/cards/k/KavuLair.java index 37da5324d99..ca01442cd6f 100644 --- a/Mage.Sets/src/mage/cards/k/KavuLair.java +++ b/Mage.Sets/src/mage/cards/k/KavuLair.java @@ -27,7 +27,7 @@ */ package mage.cards.k; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.common.DrawCardTargetEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class KavuLair extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public KavuLair(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KavuRunner.java b/Mage.Sets/src/mage/cards/k/KavuRunner.java index 34377c280ff..f3cb9324948 100644 --- a/Mage.Sets/src/mage/cards/k/KavuRunner.java +++ b/Mage.Sets/src/mage/cards/k/KavuRunner.java @@ -30,7 +30,7 @@ package mage.cards.k; import java.util.UUID; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.InvertCondition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -70,7 +70,7 @@ public class KavuRunner extends CardImpl { // Kavu Runner has haste as long as no opponent controls a white or blue creature. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new GainAbilitySourceEffect(HasteAbility.getInstance(), - Duration.WhileOnBattlefield), new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0, false)), + Duration.WhileOnBattlefield), new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0, false)), "{this} has haste as long as no opponent controls a white or blue creature"))); } diff --git a/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java b/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java index 79e3a4248a4..bbd7f0d24d2 100644 --- a/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java +++ b/Mage.Sets/src/mage/cards/k/KheruBloodsucker.java @@ -29,7 +29,7 @@ package mage.cards.k; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeTargetCost; @@ -66,7 +66,7 @@ public class KheruBloodsucker extends CardImpl { static { anotherFilter.add(new AnotherPredicate()); toughnessFilter.add(new ControllerPredicate(TargetController.YOU)); - toughnessFilter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + toughnessFilter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); } public KheruBloodsucker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KillingGlare.java b/Mage.Sets/src/mage/cards/k/KillingGlare.java index 3c3c48b42e9..2755730dd32 100644 --- a/Mage.Sets/src/mage/cards/k/KillingGlare.java +++ b/Mage.Sets/src/mage/cards/k/KillingGlare.java @@ -28,7 +28,7 @@ package mage.cards.k; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; @@ -67,7 +67,7 @@ public class KillingGlare extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent filter = new FilterCreaturePermanent(new StringBuilder("creature with power ").append(xValue).append(" or less").toString()); - filter.add(new PowerPredicate(CountType.FEWER_THAN, xValue + 1)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, xValue + 1)); ability.addTarget(new TargetCreaturePermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/k/KiyomaroFirstToStand.java b/Mage.Sets/src/mage/cards/k/KiyomaroFirstToStand.java index ab50e4756e0..b5c38f4e81e 100644 --- a/Mage.Sets/src/mage/cards/k/KiyomaroFirstToStand.java +++ b/Mage.Sets/src/mage/cards/k/KiyomaroFirstToStand.java @@ -30,7 +30,7 @@ package mage.cards.k; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; @@ -72,7 +72,7 @@ public class KiyomaroFirstToStand extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetPowerToughnessSourceEffect(xValue, Duration.EndOfGame))); // As long as you have four or more cards in hand, Kiyomaro has vigilance. - Condition condition = new CardsInHandCondition(CountType.MORE_THAN,3); + Condition condition = new CardsInHandCondition(ComparisonType.MORE_THAN,3); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilitySourceEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield), condition, "As long as you have four or more cards in hand, {this} has vigilance")); @@ -81,7 +81,7 @@ public class KiyomaroFirstToStand extends CardImpl { // Whenever Kiyomaro deals damage, if you have seven or more cards in hand, you gain 7 life. this.addAbility(new ConditionalTriggeredAbility( new KiyomaroFirstToStandDealsDamageTriggeredAbility(), - new CardsInHandCondition(CountType.MORE_THAN, 6), + new CardsInHandCondition(ComparisonType.MORE_THAN, 6), "Whenever {this} deals damage, if you have seven or more cards in hand, you gain 7 life" )); } diff --git a/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java b/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java index 0651ee68a23..f4eb268c679 100644 --- a/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java +++ b/Mage.Sets/src/mage/cards/k/KnollspineInvocation.java @@ -28,7 +28,7 @@ package mage.cards.k; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.common.DiscardTargetCost; @@ -74,7 +74,7 @@ public class KnollspineInvocation extends CardImpl { DiscardTargetCost discardCost = (DiscardTargetCost) cost; discardCost.getTargets().clear(); FilterCard adjustedFilter = filter.copy(); // don't use it directly, it's static!!!! - adjustedFilter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + adjustedFilter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); discardCost.addTarget(new TargetCardInHand(adjustedFilter)); return; } diff --git a/Mage.Sets/src/mage/cards/k/KorLineSlinger.java b/Mage.Sets/src/mage/cards/k/KorLineSlinger.java index ddc10362082..0658a2278aa 100644 --- a/Mage.Sets/src/mage/cards/k/KorLineSlinger.java +++ b/Mage.Sets/src/mage/cards/k/KorLineSlinger.java @@ -29,7 +29,7 @@ package mage.cards.k; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.TapTargetEffect; @@ -51,7 +51,7 @@ public class KorLineSlinger extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public KorLineSlinger(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java b/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java index 2f7f92b36fc..28b7a1366f7 100644 --- a/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java +++ b/Mage.Sets/src/mage/cards/k/KozilekTheGreatDistortion.java @@ -29,7 +29,7 @@ package mage.cards.k; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.Cost; @@ -76,7 +76,7 @@ public class KozilekTheGreatDistortion extends CardImpl { // When you cast Kozilek, the Great Distortion, if you have fewer than seven cards in hand, draw cards equal to the difference. this.addAbility(new ConditionalTriggeredAbility( new CastSourceTriggeredAbility(new KozilekDrawEffect(), false), - new CardsInHandCondition(CountType.FEWER_THAN, 7), + new CardsInHandCondition(ComparisonType.FEWER_THAN, 7), "When you cast {this}, if you have fewer than seven cards in hand, draw cards equal to the difference.")); // Menace this.addAbility(new MenaceAbility()); @@ -145,7 +145,7 @@ class KozilekDiscardCost extends CostImpl { return false; } FilterCard filter = new FilterCard("card with converted mana cost of " + targetSpell.getConvertedManaCost()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, targetSpell.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, targetSpell.getConvertedManaCost())); TargetCardInHand target = new TargetCardInHand(filter); this.getTargets().clear(); this.getTargets().add(target); diff --git a/Mage.Sets/src/mage/cards/k/KozileksReturn.java b/Mage.Sets/src/mage/cards/k/KozileksReturn.java index 03009acf1f7..dafa3a0b05d 100644 --- a/Mage.Sets/src/mage/cards/k/KozileksReturn.java +++ b/Mage.Sets/src/mage/cards/k/KozileksReturn.java @@ -27,7 +27,7 @@ */ package mage.cards.k; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.costs.common.ExileSourceFromGraveCost; import mage.abilities.effects.common.DamageAllEffect; @@ -56,7 +56,7 @@ public class KozileksReturn extends CardImpl { static { filter.add(new SubtypePredicate("Eldrazi")); filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 6)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 6)); } public KozileksReturn(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrosanDrover.java b/Mage.Sets/src/mage/cards/k/KrosanDrover.java index 09cbd22b20d..3ef7d81453a 100644 --- a/Mage.Sets/src/mage/cards/k/KrosanDrover.java +++ b/Mage.Sets/src/mage/cards/k/KrosanDrover.java @@ -28,7 +28,7 @@ package mage.cards.k; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.cost.SpellsCostReductionControllerEffect; import mage.cards.CardImpl; @@ -51,7 +51,7 @@ public class KrosanDrover extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } public KrosanDrover(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KrovikanRot.java b/Mage.Sets/src/mage/cards/k/KrovikanRot.java index f8c10d51e6b..abcd2a4a3d0 100644 --- a/Mage.Sets/src/mage/cards/k/KrovikanRot.java +++ b/Mage.Sets/src/mage/cards/k/KrovikanRot.java @@ -27,7 +27,7 @@ */ package mage.cards.k; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.RecoverAbility; @@ -49,7 +49,7 @@ public class KrovikanRot extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public KrovikanRot(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java b/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java index 677c057ecb6..9ee5ce3e49f 100644 --- a/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java +++ b/Mage.Sets/src/mage/cards/k/KukemssaSerpent.java @@ -29,7 +29,7 @@ package mage.cards.k; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -84,7 +84,7 @@ public class KukemssaSerpent extends CardImpl { // When you control no Islands, sacrifice Kukemssa Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/k/Kurgadon.java b/Mage.Sets/src/mage/cards/k/Kurgadon.java index d0a9a2c3de7..048b08335a1 100644 --- a/Mage.Sets/src/mage/cards/k/Kurgadon.java +++ b/Mage.Sets/src/mage/cards/k/Kurgadon.java @@ -28,7 +28,7 @@ package mage.cards.k; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.common.counter.AddCountersSourceEffect; import mage.cards.CardImpl; @@ -51,7 +51,7 @@ public class Kurgadon extends CardImpl { static { filterSpell.add(new CardTypePredicate(CardType.CREATURE)); - filterSpell.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); + filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } public Kurgadon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LagonnaBandElder.java b/Mage.Sets/src/mage/cards/l/LagonnaBandElder.java index 5eda146b175..1a3cd7b5560 100644 --- a/Mage.Sets/src/mage/cards/l/LagonnaBandElder.java +++ b/Mage.Sets/src/mage/cards/l/LagonnaBandElder.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -57,7 +57,7 @@ public class LagonnaBandElder extends CardImpl { // When Lagonna-Band Elder enters the battlefield, if you control an enchantment, you gain 3 life. Ability ability = new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new GainLifeEffect(3), false), - new PermanentsOnTheBattlefieldCondition(new FilterEnchantmentPermanent(), CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(new FilterEnchantmentPermanent(), ComparisonType.MORE_THAN, 0), "When Lagonna-Band Elder enters the battlefield, if you control an enchantment, you gain 3 life"); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/l/LambholtPacifist.java b/Mage.Sets/src/mage/cards/l/LambholtPacifist.java index 10653c9ec17..a094ca95145 100644 --- a/Mage.Sets/src/mage/cards/l/LambholtPacifist.java +++ b/Mage.Sets/src/mage/cards/l/LambholtPacifist.java @@ -29,7 +29,7 @@ package mage.cards.l; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; @@ -92,7 +92,7 @@ class LambholtPacifistEffect extends RestrictionEffect { private static final FilterControlledPermanent filter = new FilterControlledPermanent("a creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public LambholtPacifistEffect() { diff --git a/Mage.Sets/src/mage/cards/l/LamplighterOfSelhoff.java b/Mage.Sets/src/mage/cards/l/LamplighterOfSelhoff.java index 2b25bf8582e..2716a697d19 100644 --- a/Mage.Sets/src/mage/cards/l/LamplighterOfSelhoff.java +++ b/Mage.Sets/src/mage/cards/l/LamplighterOfSelhoff.java @@ -29,7 +29,7 @@ package mage.cards.l; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -66,7 +66,7 @@ public class LamplighterOfSelhoff extends CardImpl { TriggeredAbility triggeredAbility = new EntersBattlefieldTriggeredAbility(new DrawDiscardControllerEffect(1,1,true)); this.addAbility(new ConditionalTriggeredAbility( triggeredAbility, - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0), "When {this} enters the battlefield, if you control another Zombie, you may a draw card. If you do, discard a card.")); } diff --git a/Mage.Sets/src/mage/cards/l/LastBreath.java b/Mage.Sets/src/mage/cards/l/LastBreath.java index 92bb5e2ea61..291cb377e62 100644 --- a/Mage.Sets/src/mage/cards/l/LastBreath.java +++ b/Mage.Sets/src/mage/cards/l/LastBreath.java @@ -28,7 +28,7 @@ package mage.cards.l; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.ExileTargetEffect; import mage.cards.CardImpl; @@ -53,7 +53,7 @@ public class LastBreath extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public LastBreath(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java b/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java index f61f5a16e20..62183bbeceb 100644 --- a/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java +++ b/Mage.Sets/src/mage/cards/l/LaviniaOfTheTenth.java @@ -30,7 +30,7 @@ package mage.cards.l; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.DetainAllEffect; import mage.abilities.keyword.ProtectionAbility; @@ -57,7 +57,7 @@ public class LaviniaOfTheTenth extends CardImpl { static { filterDetain.add(new ControllerPredicate(TargetController.OPPONENT)); filterDetain.add(Predicates.not(new CardTypePredicate(CardType.LAND))); - filterDetain.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filterDetain.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public LaviniaOfTheTenth (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java b/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java index e3cf6a3df68..7c67b64c27c 100644 --- a/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java +++ b/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.Mana; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -76,7 +76,7 @@ public class LeechriddenSwamp extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new LeechriddenSwampLoseLifeEffect(), new ManaCostsImpl("{B}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java b/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java index 6c336b2be6d..ee013c8a429 100644 --- a/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java +++ b/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java @@ -28,7 +28,7 @@ package mage.cards.l; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -100,7 +100,7 @@ class LegacyOfTheBelovedEffect extends OneShotEffect { if (cost instanceof SacrificeTargetCost) { Permanent p = (Permanent) game.getLastKnownInformation(((SacrificeTargetCost) cost).getPermanents().get(0).getId(), Zone.BATTLEFIELD); if (p != null) { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, p.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, p.getConvertedManaCost())); TargetCardInLibrary target = new TargetCardInLibrary(0, 2, filter); Player player = game.getPlayer(source.getControllerId()); if (player != null && player.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/l/LegacysAllure.java b/Mage.Sets/src/mage/cards/l/LegacysAllure.java index e520cbbf038..4abefffd51b 100644 --- a/Mage.Sets/src/mage/cards/l/LegacysAllure.java +++ b/Mage.Sets/src/mage/cards/l/LegacysAllure.java @@ -28,7 +28,7 @@ package mage.cards.l; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; @@ -81,7 +81,7 @@ public class LegacysAllure extends CardImpl { if (sourcePermanent != null) { int numbCounters = sourcePermanent.getCounters(game).getCount("treasure"); FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power less than or equal to the number of treasure counters on " + getLogName()); - filter.add(new PowerPredicate(CountType.FEWER_THAN, numbCounters + 1)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, numbCounters + 1)); ability.getTargets().clear(); ability.getTargets().add(new TargetCreaturePermanent(filter)); } diff --git a/Mage.Sets/src/mage/cards/l/LeoninSquire.java b/Mage.Sets/src/mage/cards/l/LeoninSquire.java index 16af11a8967..698c1e4db45 100644 --- a/Mage.Sets/src/mage/cards/l/LeoninSquire.java +++ b/Mage.Sets/src/mage/cards/l/LeoninSquire.java @@ -29,7 +29,7 @@ package mage.cards.l; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class LeoninSquire extends CardImpl { private static final FilterArtifactCard filter = new FilterArtifactCard("target artifact card with converted mana cost 1 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public LeoninSquire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LibraryOfAlexandria.java b/Mage.Sets/src/mage/cards/l/LibraryOfAlexandria.java index b29ae38d4f0..b0f3cd70147 100644 --- a/Mage.Sets/src/mage/cards/l/LibraryOfAlexandria.java +++ b/Mage.Sets/src/mage/cards/l/LibraryOfAlexandria.java @@ -29,7 +29,7 @@ package mage.cards.l; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.decorator.ConditionalActivatedAbility; @@ -55,7 +55,7 @@ public class LibraryOfAlexandria extends CardImpl { Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new TapSourceCost(), - new CardsInHandCondition(CountType.EQUAL_TO, 7), + new CardsInHandCondition(ComparisonType.EQUAL_TO, 7), "")); } diff --git a/Mage.Sets/src/mage/cards/l/Lifeline.java b/Mage.Sets/src/mage/cards/l/Lifeline.java index 6e975658250..d48c2f24fd6 100644 --- a/Mage.Sets/src/mage/cards/l/Lifeline.java +++ b/Mage.Sets/src/mage/cards/l/Lifeline.java @@ -29,7 +29,7 @@ package mage.cards.l; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -63,7 +63,7 @@ private static final FilterCreaturePermanent filter = new FilterCreaturePermanen // Whenever a creature dies, if another creature is on the battlefield, return the first card to the battlefield under its owner's control at the beginning of the next end step. Ability ability = new ConditionalTriggeredAbility( new DiesCreatureTriggeredAbility( Zone.BATTLEFIELD, new LifelineEffect(), false, filter, true), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0, false), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0, false), "Whenever a creature dies, if another creature is on the battlefield, return the first card to the battlefield under its owner's control at the beginning of the next end step."); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java index f81614e1656..016ff509d3f 100644 --- a/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java +++ b/Mage.Sets/src/mage/cards/l/LilianaDefiantNecromancer.java @@ -28,7 +28,7 @@ package mage.cards.l; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; @@ -103,7 +103,7 @@ public class LilianaDefiantNecromancer extends CardImpl { } } FilterCard newFilter = filter.copy(); - newFilter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); + newFilter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); ability.getTargets().clear(); ability.addTarget(new TargetCardInYourGraveyard(newFilter)); } diff --git a/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java b/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java index bbbfa2c457e..9d09be812ce 100644 --- a/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java +++ b/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java @@ -29,7 +29,7 @@ package mage.cards.l; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -124,7 +124,7 @@ class LinSivviDefiantHeroEffect extends OneShotEffect { int xCost = source.getManaCostsToPay().getX(); FilterPermanentCard filter = new FilterPermanentCard(new StringBuilder("Rebel permanent card with converted mana cost ").append(xCost).append(" or less").toString()); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xCost + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xCost + 1)); filter.add(new SubtypePredicate("Rebel")); TargetCardInLibrary target = new TargetCardInLibrary(filter); diff --git a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java index 17a4f3a0e03..5546641ad6c 100644 --- a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java +++ b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java @@ -29,7 +29,7 @@ package mage.cards.l; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.abilityword.GrandeurAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -98,7 +98,7 @@ public class LinessaZephyrMage extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost " + xValue); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); ability.getTargets().add(new TargetCreaturePermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/l/Liquify.java b/Mage.Sets/src/mage/cards/l/Liquify.java index bdbafcc9d93..be33874a238 100644 --- a/Mage.Sets/src/mage/cards/l/Liquify.java +++ b/Mage.Sets/src/mage/cards/l/Liquify.java @@ -27,7 +27,7 @@ */ package mage.cards.l; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.CounterTargetWithReplacementEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -48,7 +48,7 @@ public class Liquify extends CardImpl { private static final FilterSpell filter = new FilterSpell("spell with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public Liquify(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/l/LoneRider.java b/Mage.Sets/src/mage/cards/l/LoneRider.java index f38f85343db..05e68e53d7b 100644 --- a/Mage.Sets/src/mage/cards/l/LoneRider.java +++ b/Mage.Sets/src/mage/cards/l/LoneRider.java @@ -28,7 +28,7 @@ package mage.cards.l; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.OnEventTriggeredAbility; import mage.abilities.condition.common.YouGainedLifeCondition; @@ -73,7 +73,7 @@ public class LoneRider extends CardImpl { // At the beginning of the end step, if you gained 3 or more life this turn, transform Lone Rider. this.addAbility(new TransformAbility()); TriggeredAbility triggered = new OnEventTriggeredAbility(GameEvent.EventType.END_TURN_STEP_PRE, "beginning of the end step", true, new TransformSourceEffect(true)); - this.addAbility(new ConditionalTriggeredAbility(triggered, new YouGainedLifeCondition(CountType.MORE_THAN, 2), ruleText), new PlayerGainedLifeWatcher()); + this.addAbility(new ConditionalTriggeredAbility(triggered, new YouGainedLifeCondition(ComparisonType.MORE_THAN, 2), ruleText), new PlayerGainedLifeWatcher()); } public LoneRider(final LoneRider card) { diff --git a/Mage.Sets/src/mage/cards/m/MadblindMountain.java b/Mage.Sets/src/mage/cards/m/MadblindMountain.java index bfd4650305c..a8193eea99b 100644 --- a/Mage.Sets/src/mage/cards/m/MadblindMountain.java +++ b/Mage.Sets/src/mage/cards/m/MadblindMountain.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; @@ -71,7 +71,7 @@ public class MadblindMountain extends CardImpl { Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new ShuffleLibrarySourceEffect(), new ManaCostsImpl("{R}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/m/MagnigothTreefolk.java b/Mage.Sets/src/mage/cards/m/MagnigothTreefolk.java index ce902c85162..f7efecadb5b 100644 --- a/Mage.Sets/src/mage/cards/m/MagnigothTreefolk.java +++ b/Mage.Sets/src/mage/cards/m/MagnigothTreefolk.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -69,23 +69,23 @@ public class MagnigothTreefolk extends CardImpl { Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilitySourceEffect(new PlainswalkAbility()), - new PermanentsOnTheBattlefieldCondition(filterPlains, CountType.MORE_THAN, 0, true), + new PermanentsOnTheBattlefieldCondition(filterPlains, ComparisonType.MORE_THAN, 0, true), "Domain — For each basic land type among lands you control, {this} has landwalk of that type.")); ability.addEffect(new ConditionalContinuousEffect( new GainAbilitySourceEffect(new IslandwalkAbility(), Duration.WhileOnBattlefield, false, true), - new PermanentsOnTheBattlefieldCondition(filterIsland, CountType.MORE_THAN, 0, true), + new PermanentsOnTheBattlefieldCondition(filterIsland, ComparisonType.MORE_THAN, 0, true), "")); ability.addEffect(new ConditionalContinuousEffect( new GainAbilitySourceEffect(new SwampwalkAbility(), Duration.WhileOnBattlefield, false, true), - new PermanentsOnTheBattlefieldCondition(filterSwamp, CountType.MORE_THAN, 0, true), + new PermanentsOnTheBattlefieldCondition(filterSwamp, ComparisonType.MORE_THAN, 0, true), "")); ability.addEffect(new ConditionalContinuousEffect( new GainAbilitySourceEffect(new MountainwalkAbility(), Duration.WhileOnBattlefield, false, true), - new PermanentsOnTheBattlefieldCondition(filterMountain, CountType.MORE_THAN, 0, true), + new PermanentsOnTheBattlefieldCondition(filterMountain, ComparisonType.MORE_THAN, 0, true), "")); ability.addEffect(new ConditionalContinuousEffect( new GainAbilitySourceEffect(new ForestwalkAbility(), Duration.WhileOnBattlefield, false, true), - new PermanentsOnTheBattlefieldCondition(filterForest, CountType.MORE_THAN, 0, true), + new PermanentsOnTheBattlefieldCondition(filterForest, ComparisonType.MORE_THAN, 0, true), "")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/m/MagusOfTheLibrary.java b/Mage.Sets/src/mage/cards/m/MagusOfTheLibrary.java index 3d4447de07e..123122e3255 100644 --- a/Mage.Sets/src/mage/cards/m/MagusOfTheLibrary.java +++ b/Mage.Sets/src/mage/cards/m/MagusOfTheLibrary.java @@ -29,7 +29,7 @@ package mage.cards.m; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.decorator.ConditionalActivatedAbility; @@ -61,7 +61,7 @@ public class MagusOfTheLibrary extends CardImpl { Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new TapSourceCost(), - new CardsInHandCondition(CountType.EQUAL_TO, 7), + new CardsInHandCondition(ComparisonType.EQUAL_TO, 7), "")); } diff --git a/Mage.Sets/src/mage/cards/m/MantaRay.java b/Mage.Sets/src/mage/cards/m/MantaRay.java index 28e80a1643e..e4cb1a060ca 100644 --- a/Mage.Sets/src/mage/cards/m/MantaRay.java +++ b/Mage.Sets/src/mage/cards/m/MantaRay.java @@ -29,7 +29,7 @@ package mage.cards.m; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.common.SimpleStaticAbility; @@ -74,7 +74,7 @@ public class MantaRay extends CardImpl { // When you control no Islands, sacrifice Manta Ray. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/m/MaraudingMaulhorn.java b/Mage.Sets/src/mage/cards/m/MaraudingMaulhorn.java index f81958e32a9..271bcbb9872 100644 --- a/Mage.Sets/src/mage/cards/m/MaraudingMaulhorn.java +++ b/Mage.Sets/src/mage/cards/m/MaraudingMaulhorn.java @@ -29,7 +29,7 @@ package mage.cards.m; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalRequirementEffect; import mage.abilities.effects.Effect; @@ -63,7 +63,7 @@ public class MaraudingMaulhorn extends CardImpl { // Marauding Maulhorn attacks each combat if able unless you control a creature named Advocate of the Beast. Effect effect = new ConditionalRequirementEffect( new AttacksIfAbleSourceEffect(Duration.WhileOnBattlefield, true), - new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 1)); effect.setText("{this} attacks each combat if able unless you control a creature named Advocate of the Beast"); } diff --git a/Mage.Sets/src/mage/cards/m/MarbleTitan.java b/Mage.Sets/src/mage/cards/m/MarbleTitan.java index c6d7e5c6e37..e5e11ce5203 100644 --- a/Mage.Sets/src/mage/cards/m/MarbleTitan.java +++ b/Mage.Sets/src/mage/cards/m/MarbleTitan.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -51,7 +51,7 @@ public class MarbleTitan extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 3 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public MarbleTitan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Marjhan.java b/Mage.Sets/src/mage/cards/m/Marjhan.java index bf17eb6f314..d067533a452 100644 --- a/Mage.Sets/src/mage/cards/m/Marjhan.java +++ b/Mage.Sets/src/mage/cards/m/Marjhan.java @@ -29,7 +29,7 @@ package mage.cards.m; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -99,7 +99,7 @@ public class Marjhan extends CardImpl { // When you control no Islands, sacrifice Marjhan. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/m/MarkOfTheOni.java b/Mage.Sets/src/mage/cards/m/MarkOfTheOni.java index d53e6376c41..2c22494bac2 100644 --- a/Mage.Sets/src/mage/cards/m/MarkOfTheOni.java +++ b/Mage.Sets/src/mage/cards/m/MarkOfTheOni.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; @@ -76,7 +76,7 @@ public class MarkOfTheOni extends CardImpl { TargetController.ANY, new PermanentsOnTheBattlefieldCondition( new FilterControlledCreaturePermanent("Demon", "if you control no Demons"), - CountType.FEWER_THAN, 1), + ComparisonType.FEWER_THAN, 1), false)); } diff --git a/Mage.Sets/src/mage/cards/m/MaskOfIntolerance.java b/Mage.Sets/src/mage/cards/m/MaskOfIntolerance.java index f7145b0db80..5fe49838133 100644 --- a/Mage.Sets/src/mage/cards/m/MaskOfIntolerance.java +++ b/Mage.Sets/src/mage/cards/m/MaskOfIntolerance.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.IntCompareCondition; @@ -72,7 +72,7 @@ public class MaskOfIntolerance extends CardImpl { class MaskOfIntoleranceCondition extends IntCompareCondition { public MaskOfIntoleranceCondition() { - super(CountType.MORE_THAN, 3); + super(ComparisonType.MORE_THAN, 3); } @Override diff --git a/Mage.Sets/src/mage/cards/m/MatterReshaper.java b/Mage.Sets/src/mage/cards/m/MatterReshaper.java index 5cf18f530e0..13fab0af68f 100644 --- a/Mage.Sets/src/mage/cards/m/MatterReshaper.java +++ b/Mage.Sets/src/mage/cards/m/MatterReshaper.java @@ -30,7 +30,7 @@ package mage.cards.m; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -97,7 +97,7 @@ class MatterReshaperEffect extends OneShotEffect { } controller.revealCards(sourceObject.getIdName(), new CardsImpl(card), game); FilterPermanentCard filter = new FilterPermanentCard("permanent card with converted mana cost 3 or less"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); if (filter.match(card, game)) { if (controller.chooseUse(Outcome.PutCardInPlay, "Put " + card.getName() + " onto the battlefield (otherwise put in hand)?", source, game)) { card.putOntoBattlefield(game, Zone.LIBRARY, source.getSourceId(), source.getControllerId(), false); diff --git a/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java b/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java index 8e9cdd0d28c..80dee250eae 100644 --- a/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java +++ b/Mage.Sets/src/mage/cards/m/MayaelTheAnima.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -53,7 +53,7 @@ public class MayaelTheAnima extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with power 5 or greater"); static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public MayaelTheAnima(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MayaelsAria.java b/Mage.Sets/src/mage/cards/m/MayaelsAria.java index b57ceef952f..ae34e0602d6 100644 --- a/Mage.Sets/src/mage/cards/m/MayaelsAria.java +++ b/Mage.Sets/src/mage/cards/m/MayaelsAria.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -95,7 +95,7 @@ class MayaelsAriaEffect extends OneShotEffect { } // put a +1/+1 counter on each creature you control if you control a creature with power 5 or greater. FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); if (game.getState().getBattlefield().countAll(filter, controller.getId(), game) > 0) { for (Permanent creature : game.getBattlefield().getAllActivePermanents(new FilterCreaturePermanent(), source.getControllerId(), game)) { creature.addCounters(CounterType.P1P1.createInstance(), source, game); @@ -105,14 +105,14 @@ class MayaelsAriaEffect extends OneShotEffect { // Then you gain 10 life if you control a creature with power 10 or greater. filter = new FilterCreaturePermanent(); - filter.add(new PowerPredicate(CountType.MORE_THAN, 9)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 9)); if (game.getState().getBattlefield().countAll(filter, controller.getId(), game) > 0) { controller.gainLife(10, game); } // Then you win the game if you control a creature with power 20 or greater. filter = new FilterCreaturePermanent(); - filter.add(new PowerPredicate(CountType.MORE_THAN, 19)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 19)); if (game.getState().getBattlefield().countAll(filter, controller.getId(), game) > 0) { controller.won(game); } diff --git a/Mage.Sets/src/mage/cards/m/Meekstone.java b/Mage.Sets/src/mage/cards/m/Meekstone.java index 581a09afe16..1fa62f0b4dd 100644 --- a/Mage.Sets/src/mage/cards/m/Meekstone.java +++ b/Mage.Sets/src/mage/cards/m/Meekstone.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DontUntapInControllersUntapStepAllEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class Meekstone extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 3 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public Meekstone(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MentalMisstep.java b/Mage.Sets/src/mage/cards/m/MentalMisstep.java index be19f82de49..056fb6cb7dd 100644 --- a/Mage.Sets/src/mage/cards/m/MentalMisstep.java +++ b/Mage.Sets/src/mage/cards/m/MentalMisstep.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class MentalMisstep extends CardImpl { private static final FilterSpell FILTER = new FilterSpell("spell with converted mana cost 1"); static { - FILTER.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 1)); + FILTER.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, 1)); } public MentalMisstep(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java b/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java index e5695ff9abc..970191eaf2d 100644 --- a/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/m/MentorOfTheMeek.java @@ -29,7 +29,7 @@ package mage.cards.m; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; @@ -55,7 +55,7 @@ public class MentorOfTheMeek extends CardImpl { static { filter.add(new AnotherPredicate()); - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public MentorOfTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MerchantShip.java b/Mage.Sets/src/mage/cards/m/MerchantShip.java index 9f883be7db7..c072eac7829 100644 --- a/Mage.Sets/src/mage/cards/m/MerchantShip.java +++ b/Mage.Sets/src/mage/cards/m/MerchantShip.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.AttacksAndIsNotBlockedTriggeredAbility; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; @@ -61,7 +61,7 @@ public class MerchantShip extends CardImpl { this.addAbility(new AttacksAndIsNotBlockedTriggeredAbility(new GainLifeEffect(2))); // When you control no Islands, sacrifice Merchant Ship. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java b/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java index afd975853f0..f237a240e2f 100644 --- a/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java +++ b/Mage.Sets/src/mage/cards/m/MetallurgicSummonings.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.ExileSourceCost; @@ -78,7 +78,7 @@ public class MetallurgicSummonings extends CardImpl { // {3}{U}{U}, Exile Metallurgic Summons: Return all instant and sorcery cards from your graveyard to your hand. Activate this ability only if you control six or more artifacts. Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new MetallurgicSummoningsReturnEffect(), new ManaCostsImpl("{3}{U}{U}"), - new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), CountType.MORE_THAN, 5), + new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), ComparisonType.MORE_THAN, 5), "{3}{U}{U}, Exile {this}: Return all instant and sorcery cards from your graveyard to your hand." + " Activate this ability only if you control six or more artifacts."); ability.addCost(new ExileSourceCost()); diff --git a/Mage.Sets/src/mage/cards/m/MidnightScavengers.java b/Mage.Sets/src/mage/cards/m/MidnightScavengers.java index 913565afb67..88b99e44a01 100644 --- a/Mage.Sets/src/mage/cards/m/MidnightScavengers.java +++ b/Mage.Sets/src/mage/cards/m/MidnightScavengers.java @@ -29,7 +29,7 @@ package mage.cards.m; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.InfoEffect; @@ -54,7 +54,7 @@ public class MidnightScavengers extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public MidnightScavengers(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MightOfTheWild.java b/Mage.Sets/src/mage/cards/m/MightOfTheWild.java index bd59ae941d5..caac65840d5 100644 --- a/Mage.Sets/src/mage/cards/m/MightOfTheWild.java +++ b/Mage.Sets/src/mage/cards/m/MightOfTheWild.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.combat.CantBlockAllEffect; @@ -57,7 +57,7 @@ public class MightOfTheWild extends CardImpl { private static final FilterPermanent filterMode2 = new FilterPermanent("artifact or enchantment"); static { - filterMode1.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filterMode1.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); filterMode2.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.ENCHANTMENT))); } diff --git a/Mage.Sets/src/mage/cards/m/MightyEmergence.java b/Mage.Sets/src/mage/cards/m/MightyEmergence.java index e4924b16db3..d3d8f0d1eab 100644 --- a/Mage.Sets/src/mage/cards/m/MightyEmergence.java +++ b/Mage.Sets/src/mage/cards/m/MightyEmergence.java @@ -27,7 +27,7 @@ */ package mage.cards.m; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.counter.AddCountersTargetEffect; @@ -51,7 +51,7 @@ public class MightyEmergence extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("a creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public MightyEmergence(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MinamoSightbender.java b/Mage.Sets/src/mage/cards/m/MinamoSightbender.java index 56e2dc4b87e..77edc1260a3 100644 --- a/Mage.Sets/src/mage/cards/m/MinamoSightbender.java +++ b/Mage.Sets/src/mage/cards/m/MinamoSightbender.java @@ -29,7 +29,7 @@ package mage.cards.m; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -82,7 +82,7 @@ public class MinamoSightbender extends CardImpl { int manaX = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent newFilter = new FilterCreaturePermanent(new StringBuilder("creature with power ").append(manaX).append(" or less").toString()); - filter.add(new PowerPredicate(CountType.FEWER_THAN, manaX + 1)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, manaX + 1)); Target target = new TargetCreaturePermanent(newFilter); ability.addTarget(target); break; diff --git a/Mage.Sets/src/mage/cards/m/MinotaurTactician.java b/Mage.Sets/src/mage/cards/m/MinotaurTactician.java index 4bf638193c8..36427bc0175 100644 --- a/Mage.Sets/src/mage/cards/m/MinotaurTactician.java +++ b/Mage.Sets/src/mage/cards/m/MinotaurTactician.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -74,12 +74,12 @@ public class MinotaurTactician extends CardImpl { this.addAbility(HasteAbility.getInstance()); // Minotaur Tactician gets +1/+1 as long as you control a white creature. - Condition conditionWhite = new PermanentsOnTheBattlefieldCondition(filterWhite, CountType.MORE_THAN, 0); + Condition conditionWhite = new PermanentsOnTheBattlefieldCondition(filterWhite, ComparisonType.MORE_THAN, 0); Effect effectWhite = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), conditionWhite, ruleWhite); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effectWhite)); // Minotaur Tactician gets +1/+1 as long as you control a blue creature. - Condition conditionBlue = new PermanentsOnTheBattlefieldCondition(filterBlue, CountType.MORE_THAN, 0); + Condition conditionBlue = new PermanentsOnTheBattlefieldCondition(filterBlue, ComparisonType.MORE_THAN, 0); Effect effectBlue = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), conditionBlue, ruleBlue); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effectBlue)); } diff --git a/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java b/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java index a87cbc4f13c..3d5b5845ce3 100644 --- a/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java +++ b/Mage.Sets/src/mage/cards/m/MistmeadowSkulk.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.keyword.LifelinkAbility; import mage.abilities.keyword.ProtectionAbility; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class MistmeadowSkulk extends CardImpl { private static final FilterCard filter = new FilterCard("converted mana cost 3 or greater"); static { - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 2)); } public MistmeadowSkulk(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MistveilPlains.java b/Mage.Sets/src/mage/cards/m/MistveilPlains.java index 0c35e13db3a..164176a82d9 100644 --- a/Mage.Sets/src/mage/cards/m/MistveilPlains.java +++ b/Mage.Sets/src/mage/cards/m/MistveilPlains.java @@ -29,7 +29,7 @@ package mage.cards.m; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.constants.Outcome; import mage.constants.Zone; @@ -76,7 +76,7 @@ public class MistveilPlains extends CardImpl { Zone.BATTLEFIELD, new MistveilPlainsGraveyardToLibraryEffect(), new ManaCostsImpl("{W}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); ability.addTarget(new TargetCardInYourGraveyard()); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/m/MobRule.java b/Mage.Sets/src/mage/cards/m/MobRule.java index 4bc8fbbf07d..f865ac03a0c 100644 --- a/Mage.Sets/src/mage/cards/m/MobRule.java +++ b/Mage.Sets/src/mage/cards/m/MobRule.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.ContinuousEffectImpl; @@ -58,11 +58,11 @@ public class MobRule extends CardImpl { // Choose one // Gain control of all creatures with power 4 or greater until end of turn. Untap those creatures. They gain haste until end of turn. - this.getSpellAbility().addEffect(new MobRuleEffect(CountType.MORE_THAN, 3)); + this.getSpellAbility().addEffect(new MobRuleEffect(ComparisonType.MORE_THAN, 3)); // Gain control of all creatures with power 3 or less until end of turn. Untap those creatures. They gain haste until end of turn. Mode mode = new Mode(); - mode.getEffects().add(new MobRuleEffect(CountType.FEWER_THAN, 4)); + mode.getEffects().add(new MobRuleEffect(ComparisonType.FEWER_THAN, 4)); this.getSpellAbility().addMode(mode); } @@ -78,14 +78,14 @@ public class MobRule extends CardImpl { class MobRuleEffect extends OneShotEffect { - CountType type = null; + ComparisonType type = null; int power = 0; - public MobRuleEffect(CountType type, int power) { + public MobRuleEffect(ComparisonType type, int power) { super(Outcome.GainControl); this.type = type; this.power = power; - if (type == CountType.MORE_THAN) { + if (type == ComparisonType.MORE_THAN) { this.staticText = "Gain control of all creatures with power 4 or greater until end of turn. Untap those creatures. They gain haste until end of turn"; } else { this.staticText = "Gain control of all creatures with power 3 or less until end of turn. Untap those creatures. They gain haste until end of turn"; diff --git a/Mage.Sets/src/mage/cards/m/MoggJailer.java b/Mage.Sets/src/mage/cards/m/MoggJailer.java index a22eb6f3392..7054b02eb84 100644 --- a/Mage.Sets/src/mage/cards/m/MoggJailer.java +++ b/Mage.Sets/src/mage/cards/m/MoggJailer.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantAttackIfDefenderControlsPermanent; @@ -51,7 +51,7 @@ public class MoggJailer extends CardImpl { static final private FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature with power 2 or less"); static { - filter.add(Predicates.and(new PowerPredicate(CountType.FEWER_THAN, 2), Predicates.not(new TappedPredicate()))); + filter.add(Predicates.and(new PowerPredicate(ComparisonType.FEWER_THAN, 2), Predicates.not(new TappedPredicate()))); } public MoggJailer(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/Molder.java b/Mage.Sets/src/mage/cards/m/Molder.java index bf64ef75fe0..b5b2d0aa2bf 100644 --- a/Mage.Sets/src/mage/cards/m/Molder.java +++ b/Mage.Sets/src/mage/cards/m/Molder.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.dynamicvalue.common.ManacostVariableValue; import mage.abilities.effects.common.DestroyTargetEffect; @@ -64,7 +64,7 @@ public class Molder extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterArtifactOrEnchantmentPermanent filter = new FilterArtifactOrEnchantmentPermanent("artifact or enchantment with converted mana cost X"); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); ability.addTarget(new TargetPermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/m/MoonringIsland.java b/Mage.Sets/src/mage/cards/m/MoonringIsland.java index 09145907fca..c978432b12b 100644 --- a/Mage.Sets/src/mage/cards/m/MoonringIsland.java +++ b/Mage.Sets/src/mage/cards/m/MoonringIsland.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; @@ -72,7 +72,7 @@ public class MoonringIsland extends CardImpl { Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new LookLibraryTopCardTargetPlayerEffect(), new ManaCostsImpl("{U}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPlayer()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/m/Mosstodon.java b/Mage.Sets/src/mage/cards/m/Mosstodon.java index 2124aa54b07..a58ce016876 100644 --- a/Mage.Sets/src/mage/cards/m/Mosstodon.java +++ b/Mage.Sets/src/mage/cards/m/Mosstodon.java @@ -28,7 +28,7 @@ package mage.cards.m; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -53,7 +53,7 @@ public class Mosstodon extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public Mosstodon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MouthFeed.java b/Mage.Sets/src/mage/cards/m/MouthFeed.java index 544f3f4f05d..cf53da5c5a1 100644 --- a/Mage.Sets/src/mage/cards/m/MouthFeed.java +++ b/Mage.Sets/src/mage/cards/m/MouthFeed.java @@ -1,6 +1,6 @@ package mage.cards.m; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CreateTokenEffect; @@ -23,7 +23,7 @@ public class MouthFeed extends SplitCard { private static final FilterControlledCreaturePermanent filterCreaturesYouControlPower3orGreater = new FilterControlledCreaturePermanent("creature you control with power 3 or greater."); static { - filterCreaturesYouControlPower3orGreater.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filterCreaturesYouControlPower3orGreater.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public MouthFeed(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/m/MudbrawlerCohort.java b/Mage.Sets/src/mage/cards/m/MudbrawlerCohort.java index f9b1366fe49..cfd43558c98 100644 --- a/Mage.Sets/src/mage/cards/m/MudbrawlerCohort.java +++ b/Mage.Sets/src/mage/cards/m/MudbrawlerCohort.java @@ -30,7 +30,7 @@ package mage.cards.m; import java.util.UUID; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -74,7 +74,7 @@ public class MudbrawlerCohort extends CardImpl { // Haste this.addAbility(HasteAbility.getInstance()); // Mudbrawler Cohort gets +1/+1 as long as you control another red creature. - Condition condition = new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0); + Condition condition = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0); Effect effect = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), condition, rule); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/n/NantukoShaman.java b/Mage.Sets/src/mage/cards/n/NantukoShaman.java index b47fe10d0d0..2201f3014f7 100644 --- a/Mage.Sets/src/mage/cards/n/NantukoShaman.java +++ b/Mage.Sets/src/mage/cards/n/NantukoShaman.java @@ -29,7 +29,7 @@ package mage.cards.n; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.MageInt; import mage.abilities.Ability; @@ -66,7 +66,7 @@ public class NantukoShaman extends CardImpl { // When Nantuko Shaman enters the battlefield, if you control no tapped lands, draw a card. Ability ability = new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1)), - new PermanentsOnTheBattlefieldCondition(filter, CountType.EQUAL_TO, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.EQUAL_TO, 0), "When {this} enters the battlefield, if you control no tapped lands, draw a card"); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/n/NaturalState.java b/Mage.Sets/src/mage/cards/n/NaturalState.java index c0dc08bcbd6..c390da32bec 100644 --- a/Mage.Sets/src/mage/cards/n/NaturalState.java +++ b/Mage.Sets/src/mage/cards/n/NaturalState.java @@ -27,7 +27,7 @@ */ package mage.cards.n; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class NaturalState extends CardImpl { private static final FilterArtifactOrEnchantmentPermanent filter = new FilterArtifactOrEnchantmentPermanent("artifact or enchantment with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public NaturalState(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/n/Necroplasm.java b/Mage.Sets/src/mage/cards/n/Necroplasm.java index 2a3f3db2caf..46b29e9af6b 100644 --- a/Mage.Sets/src/mage/cards/n/Necroplasm.java +++ b/Mage.Sets/src/mage/cards/n/Necroplasm.java @@ -29,7 +29,7 @@ package mage.cards.n; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -105,7 +105,7 @@ class NecroplasmEffect extends OneShotEffect { if (player != null && sourcePermanent != null) { int numCounters = sourcePermanent.getCounters(game).getCount(CounterType.P1P1); FilterCreaturePermanent filter = new FilterCreaturePermanent(); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, numCounters)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, numCounters)); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/n/NehebTheWorthy.java b/Mage.Sets/src/mage/cards/n/NehebTheWorthy.java index efe152b4fd9..5ff5f1f79ac 100644 --- a/Mage.Sets/src/mage/cards/n/NehebTheWorthy.java +++ b/Mage.Sets/src/mage/cards/n/NehebTheWorthy.java @@ -30,7 +30,7 @@ package mage.cards.n; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; @@ -80,7 +80,7 @@ public class NehebTheWorthy extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Duration.WhileOnBattlefield, filter, true))); // As long as you have one or fewer cards in hand, Minotaurs you control get +2/+0. - Condition condition = new CardsInHandCondition(CountType.FEWER_THAN, 2); + Condition condition = new CardsInHandCondition(ComparisonType.FEWER_THAN, 2); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostControlledEffect(2, 0, Duration.WhileOnBattlefield, filter), condition, "As long as you have one or fewer cards in hand, Minotaurs you control gets +2/+0")); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/n/NemesisTrap.java b/Mage.Sets/src/mage/cards/n/NemesisTrap.java index 4c243bf8fad..e3618c5c020 100644 --- a/Mage.Sets/src/mage/cards/n/NemesisTrap.java +++ b/Mage.Sets/src/mage/cards/n/NemesisTrap.java @@ -30,7 +30,7 @@ package mage.cards.n; import java.util.UUID; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.DelayedTriggeredAbility; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -72,7 +72,7 @@ public class NemesisTrap extends CardImpl { this.subtype.add("Trap"); // If a white creature is attacking, you may pay {B}{B} rather than pay Nemesis Trap's mana cost. - this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{B}{B}"), new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0, false))); + this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{B}{B}"), new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0, false))); // Exile target attacking creature. Create a token that's a copy of that creature. Exile it at the beginning of the next end step. this.getSpellAbility().addEffect(new NemesisTrapEffect()); diff --git a/Mage.Sets/src/mage/cards/n/NezumiShortfang.java b/Mage.Sets/src/mage/cards/n/NezumiShortfang.java index 7b663c4ca6c..148c8111ea2 100644 --- a/Mage.Sets/src/mage/cards/n/NezumiShortfang.java +++ b/Mage.Sets/src/mage/cards/n/NezumiShortfang.java @@ -29,7 +29,7 @@ package mage.cards.n; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.condition.Condition; @@ -70,7 +70,7 @@ public class NezumiShortfang extends CardImpl { ability.addTarget(new TargetOpponent()); ability.addEffect(new ConditionalOneShotEffect( new FlipSourceEffect(new StabwhiskerTheOdious()), - new CardsInTargetOpponentHandCondition(CountType.FEWER_THAN, 1), + new CardsInTargetOpponentHandCondition(ComparisonType.FEWER_THAN, 1), "Then if that player has no cards in hand, flip {this}")); this.addAbility(ability); } @@ -136,19 +136,19 @@ class StabwhiskerLoseLifeEffect extends OneShotEffect { class CardsInTargetOpponentHandCondition implements Condition { private Condition condition; - private CountType type; + private ComparisonType type; private int count; public CardsInTargetOpponentHandCondition() { - this(CountType.EQUAL_TO, 0); + this(ComparisonType.EQUAL_TO, 0); } - public CardsInTargetOpponentHandCondition(CountType type, int count) { + public CardsInTargetOpponentHandCondition(ComparisonType type, int count) { this.type = type; this.count = count; } - public CardsInTargetOpponentHandCondition(CountType type, int count, Condition conditionToDecorate) { + public CardsInTargetOpponentHandCondition(ComparisonType type, int count, Condition conditionToDecorate) { this(type, count); this.condition = conditionToDecorate; } @@ -160,7 +160,7 @@ class CardsInTargetOpponentHandCondition implements Condition { if (opponent == null) { return false; } - conditionApplies = CountType.compare(opponent.getHand().size(), type, count); + conditionApplies = ComparisonType.compare(opponent.getHand().size(), type, count); //If a decorated condition exists, check it as well and apply them together. if (this.condition != null) { diff --git a/Mage.Sets/src/mage/cards/n/NightDealings.java b/Mage.Sets/src/mage/cards/n/NightDealings.java index 7d3f88bdcfa..8e4dad060cd 100644 --- a/Mage.Sets/src/mage/cards/n/NightDealings.java +++ b/Mage.Sets/src/mage/cards/n/NightDealings.java @@ -28,7 +28,7 @@ package mage.cards.n; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.Cost; @@ -179,7 +179,7 @@ public class NightDealings extends CardImpl { } FilterNonlandCard filter = new FilterNonlandCard("nonland card with converted mana cost X = " + cmc); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (player.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java b/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java index 9d4d28abca9..99e5abe8673 100644 --- a/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java +++ b/Mage.Sets/src/mage/cards/n/NissaVastwoodSeer.java @@ -28,7 +28,7 @@ package mage.cards.n; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Gender; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -79,7 +79,7 @@ public class NissaVastwoodSeer extends CardImpl { this.addAbility(new TransformAbility()); this.addAbility(new ConditionalTriggeredAbility( new EntersBattlefieldControlledTriggeredAbility(new ExileAndReturnTransformedSourceEffect(Gender.FEMALE), new FilterLandPermanent()), - new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.MORE_THAN, 6, true), + new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.MORE_THAN, 6, true), "Whenever a land enters the battlefield under your control, if you control seven or more lands, exile {this}, then return her to the battlefield transformed under her owner's control.")); } diff --git a/Mage.Sets/src/mage/cards/n/NoContest.java b/Mage.Sets/src/mage/cards/n/NoContest.java index cdc53c9c2c8..798459dc025 100644 --- a/Mage.Sets/src/mage/cards/n/NoContest.java +++ b/Mage.Sets/src/mage/cards/n/NoContest.java @@ -28,7 +28,7 @@ package mage.cards.n; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.FightTargetsEffect; import mage.cards.Card; import mage.cards.CardImpl; @@ -91,7 +91,7 @@ class TargetCreatureWithLessPowerPermanent extends TargetPermanent { } // now check, if another creature has less power and can be targeted FilterCreaturePermanent checkFilter = new FilterCreaturePermanent(); - checkFilter.add(new PowerPredicate(CountType.FEWER_THAN, maxPower)); + checkFilter.add(new PowerPredicate(ComparisonType.FEWER_THAN, maxPower)); for (Permanent permanent : game.getBattlefield().getActivePermanents(checkFilter, sourceControllerId, sourceId, game)) { if (permanent.canBeTargetedBy(sourceCard, sourceControllerId, game)) { return true; @@ -109,7 +109,7 @@ class TargetCreatureWithLessPowerPermanent extends TargetPermanent { int power = firstTarget.getPower().getValue(); // overwrite the filter with the power predicate filter = new FilterCreaturePermanent("creature with power less than " + power); - filter.add(new PowerPredicate(CountType.FEWER_THAN, power)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, power)); } } return super.possibleTargets(sourceId, sourceControllerId, game); diff --git a/Mage.Sets/src/mage/cards/n/NoggleHedgeMage.java b/Mage.Sets/src/mage/cards/n/NoggleHedgeMage.java index cd9d54126bb..45c270e3468 100644 --- a/Mage.Sets/src/mage/cards/n/NoggleHedgeMage.java +++ b/Mage.Sets/src/mage/cards/n/NoggleHedgeMage.java @@ -30,7 +30,7 @@ package mage.cards.n; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -72,12 +72,12 @@ public class NoggleHedgeMage extends CardImpl { this.toughness = new MageInt(2); // When Noggle Hedge-Mage enters the battlefield, if you control two or more Islands, you may tap two target permanents. - Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new TapTargetEffect(), true), new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), rule); + Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new TapTargetEffect(), true), new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), rule); ability.addTarget(new TargetPermanent(2, new FilterPermanent())); this.addAbility(ability); // When Noggle Hedge-Mage enters the battlefield, if you control two or more Mountains, you may have Noggle Hedge-Mage deal 2 damage to target player. - Ability ability2 = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), true), new PermanentsOnTheBattlefieldCondition(filter2, CountType.MORE_THAN, 1), rule2); + Ability ability2 = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), true), new PermanentsOnTheBattlefieldCondition(filter2, ComparisonType.MORE_THAN, 1), rule2); ability2.addTarget(new TargetPlayer()); this.addAbility(ability2); } diff --git a/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java b/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java index dd1fd5d64fd..298e2becf48 100644 --- a/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java +++ b/Mage.Sets/src/mage/cards/n/NotOfThisWorld.java @@ -28,7 +28,7 @@ package mage.cards.n; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; import mage.abilities.effects.common.CounterTargetEffect; @@ -170,7 +170,7 @@ class NotOfThisWorldCondition implements Condition { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature you control with power 7 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 6)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 6)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/n/NoxiousDragon.java b/Mage.Sets/src/mage/cards/n/NoxiousDragon.java index 5ffc1a9ba71..2879510b4f3 100644 --- a/Mage.Sets/src/mage/cards/n/NoxiousDragon.java +++ b/Mage.Sets/src/mage/cards/n/NoxiousDragon.java @@ -29,7 +29,7 @@ package mage.cards.n; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.FlyingAbility; @@ -51,7 +51,7 @@ public class NoxiousDragon extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public NoxiousDragon(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/ONaginata.java b/Mage.Sets/src/mage/cards/o/ONaginata.java index ce1b6d6af1d..64f0a3b52c6 100644 --- a/Mage.Sets/src/mage/cards/o/ONaginata.java +++ b/Mage.Sets/src/mage/cards/o/ONaginata.java @@ -28,7 +28,7 @@ package mage.cards.o; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.AttachableToRestrictedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -59,7 +59,7 @@ public class ONaginata extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature with 3 or more power"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public ONaginata(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OjutaisCommand.java b/Mage.Sets/src/mage/cards/o/OjutaisCommand.java index 5617ffe783b..4e2d82ac9d2 100644 --- a/Mage.Sets/src/mage/cards/o/OjutaisCommand.java +++ b/Mage.Sets/src/mage/cards/o/OjutaisCommand.java @@ -27,7 +27,7 @@ */ package mage.cards.o; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.CounterTargetEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -54,7 +54,7 @@ public class OjutaisCommand extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } private static final FilterSpell filter2 = new FilterSpell("creature spell"); diff --git a/Mage.Sets/src/mage/cards/o/OketraTheTrue.java b/Mage.Sets/src/mage/cards/o/OketraTheTrue.java index a44e16c5c32..42adc84d253 100644 --- a/Mage.Sets/src/mage/cards/o/OketraTheTrue.java +++ b/Mage.Sets/src/mage/cards/o/OketraTheTrue.java @@ -30,7 +30,7 @@ package mage.cards.o; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -122,7 +122,7 @@ class OketraTheTrueRestrictionEffect extends RestrictionEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { int permanentsOnBattlefield = game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game); - return (CountType.compare(permanentsOnBattlefield, CountType.FEWER_THAN, 4)); + return (ComparisonType.compare(permanentsOnBattlefield, ComparisonType.FEWER_THAN, 4)); } return true; } // do not apply to other creatures. diff --git a/Mage.Sets/src/mage/cards/o/OpalLakeGatekeepers.java b/Mage.Sets/src/mage/cards/o/OpalLakeGatekeepers.java index 098a902695d..93c017c3dd4 100644 --- a/Mage.Sets/src/mage/cards/o/OpalLakeGatekeepers.java +++ b/Mage.Sets/src/mage/cards/o/OpalLakeGatekeepers.java @@ -30,7 +30,7 @@ package mage.cards.o; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.MageInt; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -66,7 +66,7 @@ public class OpalLakeGatekeepers extends CardImpl { // When Opal Lake Gatekeepers enters the battlefield, if you control two or more Gates, you may draw a card. this.addAbility(new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1)), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), "When Opal Lake Gatekeepers enters the battlefield, if you control two or more Gates, you may draw a card.")); } diff --git a/Mage.Sets/src/mage/cards/o/Ophiomancer.java b/Mage.Sets/src/mage/cards/o/Ophiomancer.java index 23253544fdd..3f5d4646fd5 100644 --- a/Mage.Sets/src/mage/cards/o/Ophiomancer.java +++ b/Mage.Sets/src/mage/cards/o/Ophiomancer.java @@ -29,7 +29,7 @@ package mage.cards.o; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -60,7 +60,7 @@ public class Ophiomancer extends CardImpl { // At the beginning of each upkeep, if you control no Snakes, create a 1/1 black Snake creature token with deathtouch. this.addAbility(new ConditionalTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new OphiomancerSnakeToken()), TargetController.ANY, false, false), - new PermanentsOnTheBattlefieldCondition(new FilterCreaturePermanent("Snake", "no Snakes"), CountType.EQUAL_TO, 0), + new PermanentsOnTheBattlefieldCondition(new FilterCreaturePermanent("Snake", "no Snakes"), ComparisonType.EQUAL_TO, 0), "At the beginning of each upkeep, if you control no Snakes, create a 1/1 black Snake creature token with deathtouch.")); } diff --git a/Mage.Sets/src/mage/cards/o/OrcishVeteran.java b/Mage.Sets/src/mage/cards/o/OrcishVeteran.java index b6e5fa271c2..b77d5296491 100644 --- a/Mage.Sets/src/mage/cards/o/OrcishVeteran.java +++ b/Mage.Sets/src/mage/cards/o/OrcishVeteran.java @@ -29,7 +29,7 @@ package mage.cards.o; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -57,7 +57,7 @@ public class OrcishVeteran extends CardImpl { static { filter.add(new ColorPredicate(ObjectColor.WHITE)); - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public OrcishVeteran(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java b/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java index e4fef8656e5..82d2bbaf93d 100644 --- a/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java +++ b/Mage.Sets/src/mage/cards/o/OrderOfWhiteclay.java @@ -29,7 +29,7 @@ package mage.cards.o; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.UntapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -55,7 +55,7 @@ public class OrderOfWhiteclay extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public OrderOfWhiteclay(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Orgg.java b/Mage.Sets/src/mage/cards/o/Orgg.java index abcded634f4..6a49cb0f305 100644 --- a/Mage.Sets/src/mage/cards/o/Orgg.java +++ b/Mage.Sets/src/mage/cards/o/Orgg.java @@ -28,7 +28,7 @@ package mage.cards.o; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantAttackIfDefenderControlsPermanent; @@ -55,8 +55,8 @@ public class Orgg extends CardImpl { static final private FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter.add(Predicates.and(new PowerPredicate(CountType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); - filter2.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(Predicates.and(new PowerPredicate(ComparisonType.MORE_THAN, 2), Predicates.not(new TappedPredicate()))); + filter2.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public Orgg(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{R}{R}"); diff --git a/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java b/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java index 077c040ee32..5c5bd2a0976 100644 --- a/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java +++ b/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java @@ -30,7 +30,7 @@ package mage.cards.o; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.SuperType; @@ -76,7 +76,7 @@ public class OrochiEggwatcher extends CardImpl { ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SnakeToken()), new ManaCostsImpl("{2}{G}")); ability.addCost(new TapSourceCost()); ability.addEffect(new ConditionalOneShotEffect(new FlipSourceEffect(new ShidakoBroodmistress()), - new PermanentsOnTheBattlefieldCondition(new FilterControlledCreaturePermanent(), CountType.MORE_THAN, 9), "If you control ten or more creatures, flip {this}")); + new PermanentsOnTheBattlefieldCondition(new FilterControlledCreaturePermanent(), ComparisonType.MORE_THAN, 9), "If you control ten or more creatures, flip {this}")); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/o/OrzhovCharm.java b/Mage.Sets/src/mage/cards/o/OrzhovCharm.java index 17c200d1e42..e62686d5b2d 100644 --- a/Mage.Sets/src/mage/cards/o/OrzhovCharm.java +++ b/Mage.Sets/src/mage/cards/o/OrzhovCharm.java @@ -28,7 +28,7 @@ package mage.cards.o; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; @@ -58,7 +58,7 @@ public class OrzhovCharm extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 1 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public OrzhovCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/OutlandBoar.java b/Mage.Sets/src/mage/cards/o/OutlandBoar.java index 0519963e8f5..0891dabcd1e 100644 --- a/Mage.Sets/src/mage/cards/o/OutlandBoar.java +++ b/Mage.Sets/src/mage/cards/o/OutlandBoar.java @@ -28,7 +28,7 @@ package mage.cards.o; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class OutlandBoar extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public OutlandBoar(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/o/Overload.java b/Mage.Sets/src/mage/cards/o/Overload.java index decac7c5407..2437159cdd3 100644 --- a/Mage.Sets/src/mage/cards/o/Overload.java +++ b/Mage.Sets/src/mage/cards/o/Overload.java @@ -28,7 +28,7 @@ package mage.cards.o; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.condition.common.KickedCondition; import mage.abilities.effects.common.DestroyTargetEffect; @@ -53,8 +53,8 @@ public class Overload extends CardImpl { private static final FilterArtifactPermanent filter5 = new FilterArtifactPermanent("artifact if its converted mana cost is 5 or less"); static { - filter2.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); - filter5.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter2.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); + filter5.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public Overload(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/Paleoloth.java b/Mage.Sets/src/mage/cards/p/Paleoloth.java index eced58d7bf8..144c189ec93 100644 --- a/Mage.Sets/src/mage/cards/p/Paleoloth.java +++ b/Mage.Sets/src/mage/cards/p/Paleoloth.java @@ -29,7 +29,7 @@ package mage.cards.p; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.cards.CardImpl; @@ -53,7 +53,7 @@ public class Paleoloth extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("another creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); filter.add(new AnotherPredicate()); } diff --git a/Mage.Sets/src/mage/cards/p/PanopticMirror.java b/Mage.Sets/src/mage/cards/p/PanopticMirror.java index b0dd19533f0..0e8d877450d 100644 --- a/Mage.Sets/src/mage/cards/p/PanopticMirror.java +++ b/Mage.Sets/src/mage/cards/p/PanopticMirror.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -100,7 +100,7 @@ class PanopticMirrorExileEffect extends OneShotEffect { int count = source.getManaCostsToPay().getX(); FilterInstantOrSorceryCard filter = new FilterInstantOrSorceryCard("instant or sorcery card with converted mana cost equal to " + count); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, count)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, count)); String choiceText = "Exile a " + filter.getMessage() + " from your hand?"; Player player = game.getPlayer(source.getControllerId()); diff --git a/Mage.Sets/src/mage/cards/p/PaupersCage.java b/Mage.Sets/src/mage/cards/p/PaupersCage.java index 00ddde543e7..33c78dda574 100644 --- a/Mage.Sets/src/mage/cards/p/PaupersCage.java +++ b/Mage.Sets/src/mage/cards/p/PaupersCage.java @@ -29,7 +29,7 @@ package mage.cards.p; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; @@ -53,7 +53,7 @@ public class PaupersCage extends CardImpl { // At the beginning of each opponent's upkeep, if that player has two or fewer cards in hand, Paupers' Cage deals 2 damage to him or her. TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), TargetController.OPPONENT, false, true); - CardsInHandCondition condition = new CardsInHandCondition(CountType.FEWER_THAN, 3); + CardsInHandCondition condition = new CardsInHandCondition(ComparisonType.FEWER_THAN, 3); this.addAbility(new ConditionalTriggeredAbility(ability, condition, "At the beginning of each opponent's upkeep, if that player has two or fewer cards in hand, {this} deals 2 damage to him or her.")); } diff --git a/Mage.Sets/src/mage/cards/p/Pendelhaven.java b/Mage.Sets/src/mage/cards/p/Pendelhaven.java index 24ec78df3b5..424127d32a7 100644 --- a/Mage.Sets/src/mage/cards/p/Pendelhaven.java +++ b/Mage.Sets/src/mage/cards/p/Pendelhaven.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -53,8 +53,8 @@ public class Pendelhaven extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("1/1 creature"); static { - filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); - filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(ComparisonType.EQUAL_TO, 1)); } public Pendelhaven(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PendelhavenElder.java b/Mage.Sets/src/mage/cards/p/PendelhavenElder.java index 1094e600463..c6036639d6d 100644 --- a/Mage.Sets/src/mage/cards/p/PendelhavenElder.java +++ b/Mage.Sets/src/mage/cards/p/PendelhavenElder.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.continuous.BoostAllEffect; @@ -53,8 +53,8 @@ public class PendelhavenElder extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("each 1/1 creature you control"); static { - filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); - filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(ComparisonType.EQUAL_TO, 1)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/p/Peppersmoke.java b/Mage.Sets/src/mage/cards/p/Peppersmoke.java index 2544bf42e5d..d5d85bc2401 100644 --- a/Mage.Sets/src/mage/cards/p/Peppersmoke.java +++ b/Mage.Sets/src/mage/cards/p/Peppersmoke.java @@ -29,7 +29,7 @@ package mage.cards.p; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.constants.Duration; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -62,7 +62,7 @@ public class Peppersmoke extends CardImpl { this.getSpellAbility().addEffect(new BoostTargetEffect(-1,-1,Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new DrawCardSourceControllerEffect(1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0), "If you control a Faerie, draw a card")); } diff --git a/Mage.Sets/src/mage/cards/p/PerniciousDeed.java b/Mage.Sets/src/mage/cards/p/PerniciousDeed.java index bbe3417a589..12a7cc322b5 100644 --- a/Mage.Sets/src/mage/cards/p/PerniciousDeed.java +++ b/Mage.Sets/src/mage/cards/p/PerniciousDeed.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.costs.mana.VariableManaCost; @@ -103,7 +103,7 @@ class PerniciousDeedEffect extends OneShotEffect { new CardTypePredicate(CardType.ARTIFACT), new CardTypePredicate(CardType.CREATURE), new CardTypePredicate(CardType.ENCHANTMENT))); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { diff --git a/Mage.Sets/src/mage/cards/p/PillarOfLight.java b/Mage.Sets/src/mage/cards/p/PillarOfLight.java index 9699c56e3b2..79decd6aa88 100644 --- a/Mage.Sets/src/mage/cards/p/PillarOfLight.java +++ b/Mage.Sets/src/mage/cards/p/PillarOfLight.java @@ -27,7 +27,7 @@ */ package mage.cards.p; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.ExileTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class PillarOfLight extends CardImpl { static private final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); } public PillarOfLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PirateShip.java b/Mage.Sets/src/mage/cards/p/PirateShip.java index 2907d211569..05885e4407b 100644 --- a/Mage.Sets/src/mage/cards/p/PirateShip.java +++ b/Mage.Sets/src/mage/cards/p/PirateShip.java @@ -29,7 +29,7 @@ package mage.cards.p; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -67,7 +67,7 @@ public class PirateShip extends CardImpl { this.addAbility(ability); // When you control no Islands, sacrifice Pirate Ship. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/p/Plaguebearer.java b/Mage.Sets/src/mage/cards/p/Plaguebearer.java index aed808942d3..d0f9eb6c238 100644 --- a/Mage.Sets/src/mage/cards/p/Plaguebearer.java +++ b/Mage.Sets/src/mage/cards/p/Plaguebearer.java @@ -30,7 +30,7 @@ package mage.cards.p; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; @@ -80,7 +80,7 @@ public class Plaguebearer extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterCreaturePermanent filter = new FilterCreaturePermanent(new StringBuilder("nonblack creature with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); Target target = new TargetPermanent(filter); ability.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/p/PorphyryNodes.java b/Mage.Sets/src/mage/cards/p/PorphyryNodes.java index 11ed59078d9..48cc3ff7077 100644 --- a/Mage.Sets/src/mage/cards/p/PorphyryNodes.java +++ b/Mage.Sets/src/mage/cards/p/PorphyryNodes.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.StateTriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -117,7 +117,7 @@ class PorphyryNodesEffect extends OneShotEffect { } if (multipleExist) { FilterCreaturePermanent filter = new FilterCreaturePermanent("one of the creatures with the least power"); - filter.add(new PowerPredicate(CountType.EQUAL_TO, leastPower)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, leastPower)); Target target = new TargetPermanent(filter); target.setNotTarget(true); if (target.canChoose(source.getSourceId(), source.getControllerId(), game)) { diff --git a/Mage.Sets/src/mage/cards/p/PostmortemLunge.java b/Mage.Sets/src/mage/cards/p/PostmortemLunge.java index 778637feef9..7fa12f44eb0 100644 --- a/Mage.Sets/src/mage/cards/p/PostmortemLunge.java +++ b/Mage.Sets/src/mage/cards/p/PostmortemLunge.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -78,7 +78,7 @@ public class PostmortemLunge extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue + 1)); ability.getTargets().add(new TargetCardInYourGraveyard(filter)); } } diff --git a/Mage.Sets/src/mage/cards/p/PrairieStream.java b/Mage.Sets/src/mage/cards/p/PrairieStream.java index df0c62b8f19..d891564f35a 100644 --- a/Mage.Sets/src/mage/cards/p/PrairieStream.java +++ b/Mage.Sets/src/mage/cards/p/PrairieStream.java @@ -27,7 +27,7 @@ */ package mage.cards.p; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -63,7 +63,7 @@ public class PrairieStream extends CardImpl { this.subtype.add("Island"); // Prairie Stream enters the battlefield tapped unless you control two or more basic lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); String abilityText = "tapped unless you control two or more basic lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new WhiteManaAbility()); diff --git a/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java b/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java index cb7d5246d5b..5414acacb15 100644 --- a/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java +++ b/Mage.Sets/src/mage/cards/p/ProclamationOfRebirth.java @@ -27,7 +27,7 @@ */ package mage.cards.p; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.ForecastAbility; @@ -49,8 +49,8 @@ public class ProclamationOfRebirth extends CardImpl { private static final FilterCreatureCard filter1 = new FilterCreatureCard("creature card with converted mana cost {1} or less from your graveyard"); private static final FilterCreatureCard filter3 = new FilterCreatureCard("creature cards with converted mana cost {1} or less from your graveyard"); static { - filter1.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); - filter3.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter1.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); + filter3.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public ProclamationOfRebirth(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{W}"); diff --git a/Mage.Sets/src/mage/cards/p/ProfaneCommand.java b/Mage.Sets/src/mage/cards/p/ProfaneCommand.java index a0ddf7c210c..e3262630fb7 100644 --- a/Mage.Sets/src/mage/cards/p/ProfaneCommand.java +++ b/Mage.Sets/src/mage/cards/p/ProfaneCommand.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.ManacostVariableValue; @@ -102,7 +102,7 @@ public class ProfaneCommand extends CardImpl { mode.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue + 1)); mode.getTargets().add(new TargetCardInYourGraveyard(filter)); } if (effect instanceof GainAbilityTargetEffect) { diff --git a/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java b/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java index 8596fda80dd..58a758264f3 100644 --- a/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java +++ b/Mage.Sets/src/mage/cards/p/ProfanerOfTheDead.java @@ -29,7 +29,7 @@ package mage.cards.p; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ExploitCreatureTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.abilities.keyword.ExploitAbility; @@ -95,7 +95,7 @@ class ProfanerOfTheDeadReturnEffect extends OneShotEffect { if (controller != null && exploitedCreature != null) { FilterCreaturePermanent filter = new FilterCreaturePermanent(); filter.add(new ControllerPredicate(TargetController.OPPONENT)); - filter.add(new ToughnessPredicate(CountType.FEWER_THAN, exploitedCreature.getToughness().getValue())); + filter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, exploitedCreature.getToughness().getValue())); Cards cardsToHand = new CardsImpl(); for (Permanent permanent : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)) { cardsToHand.add(permanent); diff --git a/Mage.Sets/src/mage/cards/p/Prohibit.java b/Mage.Sets/src/mage/cards/p/Prohibit.java index 55c3d9ab482..7d74e820102 100644 --- a/Mage.Sets/src/mage/cards/p/Prohibit.java +++ b/Mage.Sets/src/mage/cards/p/Prohibit.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.condition.common.KickedCondition; import mage.abilities.effects.common.CounterTargetEffect; @@ -53,8 +53,8 @@ public class Prohibit extends CardImpl { private static final FilterSpell filter4 = new FilterSpell("spell if its converted mana cost is 4 or less"); static { - filter2.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); - filter4.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter2.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); + filter4.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public Prohibit(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/ProteanHulk.java b/Mage.Sets/src/mage/cards/p/ProteanHulk.java index 1b0fc98a550..80a337b03f2 100644 --- a/Mage.Sets/src/mage/cards/p/ProteanHulk.java +++ b/Mage.Sets/src/mage/cards/p/ProteanHulk.java @@ -29,7 +29,7 @@ package mage.cards.p; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.*; @@ -111,7 +111,7 @@ class ProteanHulkEffect extends OneShotEffect { int librarySearchLimit = event.getAmount(); FilterCard filter = new FilterCreatureCard("number of creature cards with total converted mana cost 6 or less (6 CMC left)"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, manaCostLeftToFetch + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, manaCostLeftToFetch + 1)); TargetCardInLibrary target = new TargetCardInLibrary(0, 1, filter); target.setCardLimit(librarySearchLimit); @@ -130,7 +130,7 @@ class ProteanHulkEffect extends OneShotEffect { } manaCostLeftToFetch -= card.getConvertedManaCost(); filter = new FilterCreatureCard("number of creature cards with total converted mana cost 6 or less (" + manaCostLeftToFetch + " CMC left)"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, manaCostLeftToFetch + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, manaCostLeftToFetch + 1)); target = new TargetCardInLibrary(0, 1, filter); target.setCardLimit(librarySearchLimit); } diff --git a/Mage.Sets/src/mage/cards/p/PuncturingLight.java b/Mage.Sets/src/mage/cards/p/PuncturingLight.java index 5853e632a91..3ddf26d88ed 100644 --- a/Mage.Sets/src/mage/cards/p/PuncturingLight.java +++ b/Mage.Sets/src/mage/cards/p/PuncturingLight.java @@ -27,7 +27,7 @@ */ package mage.cards.p; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -48,7 +48,7 @@ public class PuncturingLight extends CardImpl { private static final FilterCreaturePermanent filter = new FilterAttackingOrBlockingCreature("attacking or blocking creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public PuncturingLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java b/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java index a79427423ae..144f920c214 100644 --- a/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java +++ b/Mage.Sets/src/mage/cards/p/PuppetsVerdict.java @@ -28,7 +28,7 @@ package mage.cards.p; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -84,14 +84,14 @@ class PuppetsVerdictEffect extends OneShotEffect { if (controller.flipCoin(game)) { FilterCreaturePermanent filterPower2OrLess = new FilterCreaturePermanent("all creatures power 2 or less"); - filterPower2OrLess.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filterPower2OrLess.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); for (Permanent permanent: game.getBattlefield().getAllActivePermanents(filterPower2OrLess, game)) { permanent.destroy(source.getSourceId(), game, false); } return true; } else { FilterCreaturePermanent filterPower3OrGreater = new FilterCreaturePermanent("all creatures power 3 or greater"); - filterPower3OrGreater.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filterPower3OrGreater.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); for (Permanent permanent: game.getBattlefield().getAllActivePermanents(filterPower3OrGreater, game)) { permanent.destroy(source.getSourceId(), game, false); } diff --git a/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java b/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java index 110dcd673a2..f7a776ad24f 100644 --- a/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java +++ b/Mage.Sets/src/mage/cards/q/QuillmaneBaku.java @@ -29,7 +29,7 @@ package mage.cards.q; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.costs.Cost; @@ -92,7 +92,7 @@ public class QuillmaneBaku extends CardImpl { } ability.getTargets().clear(); FilterCreaturePermanent newFilter = new FilterCreaturePermanent("creature with converted mana cost " + maxConvManaCost + " or less"); - newFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, maxConvManaCost + 1)); + newFilter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, maxConvManaCost + 1)); TargetCreaturePermanent target = new TargetCreaturePermanent(newFilter); ability.getTargets().add(target); } diff --git a/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java b/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java index f34aaea9a2d..22c67cf2f21 100644 --- a/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java +++ b/Mage.Sets/src/mage/cards/r/RadiantsJudgment.java @@ -27,7 +27,7 @@ */ package mage.cards.r; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.CyclingAbility; @@ -48,7 +48,7 @@ public class RadiantsJudgment extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public RadiantsJudgment(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{W}"); diff --git a/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java b/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java index 2742bf195d3..95be5fa5bbb 100644 --- a/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java +++ b/Mage.Sets/src/mage/cards/r/RakeclawGargantuan.java @@ -28,7 +28,7 @@ package mage.cards.r; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -53,7 +53,7 @@ public class RakeclawGargantuan extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public RakeclawGargantuan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java b/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java index b6eda0b1934..0298bd82606 100644 --- a/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java +++ b/Mage.Sets/src/mage/cards/r/RallyTheAncestors.java @@ -28,7 +28,7 @@ package mage.cards.r; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.DelayedTriggeredAbility; import mage.abilities.common.delayed.AtTheBeginOfYourNextUpkeepDelayedTriggeredAbility; import mage.abilities.effects.Effect; @@ -99,7 +99,7 @@ class RallyTheAncestorsEffect extends OneShotEffect { if (player != null) { int xValue = source.getManaCostsToPay().getX(); FilterCreatureCard filter = new FilterCreatureCard(); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue + 1)); Set cards = player.getGraveyard().getCards(filter, game); player.moveCards(cards, Zone.BATTLEFIELD, source, game); ArrayList toExile = new ArrayList<>(cards.size()); diff --git a/Mage.Sets/src/mage/cards/r/RamosianCaptain.java b/Mage.Sets/src/mage/cards/r/RamosianCaptain.java index 9d1228a2173..c8a2b52d296 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianCaptain.java +++ b/Mage.Sets/src/mage/cards/r/RamosianCaptain.java @@ -30,7 +30,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -57,7 +57,7 @@ public class RamosianCaptain extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public RamosianCaptain(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianCommander.java b/Mage.Sets/src/mage/cards/r/RamosianCommander.java index 3dbaaf540e2..fc90f9268d5 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianCommander.java +++ b/Mage.Sets/src/mage/cards/r/RamosianCommander.java @@ -30,7 +30,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class RamosianCommander extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 6)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 6)); } public RamosianCommander(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java b/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java index 5291d71e649..8a33bcd5640 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java +++ b/Mage.Sets/src/mage/cards/r/RamosianLieutenant.java @@ -30,7 +30,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class RamosianLieutenant extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public RamosianLieutenant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java b/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java index 0e90889ca7e..205b01bed6e 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java +++ b/Mage.Sets/src/mage/cards/r/RamosianRevivalist.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -55,7 +55,7 @@ public class RamosianRevivalist extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 6)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 6)); } public RamosianRevivalist(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianSergeant.java b/Mage.Sets/src/mage/cards/r/RamosianSergeant.java index 22cf58eb70e..38110eeb6a3 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianSergeant.java +++ b/Mage.Sets/src/mage/cards/r/RamosianSergeant.java @@ -30,7 +30,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class RamosianSergeant extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public RamosianSergeant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java b/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java index edd94c0938e..82258dcdd5f 100644 --- a/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java +++ b/Mage.Sets/src/mage/cards/r/RamosianSkyMarshal.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class RamosianSkyMarshal extends CardImpl { static { filter.add(new SubtypePredicate("Rebel")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 7)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 7)); } public RamosianSkyMarshal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Ramroller.java b/Mage.Sets/src/mage/cards/r/Ramroller.java index c2d887ccd1a..414b4ab57db 100644 --- a/Mage.Sets/src/mage/cards/r/Ramroller.java +++ b/Mage.Sets/src/mage/cards/r/Ramroller.java @@ -30,7 +30,7 @@ package mage.cards.r; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.AttacksEachTurnStaticAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; @@ -65,7 +65,7 @@ public class Ramroller extends CardImpl { // Ramroller attacks each turn if able. this.addAbility(new AttacksEachTurnStaticAbility()); // Ramroller gets +2/+0 as long as you control another artifact. - Condition condition = new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0); + Condition condition = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0); ConditionalContinuousEffect effect = new ConditionalContinuousEffect(new BoostSourceEffect(2, 0, Duration.WhileOnBattlefield), condition, "{this} gets +2/+0 as long as you control another artifact."); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); diff --git a/Mage.Sets/src/mage/cards/r/RangerOfEos.java b/Mage.Sets/src/mage/cards/r/RangerOfEos.java index 0d1905a580c..ac91c4835de 100644 --- a/Mage.Sets/src/mage/cards/r/RangerOfEos.java +++ b/Mage.Sets/src/mage/cards/r/RangerOfEos.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; @@ -52,7 +52,7 @@ public class RangerOfEos extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public RangerOfEos(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RathiAssassin.java b/Mage.Sets/src/mage/cards/r/RathiAssassin.java index 167c4e19403..7c316e0f2be 100644 --- a/Mage.Sets/src/mage/cards/r/RathiAssassin.java +++ b/Mage.Sets/src/mage/cards/r/RathiAssassin.java @@ -30,7 +30,7 @@ package mage.cards.r; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -64,7 +64,7 @@ public class RathiAssassin extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); destroyFilter.add(new TappedPredicate()); destroyFilter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK))); } diff --git a/Mage.Sets/src/mage/cards/r/RathiFiend.java b/Mage.Sets/src/mage/cards/r/RathiFiend.java index 497a2de2b82..60f3ef88889 100644 --- a/Mage.Sets/src/mage/cards/r/RathiFiend.java +++ b/Mage.Sets/src/mage/cards/r/RathiFiend.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -57,7 +57,7 @@ public class RathiFiend extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public RathiFiend(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RathiIntimidator.java b/Mage.Sets/src/mage/cards/r/RathiIntimidator.java index fdd4f806cec..18ab0f804e7 100644 --- a/Mage.Sets/src/mage/cards/r/RathiIntimidator.java +++ b/Mage.Sets/src/mage/cards/r/RathiIntimidator.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -56,7 +56,7 @@ public class RathiIntimidator extends CardImpl { static { filter.add(new SubtypePredicate("Mercenary")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public RathiIntimidator(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RazorvergeThicket.java b/Mage.Sets/src/mage/cards/r/RazorvergeThicket.java index b0a73677f02..810858a04cf 100644 --- a/Mage.Sets/src/mage/cards/r/RazorvergeThicket.java +++ b/Mage.Sets/src/mage/cards/r/RazorvergeThicket.java @@ -29,7 +29,7 @@ package mage.cards.r; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -54,7 +54,7 @@ public class RazorvergeThicket extends CardImpl { public RazorvergeThicket(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 3)); String abilityText = "tap it unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/r/ReaveSoul.java b/Mage.Sets/src/mage/cards/r/ReaveSoul.java index 7576ac724b6..77fc74587ce 100644 --- a/Mage.Sets/src/mage/cards/r/ReaveSoul.java +++ b/Mage.Sets/src/mage/cards/r/ReaveSoul.java @@ -27,7 +27,7 @@ */ package mage.cards.r; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class ReaveSoul extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public ReaveSoul(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReaverDrone.java b/Mage.Sets/src/mage/cards/r/ReaverDrone.java index cb7378fabe2..bef36754179 100644 --- a/Mage.Sets/src/mage/cards/r/ReaverDrone.java +++ b/Mage.Sets/src/mage/cards/r/ReaverDrone.java @@ -29,7 +29,7 @@ package mage.cards.r; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.InvertCondition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -70,7 +70,7 @@ public class ReaverDrone extends CardImpl { // At the beginning of your upkeep, you lose 1 life unless you control another colorless creature. this.addAbility(new BeginningOfUpkeepTriggeredAbility(new ConditionalOneShotEffect( new LoseLifeSourceControllerEffect(1), - new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0, true)), + new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0, true)), "you lose 1 life unless you control another colorless creature"), TargetController.YOU, false)); } diff --git a/Mage.Sets/src/mage/cards/r/RecklessCohort.java b/Mage.Sets/src/mage/cards/r/RecklessCohort.java index 34ecb4ca180..52b8500b2b7 100644 --- a/Mage.Sets/src/mage/cards/r/RecklessCohort.java +++ b/Mage.Sets/src/mage/cards/r/RecklessCohort.java @@ -29,7 +29,7 @@ package mage.cards.r; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalRequirementEffect; @@ -68,7 +68,7 @@ public class RecklessCohort extends CardImpl { // Reckless Cohort attacks each combat if able unless you control another Ally. Effect effect = new ConditionalRequirementEffect( new AttacksIfAbleSourceEffect(Duration.WhileOnBattlefield, true), - new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 1)); effect.setText("{this} attacks each combat if able unless you control another Ally"); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java b/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java index a3334a9ed71..985c1d9205d 100644 --- a/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java +++ b/Mage.Sets/src/mage/cards/r/RecruiterOfTheGuard.java @@ -28,7 +28,7 @@ package mage.cards.r; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class RecruiterOfTheGuard extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card with toughness 2 or less"); static { - filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, 3)); } public RecruiterOfTheGuard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RelentlessDead.java b/Mage.Sets/src/mage/cards/r/RelentlessDead.java index 574d8e4ffd0..a8c19b851c0 100644 --- a/Mage.Sets/src/mage/cards/r/RelentlessDead.java +++ b/Mage.Sets/src/mage/cards/r/RelentlessDead.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.mana.GenericManaCost; @@ -112,7 +112,7 @@ class RelentlessDeadEffect extends OneShotEffect { if (cost.pay(source, game, source.getSourceId(), source.getControllerId(), false, null)) { FilterCard filter = new FilterCard("Another target Zombie card with converted mana cost " + costX); filter.add(new SubtypePredicate("Zombie")); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, costX)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, costX)); filter.add(new AnotherCardPredicate()); TargetCardInYourGraveyard target = new TargetCardInYourGraveyard(filter); if (controller.chooseTarget(outcome, target, source, game)) { diff --git a/Mage.Sets/src/mage/cards/r/RenegadeRallier.java b/Mage.Sets/src/mage/cards/r/RenegadeRallier.java index 7d3320e8601..904aef8c272 100644 --- a/Mage.Sets/src/mage/cards/r/RenegadeRallier.java +++ b/Mage.Sets/src/mage/cards/r/RenegadeRallier.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.RevoltCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -54,7 +54,7 @@ public class RenegadeRallier extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("permanent card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public RenegadeRallier(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Repeal.java b/Mage.Sets/src/mage/cards/r/Repeal.java index b96ce74eae3..b16aa60c175 100644 --- a/Mage.Sets/src/mage/cards/r/Repeal.java +++ b/Mage.Sets/src/mage/cards/r/Repeal.java @@ -28,7 +28,7 @@ package mage.cards.r; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.abilities.effects.common.ReturnToHandTargetEffect; @@ -68,7 +68,7 @@ public class Repeal extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterNonlandPermanent filter = new FilterNonlandPermanent(new StringBuilder("nonland permanent with converted mana cost ").append(xValue).toString()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); ability.addTarget(new TargetNonlandPermanent(filter)); } } diff --git a/Mage.Sets/src/mage/cards/r/Reprisal.java b/Mage.Sets/src/mage/cards/r/Reprisal.java index e19466163c7..3e79c141f29 100644 --- a/Mage.Sets/src/mage/cards/r/Reprisal.java +++ b/Mage.Sets/src/mage/cards/r/Reprisal.java @@ -27,7 +27,7 @@ */ package mage.cards.r; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class Reprisal extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public Reprisal(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ResourcefulReturn.java b/Mage.Sets/src/mage/cards/r/ResourcefulReturn.java index 1a23057c341..34aa50b07fa 100644 --- a/Mage.Sets/src/mage/cards/r/ResourcefulReturn.java +++ b/Mage.Sets/src/mage/cards/r/ResourcefulReturn.java @@ -29,7 +29,7 @@ package mage.cards.r; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -54,7 +54,7 @@ public class ResourcefulReturn extends CardImpl { this.getSpellAbility().addTarget(new TargetCardInYourGraveyard(new FilterCreatureCard("creature card from your graveyard"))); this.getSpellAbility().addEffect(new ReturnToHandTargetEffect()); this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new DrawCardSourceControllerEffect(1), - new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), ComparisonType.MORE_THAN, 0), "If you control an artifact, draw a card")); } diff --git a/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java b/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java index 53e925eb04b..8bc863b5ae7 100644 --- a/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/r/RetributionOfTheMeek.java @@ -27,7 +27,7 @@ */ package mage.cards.r; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyAllEffect; import mage.cards.Card; import mage.cards.CardImpl; @@ -47,7 +47,7 @@ public class RetributionOfTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public RetributionOfTheMeek (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java b/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java index 26b0f9d46c5..8feef5452e6 100644 --- a/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java +++ b/Mage.Sets/src/mage/cards/r/ReturnToTheRanks.java @@ -28,7 +28,7 @@ package mage.cards.r; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.Effect; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.ConvokeAbility; @@ -51,7 +51,7 @@ public class ReturnToTheRanks extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public ReturnToTheRanks(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Reveillark.java b/Mage.Sets/src/mage/cards/r/Reveillark.java index cda1b9d0d54..af2c666ec36 100644 --- a/Mage.Sets/src/mage/cards/r/Reveillark.java +++ b/Mage.Sets/src/mage/cards/r/Reveillark.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.LeavesBattlefieldTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.EvokeAbility; @@ -51,7 +51,7 @@ public class Reveillark extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with power 2 or less from your graveyard"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public Reveillark(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/Reverence.java b/Mage.Sets/src/mage/cards/r/Reverence.java index d54263c2e4c..6d5108d3522 100644 --- a/Mage.Sets/src/mage/cards/r/Reverence.java +++ b/Mage.Sets/src/mage/cards/r/Reverence.java @@ -27,7 +27,7 @@ */ package mage.cards.r; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantAttackYouAllEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ public class Reverence extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Creatures with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public Reverence(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java b/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java index 9a96a52a426..12ff5f1b69d 100644 --- a/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java +++ b/Mage.Sets/src/mage/cards/r/RimewindCryomancer.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; @@ -69,7 +69,7 @@ public class RimewindCryomancer extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new GenericManaCost(1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 3)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 3)); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetActivatedAbility()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java b/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java index b985db5dd04..2ae7d9da400 100644 --- a/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java +++ b/Mage.Sets/src/mage/cards/r/RimewindTaskmage.java @@ -29,7 +29,7 @@ package mage.cards.r; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; @@ -69,7 +69,7 @@ public class RimewindTaskmage extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new GenericManaCost(1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 3)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 3)); ability.addCost(new TapSourceCost()); ability.addTarget(new TargetPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/r/RoarOfJukai.java b/Mage.Sets/src/mage/cards/r/RoarOfJukai.java index 9070e6e1c31..b92ac3b0a7d 100644 --- a/Mage.Sets/src/mage/cards/r/RoarOfJukai.java +++ b/Mage.Sets/src/mage/cards/r/RoarOfJukai.java @@ -30,7 +30,7 @@ package mage.cards.r; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.GainLifeOpponentCost; import mage.abilities.effects.ContinuousEffect; @@ -111,7 +111,7 @@ class RoarOfJukaiEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { - if (new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0).apply(game, source)) { + if (new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0).apply(game, source)) { for (Permanent permanent : game.getBattlefield().getActivePermanents(filterBlocked, source.getControllerId(), source.getSourceId(), game)) { ContinuousEffect effect = new BoostTargetEffect(2, 2, Duration.EndOfTurn); effect.setTargetPointer(new FixedTarget(permanent.getId())); diff --git a/Mage.Sets/src/mage/cards/r/RootboundCrag.java b/Mage.Sets/src/mage/cards/r/RootboundCrag.java index 0760c2f454a..84a54d46918 100644 --- a/Mage.Sets/src/mage/cards/r/RootboundCrag.java +++ b/Mage.Sets/src/mage/cards/r/RootboundCrag.java @@ -30,7 +30,7 @@ package mage.cards.r; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -61,7 +61,7 @@ public class RootboundCrag extends CardImpl { public RootboundCrag(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Mountain or a Forest"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new RedManaAbility()); diff --git a/Mage.Sets/src/mage/cards/r/Rootgrapple.java b/Mage.Sets/src/mage/cards/r/Rootgrapple.java index 54c2380c8c8..d1d1c8588d3 100644 --- a/Mage.Sets/src/mage/cards/r/Rootgrapple.java +++ b/Mage.Sets/src/mage/cards/r/Rootgrapple.java @@ -29,7 +29,7 @@ package mage.cards.r; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.DestroyTargetEffect; @@ -67,7 +67,7 @@ public class Rootgrapple extends CardImpl { // If you control a Treefolk, draw a card. this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new DrawCardSourceControllerEffect(1), - new PermanentsOnTheBattlefieldCondition(filterTreefolk, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filterTreefolk, ComparisonType.MORE_THAN, 0), "If you control a Treefolk, draw a card")); } diff --git a/Mage.Sets/src/mage/cards/r/RunnersBane.java b/Mage.Sets/src/mage/cards/r/RunnersBane.java index e4081f4c61f..a038ccc984d 100644 --- a/Mage.Sets/src/mage/cards/r/RunnersBane.java +++ b/Mage.Sets/src/mage/cards/r/RunnersBane.java @@ -28,7 +28,7 @@ package mage.cards.r; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.AttachEffect; @@ -55,7 +55,7 @@ public class RunnersBane extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public RunnersBane(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}"); diff --git a/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java b/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java index 8abcf74005d..5aed8f10808 100644 --- a/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java +++ b/Mage.Sets/src/mage/cards/s/SacellumGodspeaker.java @@ -30,7 +30,7 @@ package mage.cards.s; import mage.MageInt; import mage.Mana; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.ManaEffect; import mage.abilities.mana.SimpleManaAbility; @@ -80,7 +80,7 @@ class SacellumGodspeakerEffect extends ManaEffect { private static final FilterCreatureCard filter = new FilterCreatureCard("creature cards with power 5 or greater from your hand"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public SacellumGodspeakerEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SalvagingStation.java b/Mage.Sets/src/mage/cards/s/SalvagingStation.java index 45c80cd4afb..cdeab50ce8c 100644 --- a/Mage.Sets/src/mage/cards/s/SalvagingStation.java +++ b/Mage.Sets/src/mage/cards/s/SalvagingStation.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -57,7 +57,7 @@ public class SalvagingStation extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); filter.add(Predicates.not(new CardTypePredicate(CardType.CREATURE))); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public SalvagingStation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java b/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java index 9653372f8c4..4f86689e194 100644 --- a/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java +++ b/Mage.Sets/src/mage/cards/s/SanctumOfUgin.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.costs.common.SacrificeSourceCost; import mage.abilities.effects.Effect; @@ -56,7 +56,7 @@ public class SanctumOfUgin extends CardImpl { static { filter.add(new ColorlessPredicate()); filterSpells.add(new ColorlessPredicate()); - filterSpells.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 6)); + filterSpells.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 6)); } public SanctumOfUgin(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SapseepForest.java b/Mage.Sets/src/mage/cards/s/SapseepForest.java index afd41ac8b29..56cb1d5e9d6 100644 --- a/Mage.Sets/src/mage/cards/s/SapseepForest.java +++ b/Mage.Sets/src/mage/cards/s/SapseepForest.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; @@ -71,7 +71,7 @@ public class SapseepForest extends CardImpl { Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl("{G}"), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/Sarcomancy.java b/Mage.Sets/src/mage/cards/s/Sarcomancy.java index 4cb38ef83fc..ba18ffe7674 100644 --- a/Mage.Sets/src/mage/cards/s/Sarcomancy.java +++ b/Mage.Sets/src/mage/cards/s/Sarcomancy.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -59,7 +59,7 @@ public class Sarcomancy extends CardImpl { // At the beginning of your upkeep, if there are no Zombies on the battlefield, Sarcomancy deals 1 damage to you. this.addAbility(new ConditionalTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new DamageControllerEffect(1), TargetController.YOU, false), - new PermanentsOnTheBattlefieldCondition(new FilterPermanent("Zombie", "Zombies"), CountType.EQUAL_TO, 0, false), + new PermanentsOnTheBattlefieldCondition(new FilterPermanent("Zombie", "Zombies"), ComparisonType.EQUAL_TO, 0, false), "At the beginning of your upkeep, if there are no Zombies on the battlefield, {this} deals 1 damage to you.")); } diff --git a/Mage.Sets/src/mage/cards/s/SarkhansRage.java b/Mage.Sets/src/mage/cards/s/SarkhansRage.java index cf14cab1d25..250342877e8 100644 --- a/Mage.Sets/src/mage/cards/s/SarkhansRage.java +++ b/Mage.Sets/src/mage/cards/s/SarkhansRage.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.DamageControllerEffect; @@ -53,7 +53,7 @@ public class SarkhansRage extends CardImpl { this.getSpellAbility().addEffect(new DamageTargetEffect(5)); this.getSpellAbility().addTarget(new TargetCreatureOrPlayer()); this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new DamageControllerEffect(2), - new PermanentsOnTheBattlefieldCondition(new FilterControlledCreaturePermanent("Dragon","you control no Dragons"), CountType.EQUAL_TO, 0) + new PermanentsOnTheBattlefieldCondition(new FilterControlledCreaturePermanent("Dragon","you control no Dragons"), ComparisonType.EQUAL_TO, 0) )); } diff --git a/Mage.Sets/src/mage/cards/s/SaruliGatekeepers.java b/Mage.Sets/src/mage/cards/s/SaruliGatekeepers.java index 886e324d5e9..70973530cf7 100644 --- a/Mage.Sets/src/mage/cards/s/SaruliGatekeepers.java +++ b/Mage.Sets/src/mage/cards/s/SaruliGatekeepers.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.MageInt; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -66,7 +66,7 @@ public class SaruliGatekeepers extends CardImpl { // When Saruli Gatekeepers enters the battlefield, if you control two or more Gates, gain 7 life. this.addAbility(new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new GainLifeEffect(7)), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), "When {this} enters the battlefield, if you control two or more Gates, gain 7 life.")); } diff --git a/Mage.Sets/src/mage/cards/s/ScaldingTongs.java b/Mage.Sets/src/mage/cards/s/ScaldingTongs.java index b15369a2744..13bc730bb81 100644 --- a/Mage.Sets/src/mage/cards/s/ScaldingTongs.java +++ b/Mage.Sets/src/mage/cards/s/ScaldingTongs.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; @@ -53,7 +53,7 @@ public class ScaldingTongs extends CardImpl { // At the beginning of your upkeep, if you have three or fewer cards in hand, Scalding Tongs deals 1 damage to target opponent. TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), TargetController.YOU, false); ability.addTarget(new TargetOpponent()); - CardsInHandCondition condition = new CardsInHandCondition(CountType.FEWER_THAN, 4); + CardsInHandCondition condition = new CardsInHandCondition(ComparisonType.FEWER_THAN, 4); this.addAbility(new ConditionalTriggeredAbility(ability, condition, "At the beginning of your upkeep, if you have three or fewer cards in hand, {this} deals 1 damage to target opponent.")); } diff --git a/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java b/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java index 690da0c428d..5c405517c11 100644 --- a/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java +++ b/Mage.Sets/src/mage/cards/s/ScourgeOfFleets.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; @@ -108,7 +108,7 @@ class ScourgeOfFleetsEffect extends OneShotEffect { int islands = game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game); FilterPermanent creatureFilter = new FilterCreaturePermanent(); creatureFilter.add(new ControllerPredicate(TargetController.OPPONENT)); - creatureFilter.add(new ToughnessPredicate(CountType.FEWER_THAN, islands + 1)); + creatureFilter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, islands + 1)); Cards cardsToHand = new CardsImpl(); for (Permanent permanent : game.getBattlefield().getActivePermanents(creatureFilter, source.getControllerId(), source.getSourceId(), game)) { cardsToHand.add(permanent); diff --git a/Mage.Sets/src/mage/cards/s/ScrapTrawler.java b/Mage.Sets/src/mage/cards/s/ScrapTrawler.java index 1021c0cf904..aee5beb25ae 100644 --- a/Mage.Sets/src/mage/cards/s/ScrapTrawler.java +++ b/Mage.Sets/src/mage/cards/s/ScrapTrawler.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.ReturnToHandTargetEffect; import mage.cards.CardImpl; @@ -106,7 +106,7 @@ class ScrapTrawlerTriggeredAbility extends TriggeredAbilityImpl { Permanent permanent = ((ZoneChangeEvent) event).getTarget(); if (permanent.getControllerId().equals(this.getControllerId()) && permanent.isArtifact()) { FilterCard filter = new FilterArtifactCard("artifact card in your graveyard with converted mana cost less than " + permanent.getManaCost().convertedManaCost()); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, permanent.getManaCost().convertedManaCost())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, permanent.getManaCost().convertedManaCost())); TargetCardInYourGraveyard target = new TargetCardInYourGraveyard(filter); getTargets().clear(); addTarget(target); diff --git a/Mage.Sets/src/mage/cards/s/ScrollOfOrigins.java b/Mage.Sets/src/mage/cards/s/ScrollOfOrigins.java index 0b03a373ba7..ab2e6e80a4d 100644 --- a/Mage.Sets/src/mage/cards/s/ScrollOfOrigins.java +++ b/Mage.Sets/src/mage/cards/s/ScrollOfOrigins.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.CardsInHandCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; @@ -51,7 +51,7 @@ public class ScrollOfOrigins extends CardImpl { // {2}, {tap}: Draw a card if you have seven or more cards in hand. Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new GenericManaCost(2), - new CardsInHandCondition(CountType.MORE_THAN, 6), + new CardsInHandCondition(ComparisonType.MORE_THAN, 6), "Draw a card if you have seven or more cards in hand."); ability.addCost(new TapSourceCost()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java b/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java index 851df8f7fb5..08f2c532b2f 100644 --- a/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java +++ b/Mage.Sets/src/mage/cards/s/ScuttlingDoomEngine.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.common.DamageTargetEffect; @@ -53,7 +53,7 @@ public class ScuttlingDoomEngine extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public ScuttlingDoomEngine(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SeaSerpent.java b/Mage.Sets/src/mage/cards/s/SeaSerpent.java index bdebd77dd16..097c8c7a00c 100644 --- a/Mage.Sets/src/mage/cards/s/SeaSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SeaSerpent.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -66,7 +66,7 @@ public class SeaSerpent extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackUnlessDefenderControllsPermanent(filter))); // When you control no Islands, sacrifice Sea Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/s/SeachromeCoast.java b/Mage.Sets/src/mage/cards/s/SeachromeCoast.java index f6da72097f0..6402dd3aa77 100644 --- a/Mage.Sets/src/mage/cards/s/SeachromeCoast.java +++ b/Mage.Sets/src/mage/cards/s/SeachromeCoast.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -55,7 +55,7 @@ public class SeachromeCoast extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); // Seachrome Coast enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 3)); String abilityText = "tap it unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/s/SearingLight.java b/Mage.Sets/src/mage/cards/s/SearingLight.java index ff1dc2dd80b..5238a279e91 100644 --- a/Mage.Sets/src/mage/cards/s/SearingLight.java +++ b/Mage.Sets/src/mage/cards/s/SearingLight.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class SearingLight extends CardImpl { private static final FilterAttackingOrBlockingCreature filter = new FilterAttackingOrBlockingCreature("attacking or blocking creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public SearingLight(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Seasinger.java b/Mage.Sets/src/mage/cards/s/Seasinger.java index 388f02d1122..f5a11c31649 100644 --- a/Mage.Sets/src/mage/cards/s/Seasinger.java +++ b/Mage.Sets/src/mage/cards/s/Seasinger.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SkipUntapOptionalAbility; @@ -84,7 +84,7 @@ public class Seasinger extends CardImpl { // When you control no Islands, sacrifice Seasinger. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); // You may choose not to untap Seasinger during your untap step. @@ -93,7 +93,7 @@ public class Seasinger extends CardImpl { // {tap}: Gain control of target creature whose controller controls an Island for as long as you control Seasinger and Seasinger remains tapped. ConditionalContinuousEffect effect = new ConditionalContinuousEffect( new GainControlTargetEffect(Duration.Custom), - new PermanentsOnTheBattlefieldCondition(seasinger, CountType.EQUAL_TO, 1, SourceTappedCondition.instance), rule); + new PermanentsOnTheBattlefieldCondition(seasinger, ComparisonType.EQUAL_TO, 1, SourceTappedCondition.instance), rule); Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new TapSourceCost()); creatureWhoseControllerControlsIsland.add(new ControllerControlsIslandPredicate()); ability.addTarget(new TargetCreaturePermanent(creatureWhoseControllerControlsIsland)); diff --git a/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java b/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java index 4ea0a9fb604..3c1802bfade 100644 --- a/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java +++ b/Mage.Sets/src/mage/cards/s/SelesnyaCharm.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CreateTokenEffect; @@ -55,7 +55,7 @@ public class SelesnyaCharm extends CardImpl { static private final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public SelesnyaCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java b/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java index 9051f8d2c56..69bf2ac1562 100644 --- a/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java +++ b/Mage.Sets/src/mage/cards/s/SelkieHedgeMage.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -76,11 +76,11 @@ public class SelkieHedgeMage extends CardImpl { this.toughness = new MageInt(2); // When Selkie Hedge-Mage enters the battlefield, if you control two or more Forests, you may gain 3 life. - Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new GainLifeEffect(3), true), new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), rule1); + Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new GainLifeEffect(3), true), new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), rule1); this.addAbility(ability); // When Selkie Hedge-Mage enters the battlefield, if you control two or more Islands, you may return target tapped creature to its owner's hand. - Ability ability2 = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect(), true), new PermanentsOnTheBattlefieldCondition(filter2, CountType.MORE_THAN, 1), rule2); + Ability ability2 = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect(), true), new PermanentsOnTheBattlefieldCondition(filter2, ComparisonType.MORE_THAN, 1), rule2); ability2.addTarget(new TargetPermanent(filter3)); this.addAbility(ability2); diff --git a/Mage.Sets/src/mage/cards/s/SenatorBailOrgana.java b/Mage.Sets/src/mage/cards/s/SenatorBailOrgana.java index 97cbb2d7206..61d25993302 100644 --- a/Mage.Sets/src/mage/cards/s/SenatorBailOrgana.java +++ b/Mage.Sets/src/mage/cards/s/SenatorBailOrgana.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -60,7 +60,7 @@ public class SenatorBailOrgana extends CardImpl { // As long as you control four or more creatures, creatures you control get +1/+1. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield), - new PermanentsOnTheBattlefieldCondition(new FilterControlledCreaturePermanent(), CountType.MORE_THAN, 3), + new PermanentsOnTheBattlefieldCondition(new FilterControlledCreaturePermanent(), ComparisonType.MORE_THAN, 3), "As long as you control four or more creatures, creatures you control get +1/+1") )); diff --git a/Mage.Sets/src/mage/cards/s/SerendibDjinn.java b/Mage.Sets/src/mage/cards/s/SerendibDjinn.java index 27be31ae95c..2def83ab79b 100644 --- a/Mage.Sets/src/mage/cards/s/SerendibDjinn.java +++ b/Mage.Sets/src/mage/cards/s/SerendibDjinn.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -68,7 +68,7 @@ public class SerendibDjinn extends CardImpl { this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SerendibDjinnEffect(), TargetController.YOU, false)); // When you control no lands, sacrifice Serendib Djinn. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent(), CountType.EQUAL_TO, 0, + new FilterLandPermanent(), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java b/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java index 8cbf0c1f2f1..6f179c527cc 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java +++ b/Mage.Sets/src/mage/cards/s/ShamanOfTheGreatHunt.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DealsDamageToAPlayerAllTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -60,7 +60,7 @@ public class ShamanOfTheGreatHunt extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature you control with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public ShamanOfTheGreatHunt(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java b/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java index e7e6c88fcef..3237422910d 100644 --- a/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java +++ b/Mage.Sets/src/mage/cards/s/ShamanicRevelation.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount; import mage.abilities.effects.Effect; @@ -50,7 +50,7 @@ public class ShamanicRevelation extends CardImpl { private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creature you control with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public ShamanicRevelation(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/ShelldockIsle.java b/Mage.Sets/src/mage/cards/s/ShelldockIsle.java index 17df9018988..a2097421410 100644 --- a/Mage.Sets/src/mage/cards/s/ShelldockIsle.java +++ b/Mage.Sets/src/mage/cards/s/ShelldockIsle.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.CardsInAnyLibraryCondition; import mage.abilities.costs.common.TapSourceCost; @@ -58,7 +58,7 @@ public class ShelldockIsle extends CardImpl { this.addAbility(new BlueManaAbility()); // {U}, {tap}: You may play the exiled card without paying its mana cost if a library has twenty or fewer cards in it. Ability ability = new ActivateIfConditionActivatedAbility( - Zone.BATTLEFIELD, new HideawayPlayEffect(), new ManaCostsImpl("{U}"), new CardsInAnyLibraryCondition(CountType.FEWER_THAN, 21)); + Zone.BATTLEFIELD, new HideawayPlayEffect(), new ManaCostsImpl("{U}"), new CardsInAnyLibraryCondition(ComparisonType.FEWER_THAN, 21)); ability.addCost(new TapSourceCost()); this.addAbility(ability); } diff --git a/Mage.Sets/src/mage/cards/s/ShelteredValley.java b/Mage.Sets/src/mage/cards/s/ShelteredValley.java index 901cc8b7e5e..36826c540a7 100644 --- a/Mage.Sets/src/mage/cards/s/ShelteredValley.java +++ b/Mage.Sets/src/mage/cards/s/ShelteredValley.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.Condition; @@ -72,7 +72,7 @@ public class ShelteredValley extends CardImpl { this.addAbility(ability); // At the beginning of your upkeep, if you control three or fewer lands, you gain 1 life. - Condition controls = new PermanentsOnTheBattlefieldCondition(filter, CountType.FEWER_THAN, 4); + Condition controls = new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.FEWER_THAN, 4); effect = new ConditionalOneShotEffect(new GainLifeEffect(1), controls); effect.setText("if you control three or fewer lands, you gain 1 life"); ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, effect, TargetController.YOU, false); diff --git a/Mage.Sets/src/mage/cards/s/ShowOfDominance.java b/Mage.Sets/src/mage/cards/s/ShowOfDominance.java index abb24435bff..294e6086e4e 100644 --- a/Mage.Sets/src/mage/cards/s/ShowOfDominance.java +++ b/Mage.Sets/src/mage/cards/s/ShowOfDominance.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; @@ -110,7 +110,7 @@ class ShowOfDominanceEffect extends OneShotEffect { if (highestPower != Integer.MIN_VALUE) { if (selectedCreature == null) { FilterPermanent filter = new FilterCreaturePermanent("creature with power " + highestPower); - filter.add(new PowerPredicate(CountType.EQUAL_TO, highestPower)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, highestPower)); Target target = new TargetPermanent(1, 1, filter, true); if (controller.chooseTarget(outcome, target, source, game)) { selectedCreature = game.getPermanent(target.getFirstTarget()); diff --git a/Mage.Sets/src/mage/cards/s/ShrineOfTheForsakenGods.java b/Mage.Sets/src/mage/cards/s/ShrineOfTheForsakenGods.java index 248677433f6..775bfab7edb 100644 --- a/Mage.Sets/src/mage/cards/s/ShrineOfTheForsakenGods.java +++ b/Mage.Sets/src/mage/cards/s/ShrineOfTheForsakenGods.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.AddConditionalColorlessManaEffect; @@ -66,7 +66,7 @@ public class ShrineOfTheForsakenGods extends CardImpl { Zone.BATTLEFIELD, new AddConditionalColorlessManaEffect(2, new ConditionalSpellManaBuilder(filter)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(new FilterControlledLandPermanent("you control seven or more lands"), CountType.MORE_THAN, 6))); + new PermanentsOnTheBattlefieldCondition(new FilterControlledLandPermanent("you control seven or more lands"), ComparisonType.MORE_THAN, 6))); } public ShrineOfTheForsakenGods(final ShrineOfTheForsakenGods card) { diff --git a/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java b/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java index 365c72e99e6..25311618ae7 100644 --- a/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java +++ b/Mage.Sets/src/mage/cards/s/SidarKondoOfJamuraa.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.RestrictionEffect; @@ -59,7 +59,7 @@ public class SidarKondoOfJamuraa extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public SidarKondoOfJamuraa(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java b/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java index 5f8df8835a3..4829863f6db 100644 --- a/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java +++ b/Mage.Sets/src/mage/cards/s/SightOfTheScalelords.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostControlledEffect; @@ -56,7 +56,7 @@ public class SightOfTheScalelords extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.YOU)); - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); } public SightOfTheScalelords(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Silkwrap.java b/Mage.Sets/src/mage/cards/s/Silkwrap.java index 5258c98795b..3f15621b779 100644 --- a/Mage.Sets/src/mage/cards/s/Silkwrap.java +++ b/Mage.Sets/src/mage/cards/s/Silkwrap.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.OnLeaveReturnExiledToBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -58,7 +58,7 @@ public class Silkwrap extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less an opponent controls"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java b/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java index edc7b9782e6..9cb8416d782 100644 --- a/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java +++ b/Mage.Sets/src/mage/cards/s/SilumgarAssassin.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.TurnedFaceUpSourceTriggeredAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -57,7 +57,7 @@ public class SilumgarAssassin extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or less an opponent controls"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); filter.add(new ControllerPredicate(TargetController.OPPONENT)); } diff --git a/Mage.Sets/src/mage/cards/s/SkeletonShip.java b/Mage.Sets/src/mage/cards/s/SkeletonShip.java index ac31ce488de..8c7107e414b 100644 --- a/Mage.Sets/src/mage/cards/s/SkeletonShip.java +++ b/Mage.Sets/src/mage/cards/s/SkeletonShip.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; @@ -61,7 +61,7 @@ public class SkeletonShip extends CardImpl { // When you control no Islands, sacrifice Skeleton Ship. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); // {tap}: Put a -1/-1 counter on target creature. diff --git a/Mage.Sets/src/mage/cards/s/SkittishKavu.java b/Mage.Sets/src/mage/cards/s/SkittishKavu.java index 21df86a7d35..0f22b6fe30f 100644 --- a/Mage.Sets/src/mage/cards/s/SkittishKavu.java +++ b/Mage.Sets/src/mage/cards/s/SkittishKavu.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.InvertCondition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -69,7 +69,7 @@ public class SkittishKavu extends CardImpl { // Skittish Kavu gets +1/+1 as long as no opponent controls a white or blue creature. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), - new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0, false)), + new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0, false)), "{this} gets +1/+1 as long as no opponent controls a white or blue creature"))); } diff --git a/Mage.Sets/src/mage/cards/s/SkyfireKirin.java b/Mage.Sets/src/mage/cards/s/SkyfireKirin.java index 832669ba61f..d02f720f9a1 100644 --- a/Mage.Sets/src/mage/cards/s/SkyfireKirin.java +++ b/Mage.Sets/src/mage/cards/s/SkyfireKirin.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SpellCastControllerTriggeredAbility; import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.OneShotEffect; @@ -85,7 +85,7 @@ public class SkyfireKirin extends CardImpl { int cmc = spell.getConvertedManaCost(); ability.getTargets().clear(); FilterPermanent filter = new FilterCreaturePermanent(new StringBuilder("creature with converted mana costs of ").append(cmc).toString()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, cmc)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, cmc)); Target target = new TargetPermanent(filter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/s/SkymarkRoc.java b/Mage.Sets/src/mage/cards/s/SkymarkRoc.java index 73bbdba8e47..58b15430cff 100644 --- a/Mage.Sets/src/mage/cards/s/SkymarkRoc.java +++ b/Mage.Sets/src/mage/cards/s/SkymarkRoc.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.ReturnToHandTargetEffect; import mage.abilities.keyword.FlyingAbility; @@ -98,7 +98,7 @@ class SkymarkRocAbility extends TriggeredAbilityImpl { FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player controls with toughness 2 or less"); UUID defenderId = game.getCombat().getDefendingPlayerId(sourceId, game); filter.add(new ControllerIdPredicate(defenderId)); - filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, 3)); this.getTargets().clear(); TargetCreaturePermanent target = new TargetCreaturePermanent(filter); diff --git a/Mage.Sets/src/mage/cards/s/SkywhalersShot.java b/Mage.Sets/src/mage/cards/s/SkywhalersShot.java index d65bbb5bd1c..58fd18c7ca1 100644 --- a/Mage.Sets/src/mage/cards/s/SkywhalersShot.java +++ b/Mage.Sets/src/mage/cards/s/SkywhalersShot.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.keyword.ScryEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class SkywhalersShot extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 3 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public SkywhalersShot(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java b/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java index 7c92e6f4989..25b89997ef9 100644 --- a/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java +++ b/Mage.Sets/src/mage/cards/s/SlipstreamSerpent.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.ManaCostsImpl; @@ -60,7 +60,7 @@ public class SlipstreamSerpent extends CardImpl { // When you control no Islands, sacrifice Slipstream Serpent. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); // Morph {5}{U} diff --git a/Mage.Sets/src/mage/cards/s/SmeltWardGatekeepers.java b/Mage.Sets/src/mage/cards/s/SmeltWardGatekeepers.java index d60cbf20dba..6aba6dd3494 100644 --- a/Mage.Sets/src/mage/cards/s/SmeltWardGatekeepers.java +++ b/Mage.Sets/src/mage/cards/s/SmeltWardGatekeepers.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.TargetController; @@ -78,7 +78,7 @@ public class SmeltWardGatekeepers extends CardImpl { // When Smelt-Ward Gatekeepers enters the battlefield, if you control two or more Gates, gain control of target creature an opponent controls until end of turn. Untap that creature. That creature gains haste until end of turn. Ability ability = new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new GainControlTargetEffect(Duration.EndOfTurn)), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), "When {this} enters the battlefield, if you control two or more Gates, gain control of target creature an opponent controls until end of turn. Untap that creature. That creature gains haste until end of turn."); ability.addEffect(new UntapTargetEffect()); ability.addEffect(new GainAbilityTargetEffect(HasteAbility.getInstance(), Duration.EndOfTurn)); diff --git a/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java b/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java index 8ff260671a2..a0f38a268a8 100644 --- a/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java +++ b/Mage.Sets/src/mage/cards/s/SmiteTheMonstrous.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -46,7 +46,7 @@ public class SmiteTheMonstrous extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public SmiteTheMonstrous(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java b/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java index 46e2d234d0b..30f1f1134de 100644 --- a/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java +++ b/Mage.Sets/src/mage/cards/s/SmolderingMarsh.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -63,7 +63,7 @@ public class SmolderingMarsh extends CardImpl { this.subtype.add("Mountain"); // Smoldering Marsh enters the battlefield tapped unless you control two or more basic lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); String abilityText = "tapped unless you control two or more basic lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new BlackManaAbility()); diff --git a/Mage.Sets/src/mage/cards/s/Smother.java b/Mage.Sets/src/mage/cards/s/Smother.java index ba3c2dbd43e..ea37f907b43 100644 --- a/Mage.Sets/src/mage/cards/s/Smother.java +++ b/Mage.Sets/src/mage/cards/s/Smother.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class Smother extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 3 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public Smother(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java b/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java index 28788a34afe..9ac9d740d4c 100644 --- a/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java +++ b/Mage.Sets/src/mage/cards/s/SneakyHomunculus.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.combat.CantBeBlockedByCreaturesSourceEffect; @@ -52,7 +52,7 @@ public class SneakyHomunculus extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public SneakyHomunculus(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SnuffOut.java b/Mage.Sets/src/mage/cards/s/SnuffOut.java index ac2d4a475d2..1fb430d2971 100644 --- a/Mage.Sets/src/mage/cards/s/SnuffOut.java +++ b/Mage.Sets/src/mage/cards/s/SnuffOut.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.AlternativeCostSourceAbility; import mage.abilities.costs.common.PayLifeCost; @@ -65,7 +65,7 @@ public class SnuffOut extends CardImpl { // If you control a Swamp, you may pay 4 life rather than pay Snuff Out's mana cost. this.addAbility(new AlternativeCostSourceAbility( new PayLifeCost(4), - new PermanentsOnTheBattlefieldCondition(filterSwamp, CountType.MORE_THAN, 0), null)); + new PermanentsOnTheBattlefieldCondition(filterSwamp, ComparisonType.MORE_THAN, 0), null)); // // Destroy target nonblack creature. It can't be regenerated. this.getSpellAbility().addEffect(new DestroyTargetEffect(true)); diff --git a/Mage.Sets/src/mage/cards/s/SolarTide.java b/Mage.Sets/src/mage/cards/s/SolarTide.java index 6502b929c18..d6b6750f977 100644 --- a/Mage.Sets/src/mage/cards/s/SolarTide.java +++ b/Mage.Sets/src/mage/cards/s/SolarTide.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.effects.common.DestroyAllEffect; @@ -52,8 +52,8 @@ public class SolarTide extends CardImpl { private static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures with power 3 or greater"); static { - filter1.add(new PowerPredicate(CountType.FEWER_THAN, 3)); - filter2.add(new PowerPredicate(CountType.MORE_THAN, 2)); + filter1.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); + filter2.add(new PowerPredicate(ComparisonType.MORE_THAN, 2)); } public SolarTide(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java b/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java index 0cb56dac980..f6775e0afb8 100644 --- a/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java +++ b/Mage.Sets/src/mage/cards/s/SoratamiMirrorGuard.java @@ -30,7 +30,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.ReturnToHandChosenControlledPermanentCost; import mage.abilities.costs.mana.GenericManaCost; @@ -58,7 +58,7 @@ public class SoratamiMirrorGuard extends CardImpl { private static final FilterCreaturePermanent filterCreature = new FilterCreaturePermanent("creature with power 2 or less"); static { - filterCreature.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filterCreature.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public SoratamiMirrorGuard(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java b/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java index 4e5d789eef2..17b85546f9b 100644 --- a/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java +++ b/Mage.Sets/src/mage/cards/s/SpearbreakerBehemoth.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -53,7 +53,7 @@ public class SpearbreakerBehemoth extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public SpearbreakerBehemoth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellBlast.java b/Mage.Sets/src/mage/cards/s/SpellBlast.java index 672322895e7..cea2484c227 100644 --- a/Mage.Sets/src/mage/cards/s/SpellBlast.java +++ b/Mage.Sets/src/mage/cards/s/SpellBlast.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; @@ -74,7 +74,7 @@ public class SpellBlast extends CardImpl { int xValue = ability.getManaCostsToPay().getX(); ability.getTargets().clear(); FilterSpell newfilter = new FilterSpell(new StringBuilder("spell with converted mana cost ").append(xValue).toString()); - newfilter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, xValue)); + newfilter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, xValue)); Target target = new TargetSpell(newfilter); ability.addTarget(target); } diff --git a/Mage.Sets/src/mage/cards/s/SpellBurst.java b/Mage.Sets/src/mage/cards/s/SpellBurst.java index 6df1213e3cc..c5a33edeedc 100644 --- a/Mage.Sets/src/mage/cards/s/SpellBurst.java +++ b/Mage.Sets/src/mage/cards/s/SpellBurst.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.effects.common.CounterTargetEffect; import mage.abilities.keyword.BuybackAbility; @@ -64,7 +64,7 @@ public class SpellBurst extends CardImpl { if (ability instanceof SpellAbility) { ability.getTargets().clear(); FilterSpell filter = new FilterSpell("spell with converted mana cost X"); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, ability.getManaCostsToPay().getX())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, ability.getManaCostsToPay().getX())); ability.addTarget(new TargetSpell(filter)); } } diff --git a/Mage.Sets/src/mage/cards/s/SpellQueller.java b/Mage.Sets/src/mage/cards/s/SpellQueller.java index 2ed01071f5f..4b0eb8f7792 100644 --- a/Mage.Sets/src/mage/cards/s/SpellQueller.java +++ b/Mage.Sets/src/mage/cards/s/SpellQueller.java @@ -30,7 +30,7 @@ package mage.cards.s; import mage.MageInt; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.LeavesBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -65,7 +65,7 @@ public class SpellQueller extends CardImpl { private final static FilterSpell filter = new FilterSpell("spell with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public SpellQueller(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellSnare.java b/Mage.Sets/src/mage/cards/s/SpellSnare.java index a66a4e4ba27..886a4a98ca4 100644 --- a/Mage.Sets/src/mage/cards/s/SpellSnare.java +++ b/Mage.Sets/src/mage/cards/s/SpellSnare.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class SpellSnare extends CardImpl { private static final FilterSpell filter = new FilterSpell("spell with converted mana cost 2"); static { - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, 2)); } public SpellSnare(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java b/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java index 6b6be4c98f8..e4612963efd 100644 --- a/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java +++ b/Mage.Sets/src/mage/cards/s/SpellbreakerBehemoth.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.CantBeCounteredControlledEffect; import mage.abilities.effects.common.CantBeCounteredSourceEffect; @@ -55,7 +55,7 @@ public class SpellbreakerBehemoth extends CardImpl { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public SpellbreakerBehemoth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java b/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java index 83f30c611b3..afa9a493007 100644 --- a/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java +++ b/Mage.Sets/src/mage/cards/s/SpellstutterSprite.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; @@ -88,7 +88,7 @@ public class SpellstutterSprite extends CardImpl { if (ability instanceof EntersBattlefieldTriggeredAbility) { int numberFaeries = game.getState().getBattlefield().countAll(filter, ability.getControllerId(), game); FilterSpell xFilter = new FilterSpell(new StringBuilder("spell with converted mana cost ").append(numberFaeries).append(" or less").toString()); - xFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, numberFaeries + 1)); + xFilter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, numberFaeries + 1)); ability.getTargets().clear(); ability.addTarget(new TargetSpell(xFilter)); } diff --git a/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java b/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java index 803ffd24c2b..ca6dbc120b5 100644 --- a/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java +++ b/Mage.Sets/src/mage/cards/s/SpinerockKnoll.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.IntCompareCondition; import mage.abilities.costs.common.TapSourceCost; @@ -89,7 +89,7 @@ public class SpinerockKnoll extends CardImpl { class SpinerockKnollCondition extends IntCompareCondition { SpinerockKnollCondition() { - super(CountType.MORE_THAN, 6); + super(ComparisonType.MORE_THAN, 6); } @Override diff --git a/Mage.Sets/src/mage/cards/s/SpirebluffCanal.java b/Mage.Sets/src/mage/cards/s/SpirebluffCanal.java index fb12010fe5e..68877a6da48 100644 --- a/Mage.Sets/src/mage/cards/s/SpirebluffCanal.java +++ b/Mage.Sets/src/mage/cards/s/SpirebluffCanal.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -53,7 +53,7 @@ public class SpirebluffCanal extends CardImpl { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // Spirebluff Canal enters the battlefield tapped unless you control two or fewer other lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.FEWER_THAN, 3)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.FEWER_THAN, 3)); String abilityText = "tapped unless you control fewer than 3 lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); diff --git a/Mage.Sets/src/mage/cards/s/SpiritMirror.java b/Mage.Sets/src/mage/cards/s/SpiritMirror.java index 7648d3ee077..a49fde06ff3 100644 --- a/Mage.Sets/src/mage/cards/s/SpiritMirror.java +++ b/Mage.Sets/src/mage/cards/s/SpiritMirror.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -69,7 +69,7 @@ public class SpiritMirror extends CardImpl { // At the beginning of your upkeep, if there are no Reflection tokens on the battlefield, create a 2/2 white Reflection creature token. this.addAbility(new ConditionalTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(new CreateTokenEffect(new ReflectionToken()), TargetController.YOU, false), - new PermanentsOnTheBattlefieldCondition(filter, CountType.EQUAL_TO, 0, false), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.EQUAL_TO, 0, false), "At the beginning of your upkeep, if there are no Reflection tokens on the battlefield, create a 2/2 white Reflection creature token")); // {0}: Destroy target Reflection. diff --git a/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java b/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java index c9a00d3bca7..fb47c9e549e 100644 --- a/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java +++ b/Mage.Sets/src/mage/cards/s/StarfieldOfNyx.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -88,7 +88,7 @@ public class StarfieldOfNyx extends CardImpl { // As long as you control five or more enchantments, each other non-Aura enchantment you control is a creature in addition to its other types and has base power and base toughness each equal to its converted mana cost. ConditionalContinuousEffect effect = new ConditionalContinuousEffect( - new StarfieldOfNyxEffect(), new PermanentsOnTheBattlefieldCondition(filterEnchantmentYouControl, CountType.MORE_THAN, 4), rule1); + new StarfieldOfNyxEffect(), new PermanentsOnTheBattlefieldCondition(filterEnchantmentYouControl, ComparisonType.MORE_THAN, 4), rule1); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect)); } diff --git a/Mage.Sets/src/mage/cards/s/StatuteOfDenial.java b/Mage.Sets/src/mage/cards/s/StatuteOfDenial.java index 83d3b00547e..d6ae746ec40 100644 --- a/Mage.Sets/src/mage/cards/s/StatuteOfDenial.java +++ b/Mage.Sets/src/mage/cards/s/StatuteOfDenial.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; import mage.ObjectColor; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.CounterTargetEffect; @@ -62,7 +62,7 @@ public class StatuteOfDenial extends CardImpl { this.getSpellAbility().addTarget(new TargetSpell()); this.getSpellAbility().addEffect(new ConditionalOneShotEffect( new DrawDiscardControllerEffect(1,1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0, true), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0, true), "If you control a blue creature, draw a card, then discard a card")); } diff --git a/Mage.Sets/src/mage/cards/s/Stenchskipper.java b/Mage.Sets/src/mage/cards/s/Stenchskipper.java index dbe49e78993..a0d57145eee 100644 --- a/Mage.Sets/src/mage/cards/s/Stenchskipper.java +++ b/Mage.Sets/src/mage/cards/s/Stenchskipper.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.effects.common.SacrificeSourceEffect; @@ -63,7 +63,7 @@ public class Stenchskipper extends CardImpl { TargetController.ANY, new PermanentsOnTheBattlefieldCondition( new FilterControlledCreaturePermanent("Goblin", "if you control no Goblins"), - CountType.FEWER_THAN, + ComparisonType.FEWER_THAN, 1), false)); } diff --git a/Mage.Sets/src/mage/cards/s/StirTheGrave.java b/Mage.Sets/src/mage/cards/s/StirTheGrave.java index 91b2901a80c..7525dc5c4d7 100644 --- a/Mage.Sets/src/mage/cards/s/StirTheGrave.java +++ b/Mage.Sets/src/mage/cards/s/StirTheGrave.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -61,7 +61,7 @@ public class StirTheGrave extends CardImpl { ability.getTargets().clear(); int xValue = ability.getManaCostsToPay().getX(); FilterCard filter = new FilterCreatureCard("creature card with converted mana cost " + xValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, xValue + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xValue + 1)); ability.getTargets().add(new TargetCardInYourGraveyard(filter)); } diff --git a/Mage.Sets/src/mage/cards/s/StranglingSoot.java b/Mage.Sets/src/mage/cards/s/StranglingSoot.java index c9d63ccfa39..214f1859f10 100644 --- a/Mage.Sets/src/mage/cards/s/StranglingSoot.java +++ b/Mage.Sets/src/mage/cards/s/StranglingSoot.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.FlashbackAbility; @@ -49,7 +49,7 @@ public class StranglingSoot extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughess 3 or less"); static { - filter.add(new ToughnessPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, 4)); } public StranglingSoot(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/StrengthOfArms.java b/Mage.Sets/src/mage/cards/s/StrengthOfArms.java index 3417c37b9ca..6f41beb688d 100644 --- a/Mage.Sets/src/mage/cards/s/StrengthOfArms.java +++ b/Mage.Sets/src/mage/cards/s/StrengthOfArms.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.CreateTokenEffect; @@ -62,7 +62,7 @@ public class StrengthOfArms extends CardImpl { this.getSpellAbility().addEffect(new BoostTargetEffect(2, 2, Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new CreateTokenEffect(new HumanSoldierToken()), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0), "If you control an Equipment, create a 1/1 white Human Soldier creature token.")); } diff --git a/Mage.Sets/src/mage/cards/s/SubterraneanScout.java b/Mage.Sets/src/mage/cards/s/SubterraneanScout.java index 80e4bb1ee07..21c167383e9 100644 --- a/Mage.Sets/src/mage/cards/s/SubterraneanScout.java +++ b/Mage.Sets/src/mage/cards/s/SubterraneanScout.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class SubterraneanScout extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public SubterraneanScout(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SulfurFalls.java b/Mage.Sets/src/mage/cards/s/SulfurFalls.java index 2ccd2920ab6..84ae46a19fe 100644 --- a/Mage.Sets/src/mage/cards/s/SulfurFalls.java +++ b/Mage.Sets/src/mage/cards/s/SulfurFalls.java @@ -28,7 +28,7 @@ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -60,7 +60,7 @@ public class SulfurFalls extends CardImpl { public SulfurFalls(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Island or a Mountain"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new BlueManaAbility()); diff --git a/Mage.Sets/src/mage/cards/s/SultaiFlayer.java b/Mage.Sets/src/mage/cards/s/SultaiFlayer.java index 2b709638d4e..06bc0ca1691 100644 --- a/Mage.Sets/src/mage/cards/s/SultaiFlayer.java +++ b/Mage.Sets/src/mage/cards/s/SultaiFlayer.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.effects.common.GainLifeEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class SultaiFlayer extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature you control with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/s/SunTitan.java b/Mage.Sets/src/mage/cards/s/SunTitan.java index 9d054d1a3c1..7fb74f6ea07 100644 --- a/Mage.Sets/src/mage/cards/s/SunTitan.java +++ b/Mage.Sets/src/mage/cards/s/SunTitan.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldOrAttacksSourceTriggeredAbility; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.VigilanceAbility; @@ -51,7 +51,7 @@ public class SunTitan extends CardImpl { private static final FilterPermanentCard filter = new FilterPermanentCard("permanent card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public SunTitan(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunforger.java b/Mage.Sets/src/mage/cards/s/Sunforger.java index 85642991477..d507fef29c0 100644 --- a/Mage.Sets/src/mage/cards/s/Sunforger.java +++ b/Mage.Sets/src/mage/cards/s/Sunforger.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.SpellAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -127,7 +127,7 @@ class SunforgerEffect extends OneShotEffect { new ColorPredicate(ObjectColor.RED), new ColorPredicate(ObjectColor.WHITE))); filter.add(new CardTypePredicate(CardType.INSTANT)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); filter.add(new CardCanBeCastPredicate(source.getControllerId())); if (controller.searchLibrary(target, game, controller.getId())) { UUID targetId = target.getFirstTarget(); diff --git a/Mage.Sets/src/mage/cards/s/SunkenHollow.java b/Mage.Sets/src/mage/cards/s/SunkenHollow.java index f6f875e5156..0fe798a9163 100644 --- a/Mage.Sets/src/mage/cards/s/SunkenHollow.java +++ b/Mage.Sets/src/mage/cards/s/SunkenHollow.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; import mage.abilities.condition.InvertCondition; @@ -63,7 +63,7 @@ public class SunkenHollow extends CardImpl { this.subtype.add("Swamp"); // Sunken Hollow enters the battlefield tapped unless you control two or more basic lands. - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1)); String abilityText = "tapped unless you control two or more basic lands"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new BlueManaAbility()); diff --git a/Mage.Sets/src/mage/cards/s/SunpetalGrove.java b/Mage.Sets/src/mage/cards/s/SunpetalGrove.java index 999081c4b22..07842502233 100644 --- a/Mage.Sets/src/mage/cards/s/SunpetalGrove.java +++ b/Mage.Sets/src/mage/cards/s/SunpetalGrove.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -61,7 +61,7 @@ public class SunpetalGrove extends CardImpl { public SunpetalGrove(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Forest or a Plains"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new GreenManaAbility()); diff --git a/Mage.Sets/src/mage/cards/s/SunseedNurturer.java b/Mage.Sets/src/mage/cards/s/SunseedNurturer.java index b7592197f7f..630e9c9d5a6 100644 --- a/Mage.Sets/src/mage/cards/s/SunseedNurturer.java +++ b/Mage.Sets/src/mage/cards/s/SunseedNurturer.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbilityImpl; import mage.abilities.effects.common.GainLifeEffect; import mage.abilities.mana.ColorlessManaAbility; @@ -80,7 +80,7 @@ class SunseedNurturerTriggeredAbility extends TriggeredAbilityImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public SunseedNurturerTriggeredAbility() { diff --git a/Mage.Sets/src/mage/cards/s/SunspireGatekeepers.java b/Mage.Sets/src/mage/cards/s/SunspireGatekeepers.java index f324c5261f1..57d9223d059 100644 --- a/Mage.Sets/src/mage/cards/s/SunspireGatekeepers.java +++ b/Mage.Sets/src/mage/cards/s/SunspireGatekeepers.java @@ -30,7 +30,7 @@ package mage.cards.s; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.MageInt; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -67,7 +67,7 @@ public class SunspireGatekeepers extends CardImpl { // When Sunspire Gatekeepers enter the battlefield, if you control two or more Gates, create a 2/2 white Knight creature token with vigilance. this.addAbility(new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new KnightToken())), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), "When {this} enter the battlefield, if you control two or more Gates, create a 2/2 white Knight creature token with vigilance.")); } diff --git a/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java b/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java index 9d87562163c..39be0285d8e 100644 --- a/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java +++ b/Mage.Sets/src/mage/cards/s/SunstrikeLegionnaire.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -59,7 +59,7 @@ public class SunstrikeLegionnaire extends CardImpl { static { untapFilter.add(new AnotherPredicate()); - tapFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + tapFilter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public SunstrikeLegionnaire(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Sunweb.java b/Mage.Sets/src/mage/cards/s/Sunweb.java index 858108ba873..a01ea444fa0 100644 --- a/Mage.Sets/src/mage/cards/s/Sunweb.java +++ b/Mage.Sets/src/mage/cards/s/Sunweb.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.abilities.keyword.DefenderAbility; @@ -50,7 +50,7 @@ public class Sunweb extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public Sunweb(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SupplyCaravan.java b/Mage.Sets/src/mage/cards/s/SupplyCaravan.java index b425f21a8fd..6807ce70bf1 100644 --- a/Mage.Sets/src/mage/cards/s/SupplyCaravan.java +++ b/Mage.Sets/src/mage/cards/s/SupplyCaravan.java @@ -29,7 +29,7 @@ package mage.cards.s; import java.util.UUID; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -62,7 +62,7 @@ public class SupplyCaravan extends CardImpl { // When Supply Caravan enters the battlefield, if you control a tapped creature, create a 1/1 white Warrior creature token with vigilance. this.addAbility(new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new WarriorVigilantToken())), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0), "When {this} enters the battlefield, if you control a tapped creature, create a 1/1 white Warrior creature token with vigilance.")); } diff --git a/Mage.Sets/src/mage/cards/s/SuspensionField.java b/Mage.Sets/src/mage/cards/s/SuspensionField.java index 54d1ac1b555..f98317b1015 100644 --- a/Mage.Sets/src/mage/cards/s/SuspensionField.java +++ b/Mage.Sets/src/mage/cards/s/SuspensionField.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.OnLeaveReturnExiledToBattlefieldAbility; import mage.abilities.effects.OneShotEffect; @@ -56,7 +56,7 @@ public class SuspensionField extends CardImpl { private final static FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 3 or greater"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 2)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 2)); } public SuspensionField(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/Swat.java b/Mage.Sets/src/mage/cards/s/Swat.java index 9ec825f8295..0becacac32d 100644 --- a/Mage.Sets/src/mage/cards/s/Swat.java +++ b/Mage.Sets/src/mage/cards/s/Swat.java @@ -27,7 +27,7 @@ */ package mage.cards.s; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.keyword.CyclingAbility; @@ -49,7 +49,7 @@ public class Swat extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public Swat(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SwiftWarkite.java b/Mage.Sets/src/mage/cards/s/SwiftWarkite.java index 144be9dac08..f90c9424f11 100644 --- a/Mage.Sets/src/mage/cards/s/SwiftWarkite.java +++ b/Mage.Sets/src/mage/cards/s/SwiftWarkite.java @@ -29,7 +29,7 @@ package mage.cards.s; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.DelayedTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; @@ -96,7 +96,7 @@ class SwiftWarkiteEffect extends OneShotEffect { static { filter.add(new CardTypePredicate(CardType.CREATURE)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } SwiftWarkiteEffect() { diff --git a/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java b/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java index 23fd93fd463..84fa7fc02bf 100644 --- a/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java +++ b/Mage.Sets/src/mage/cards/s/SwordOfTheMeek.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.mana.GenericManaCost; @@ -57,8 +57,8 @@ public class SwordOfTheMeek extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a 1/1 creature"); static { - filter.add(new PowerPredicate(CountType.EQUAL_TO, 1)); - filter.add(new ToughnessPredicate(CountType.EQUAL_TO, 1)); + filter.add(new PowerPredicate(ComparisonType.EQUAL_TO, 1)); + filter.add(new ToughnessPredicate(ComparisonType.EQUAL_TO, 1)); } public SwordOfTheMeek(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/s/SyggRiverCutthroat.java b/Mage.Sets/src/mage/cards/s/SyggRiverCutthroat.java index 8a176814abd..eb44f76f133 100644 --- a/Mage.Sets/src/mage/cards/s/SyggRiverCutthroat.java +++ b/Mage.Sets/src/mage/cards/s/SyggRiverCutthroat.java @@ -28,7 +28,7 @@ package mage.cards.s; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfEndStepTriggeredAbility; import mage.abilities.condition.common.OpponentLostLifeCondition; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -60,7 +60,7 @@ public class SyggRiverCutthroat extends CardImpl { this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), TargetController.ANY, - new OpponentLostLifeCondition(CountType.MORE_THAN, 2), + new OpponentLostLifeCondition(ComparisonType.MORE_THAN, 2), true)); } diff --git a/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java b/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java index 68118f06365..3bf42783d5a 100644 --- a/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java +++ b/Mage.Sets/src/mage/cards/s/SylvanAdvocate.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -73,9 +73,9 @@ public class SylvanAdvocate extends CardImpl { // As long as you control six or more lands, Sylvan Advocate and land creatures you control get +2/+2. ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield), - new PermanentsOnTheBattlefieldCondition(new FilterControlledLandPermanent(), CountType.MORE_THAN, 5), rule1); + new PermanentsOnTheBattlefieldCondition(new FilterControlledLandPermanent(), ComparisonType.MORE_THAN, 5), rule1); ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new BoostControlledEffect(2, 2, Duration.WhileOnBattlefield, filter, true), - new PermanentsOnTheBattlefieldCondition(new FilterControlledLandPermanent(), CountType.MORE_THAN, 5), rule2); + new PermanentsOnTheBattlefieldCondition(new FilterControlledLandPermanent(), ComparisonType.MORE_THAN, 5), rule2); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect1); ability.addEffect(effect2); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/t/TaintedField.java b/Mage.Sets/src/mage/cards/t/TaintedField.java index 9c477f0be0c..00074fe3dee 100644 --- a/Mage.Sets/src/mage/cards/t/TaintedField.java +++ b/Mage.Sets/src/mage/cards/t/TaintedField.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.Mana; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -65,12 +65,12 @@ public class TaintedField extends CardImpl { Zone.BATTLEFIELD, new BasicManaEffect(Mana.WhiteMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); this.addAbility(new ActivateIfConditionManaAbility( Zone.BATTLEFIELD, new BasicManaEffect(Mana.BlackMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); } public TaintedField(final TaintedField card) { diff --git a/Mage.Sets/src/mage/cards/t/TaintedIsle.java b/Mage.Sets/src/mage/cards/t/TaintedIsle.java index 8a9338ada14..9b8ebb155c0 100644 --- a/Mage.Sets/src/mage/cards/t/TaintedIsle.java +++ b/Mage.Sets/src/mage/cards/t/TaintedIsle.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.constants.Zone; import mage.Mana; @@ -65,12 +65,12 @@ public class TaintedIsle extends CardImpl { Zone.BATTLEFIELD, new BasicManaEffect(Mana.BlueMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); this.addAbility(new ActivateIfConditionManaAbility( Zone.BATTLEFIELD, new BasicManaEffect(Mana.BlackMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); } diff --git a/Mage.Sets/src/mage/cards/t/TaintedPeak.java b/Mage.Sets/src/mage/cards/t/TaintedPeak.java index e84641cd5b1..2e0fc869383 100644 --- a/Mage.Sets/src/mage/cards/t/TaintedPeak.java +++ b/Mage.Sets/src/mage/cards/t/TaintedPeak.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.Mana; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -65,12 +65,12 @@ public class TaintedPeak extends CardImpl { Zone.BATTLEFIELD, new BasicManaEffect(Mana.BlackMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); this.addAbility(new ActivateIfConditionManaAbility( Zone.BATTLEFIELD, new BasicManaEffect(Mana.RedMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); } diff --git a/Mage.Sets/src/mage/cards/t/TaintedWood.java b/Mage.Sets/src/mage/cards/t/TaintedWood.java index d25525413b9..afd783fafb1 100644 --- a/Mage.Sets/src/mage/cards/t/TaintedWood.java +++ b/Mage.Sets/src/mage/cards/t/TaintedWood.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.Mana; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -65,12 +65,12 @@ public class TaintedWood extends CardImpl { Zone.BATTLEFIELD, new BasicManaEffect(Mana.BlackMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); this.addAbility(new ActivateIfConditionManaAbility( Zone.BATTLEFIELD, new BasicManaEffect(Mana.GreenMana(1)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0))); } public TaintedWood(final TaintedWood card) { diff --git a/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java b/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java index 79fba9d1d5f..370eebcc0c4 100644 --- a/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java +++ b/Mage.Sets/src/mage/cards/t/TajNarSwordsmith.java @@ -29,7 +29,7 @@ package mage.cards.t; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.mana.GenericManaCost; @@ -100,7 +100,7 @@ class TajNarSwordsmithEffect extends OneShotEffect { if (cost.pay(source, game, source.getSourceId(), source.getControllerId(), false, null)) { FilterCard filter = new FilterCard("Equipment card with converted mana cost " + costX + " or less"); filter.add(new SubtypePredicate("Equipment")); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, costX + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, costX + 1)); new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(0, 1, filter), false, true).apply(game, source); return true; } diff --git a/Mage.Sets/src/mage/cards/t/TawnossWand.java b/Mage.Sets/src/mage/cards/t/TawnossWand.java index 4814b9d1875..1c24ad38c9e 100644 --- a/Mage.Sets/src/mage/cards/t/TawnossWand.java +++ b/Mage.Sets/src/mage/cards/t/TawnossWand.java @@ -28,7 +28,7 @@ package mage.cards.t; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -52,7 +52,7 @@ public class TawnossWand extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 2 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 3)); } public TawnossWand(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TectonicEdge.java b/Mage.Sets/src/mage/cards/t/TectonicEdge.java index 96cc829c3ad..91b7589d698 100644 --- a/Mage.Sets/src/mage/cards/t/TectonicEdge.java +++ b/Mage.Sets/src/mage/cards/t/TectonicEdge.java @@ -30,7 +30,7 @@ package mage.cards.t; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.condition.common.OpponentControlsPermanentCondition; import mage.abilities.costs.Cost; @@ -67,7 +67,7 @@ public class TectonicEdge extends CardImpl { new ManaCostsImpl("{1}"), new OpponentControlsPermanentCondition( new FilterLandPermanent("an opponent controls four or more lands"), - CountType.MORE_THAN, 3)); + ComparisonType.MORE_THAN, 3)); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetNonBasicLandPermanent()); diff --git a/Mage.Sets/src/mage/cards/t/TempleOfTheFalseGod.java b/Mage.Sets/src/mage/cards/t/TempleOfTheFalseGod.java index 439b8d65d6e..31333db727e 100644 --- a/Mage.Sets/src/mage/cards/t/TempleOfTheFalseGod.java +++ b/Mage.Sets/src/mage/cards/t/TempleOfTheFalseGod.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; import mage.Mana; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.BasicManaEffect; @@ -56,7 +56,7 @@ public class TempleOfTheFalseGod extends CardImpl { Zone.BATTLEFIELD, new BasicManaEffect(Mana.ColorlessMana(2)), new TapSourceCost(), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 4))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 4))); } public TempleOfTheFalseGod(final TempleOfTheFalseGod card) { diff --git a/Mage.Sets/src/mage/cards/t/TemurAscendancy.java b/Mage.Sets/src/mage/cards/t/TemurAscendancy.java index 1710049cdb7..cd8a6fedc72 100644 --- a/Mage.Sets/src/mage/cards/t/TemurAscendancy.java +++ b/Mage.Sets/src/mage/cards/t/TemurAscendancy.java @@ -27,7 +27,7 @@ */ package mage.cards.t; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -52,7 +52,7 @@ public class TemurAscendancy extends CardImpl { final private static FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public TemurAscendancy(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TemurCharm.java b/Mage.Sets/src/mage/cards/t/TemurCharm.java index c28917faac6..89b5949621c 100644 --- a/Mage.Sets/src/mage/cards/t/TemurCharm.java +++ b/Mage.Sets/src/mage/cards/t/TemurCharm.java @@ -27,7 +27,7 @@ */ package mage.cards.t; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.Effect; @@ -61,7 +61,7 @@ public class TemurCharm extends CardImpl { static { filter.add(new ControllerPredicate(TargetController.NOT_YOU)); - filterCantBlock.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filterCantBlock.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public TemurCharm(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TerashisVerdict.java b/Mage.Sets/src/mage/cards/t/TerashisVerdict.java index 8aa0f553386..dd314fa1f22 100644 --- a/Mage.Sets/src/mage/cards/t/TerashisVerdict.java +++ b/Mage.Sets/src/mage/cards/t/TerashisVerdict.java @@ -27,7 +27,7 @@ */ package mage.cards.t; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class TerashisVerdict extends CardImpl { private static final FilterAttackingCreature filter = new FilterAttackingCreature("attacking creature with power 3 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 4)); } public TerashisVerdict(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TetheredGriffin.java b/Mage.Sets/src/mage/cards/t/TetheredGriffin.java index caaff3a79d5..7902996ce51 100644 --- a/Mage.Sets/src/mage/cards/t/TetheredGriffin.java +++ b/Mage.Sets/src/mage/cards/t/TetheredGriffin.java @@ -28,7 +28,7 @@ package mage.cards.t; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.keyword.FlyingAbility; @@ -56,7 +56,7 @@ public class TetheredGriffin extends CardImpl { // When you control no enchantments, sacrifice Tethered Griffin. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterEnchantmentPermanent(), CountType.EQUAL_TO, 0, + new FilterEnchantmentPermanent(), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); } diff --git a/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java b/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java index 35f43a67796..896bd5f5b2f 100644 --- a/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java +++ b/Mage.Sets/src/mage/cards/t/TethmosHighPriest.java @@ -29,7 +29,7 @@ package mage.cards.t; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.HeroicAbility; import mage.cards.CardImpl; @@ -51,7 +51,7 @@ public class TethmosHighPriest extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public TethmosHighPriest(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java b/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java index 035612a50bd..9db4bfec204 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretTheSeeker.java @@ -28,7 +28,7 @@ package mage.cards.t; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; import mage.abilities.costs.Cost; @@ -115,7 +115,7 @@ class TezzeretTheSeekerEffect2 extends OneShotEffect { } FilterArtifactCard filter = new FilterArtifactCard("artifact card with converted mana cost " + cmc + " or less"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, cmc + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, cmc + 1)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java b/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java index 8e120e76d84..acc3f2e72f4 100644 --- a/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java +++ b/Mage.Sets/src/mage/cards/t/TezzeretsAmbition.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect; @@ -59,7 +59,7 @@ public class TezzeretsAmbition extends CardImpl { this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(3)); this.getSpellAbility().addEffect(new ConditionalOneShotEffect( new DiscardControllerEffect(1), - new PermanentsOnTheBattlefieldCondition(filter, CountType.EQUAL_TO, 0))); + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.EQUAL_TO, 0))); } public TezzeretsAmbition(final TezzeretsAmbition card) { diff --git a/Mage.Sets/src/mage/cards/t/Thoughtbind.java b/Mage.Sets/src/mage/cards/t/Thoughtbind.java index a835d0f7018..95f829fcf22 100644 --- a/Mage.Sets/src/mage/cards/t/Thoughtbind.java +++ b/Mage.Sets/src/mage/cards/t/Thoughtbind.java @@ -28,7 +28,7 @@ package mage.cards.t; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.CounterTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class Thoughtbind extends CardImpl { private static final FilterSpell filter = new FilterSpell("spell with converted mana cost 4 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 5)); } public Thoughtbind(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java b/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java index c054f2b2dc5..8a2ea145e9e 100644 --- a/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java +++ b/Mage.Sets/src/mage/cards/t/ThreadsOfDisloyalty.java @@ -29,7 +29,7 @@ package mage.cards.t; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.AttachEffect; import mage.abilities.effects.common.continuous.ControlEnchantedEffect; @@ -55,7 +55,7 @@ public class ThreadsOfDisloyalty extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with converted mana cost 2 or less"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public ThreadsOfDisloyalty(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/Thumbscrews.java b/Mage.Sets/src/mage/cards/t/Thumbscrews.java index 011ce8012f2..894b209f4a8 100644 --- a/Mage.Sets/src/mage/cards/t/Thumbscrews.java +++ b/Mage.Sets/src/mage/cards/t/Thumbscrews.java @@ -29,7 +29,7 @@ package mage.cards.t; import java.util.UUID; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.TriggeredAbility; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; import mage.abilities.condition.common.CardsInHandCondition; @@ -55,7 +55,7 @@ public class Thumbscrews extends CardImpl { TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), TargetController.YOU, false); ability.addTarget(new TargetOpponent()); - CardsInHandCondition condition = new CardsInHandCondition(CountType.MORE_THAN, 4); + CardsInHandCondition condition = new CardsInHandCondition(ComparisonType.MORE_THAN, 4); this.addAbility(new ConditionalTriggeredAbility(ability, condition, "At the beginning of your upkeep, if you have five or more cards in hand, {this} deals 1 damage to target opponent.")); } diff --git a/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java b/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java index ef5d6599506..311330feb10 100644 --- a/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java +++ b/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java @@ -28,7 +28,7 @@ package mage.cards.t; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.Effect; @@ -56,7 +56,7 @@ public class ThundercloudElemental extends CardImpl { private static final FilterCreaturePermanent flyingFilter = new FilterCreaturePermanent("All other creatures"); static { - toughnessFilter.add(new ToughnessPredicate(CountType.FEWER_THAN, 3)); + toughnessFilter.add(new ToughnessPredicate(ComparisonType.FEWER_THAN, 3)); flyingFilter.add(new AnotherPredicate()); } diff --git a/Mage.Sets/src/mage/cards/t/TimelyHordemate.java b/Mage.Sets/src/mage/cards/t/TimelyHordemate.java index d7190a1b2bc..88002bf99d3 100644 --- a/Mage.Sets/src/mage/cards/t/TimelyHordemate.java +++ b/Mage.Sets/src/mage/cards/t/TimelyHordemate.java @@ -29,7 +29,7 @@ package mage.cards.t; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.RaidCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -53,7 +53,7 @@ public class TimelyHordemate extends CardImpl { private static final FilterCreatureCard filter = new FilterCreatureCard("creature card with converted mana cost 2 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 3)); } public TimelyHordemate(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/ToolcraftExemplar.java b/Mage.Sets/src/mage/cards/t/ToolcraftExemplar.java index 2215ee4ede6..709de5f91b1 100644 --- a/Mage.Sets/src/mage/cards/t/ToolcraftExemplar.java +++ b/Mage.Sets/src/mage/cards/t/ToolcraftExemplar.java @@ -30,7 +30,7 @@ package mage.cards.t; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.BeginningOfCombatTriggeredAbility; import mage.abilities.condition.LockedInCondition; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -64,7 +64,7 @@ public class ToolcraftExemplar extends CardImpl { // If you control at least 3 artifacts, it also gains first strike until end of turn. Effect effect = new ConditionalContinuousEffect( new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), - new LockedInCondition(new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), CountType.MORE_THAN, 2)), null); + new LockedInCondition(new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent(), ComparisonType.MORE_THAN, 2)), null); Ability ability = new ConditionalTriggeredAbility( new BeginningOfCombatTriggeredAbility(new BoostSourceEffect(2, 1, Duration.EndOfTurn), TargetController.YOU, false), new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent()), diff --git a/Mage.Sets/src/mage/cards/t/TransgressTheMind.java b/Mage.Sets/src/mage/cards/t/TransgressTheMind.java index 94a62b08e05..b2202476175 100644 --- a/Mage.Sets/src/mage/cards/t/TransgressTheMind.java +++ b/Mage.Sets/src/mage/cards/t/TransgressTheMind.java @@ -28,7 +28,7 @@ package mage.cards.t; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.Effect; import mage.abilities.effects.common.ExileCardYouChooseTargetOpponentEffect; import mage.abilities.keyword.DevoidAbility; @@ -50,7 +50,7 @@ public class TransgressTheMind extends CardImpl { private static final FilterCard filter = new FilterCard("a card from it with converted mana cost 3 or greater"); static { - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 2)); } public TransgressTheMind(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TreasureMage.java b/Mage.Sets/src/mage/cards/t/TreasureMage.java index e1310a33d63..ea9ed2f08d3 100644 --- a/Mage.Sets/src/mage/cards/t/TreasureMage.java +++ b/Mage.Sets/src/mage/cards/t/TreasureMage.java @@ -29,7 +29,7 @@ package mage.cards.t; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.SearchEffect; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; @@ -53,7 +53,7 @@ public class TreasureMage extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(CountType.MORE_THAN, 5)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.MORE_THAN, 5)); } public TreasureMage (UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrinketMage.java b/Mage.Sets/src/mage/cards/t/TrinketMage.java index bb8852f1a87..d696734d956 100644 --- a/Mage.Sets/src/mage/cards/t/TrinketMage.java +++ b/Mage.Sets/src/mage/cards/t/TrinketMage.java @@ -29,7 +29,7 @@ package mage.cards.t; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.SearchEffect; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; @@ -52,7 +52,7 @@ public class TrinketMage extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 2)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 2)); } public TrinketMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/t/TrophyMage.java b/Mage.Sets/src/mage/cards/t/TrophyMage.java index 4c40fccccaa..23017a37ee8 100644 --- a/Mage.Sets/src/mage/cards/t/TrophyMage.java +++ b/Mage.Sets/src/mage/cards/t/TrophyMage.java @@ -28,7 +28,7 @@ package mage.cards.t; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect; import mage.cards.CardImpl; @@ -51,7 +51,7 @@ public class TrophyMage extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ARTIFACT)); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, 3)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, 3)); } public TrophyMage(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/u/UbulSarGatekeepers.java b/Mage.Sets/src/mage/cards/u/UbulSarGatekeepers.java index ac0d9cbdfc7..d48946c05d3 100644 --- a/Mage.Sets/src/mage/cards/u/UbulSarGatekeepers.java +++ b/Mage.Sets/src/mage/cards/u/UbulSarGatekeepers.java @@ -30,7 +30,7 @@ package mage.cards.u; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -72,7 +72,7 @@ public class UbulSarGatekeepers extends CardImpl { // Whenever Ubul Sar Gatekeepers enters the battlefield, if you control two or more Gates, target creature an opponent controls gets -2/-2 until end of turn. Ability ability = new ConditionalTriggeredAbility( new EntersBattlefieldTriggeredAbility(new BoostTargetEffect(-2, -2, Duration.EndOfTurn)), - new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 1), + new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 1), "Whenever {this} enters the battlefield, if you control two or more Gates, target creature an opponent controls gets -2/-2 until end of turn."); Target target = new TargetCreaturePermanent(targetFilter); ability.addTarget(target); diff --git a/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java b/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java index c5426ca4a85..fd451648563 100644 --- a/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java +++ b/Mage.Sets/src/mage/cards/u/UginTheSpiritDragon.java @@ -28,7 +28,7 @@ package mage.cards.u; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.LoyaltyAbility; import mage.abilities.common.PlanswalkerEntersWithLoyalityCountersAbility; import mage.abilities.costs.Cost; @@ -123,7 +123,7 @@ class UginTheSpiritDragonEffect2 extends OneShotEffect { } FilterPermanent filter = new FilterPermanent("permanent with converted mana cost X or less that's one or more colors"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, cmc + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, cmc + 1)); filter.add(Predicates.not(new ColorlessPredicate())); Set permanentsToExile = new HashSet<>(); permanentsToExile.addAll(game.getBattlefield().getActivePermanents(filter, source.getControllerId(), source.getSourceId(), game)); diff --git a/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java b/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java index 7e1518597cf..aec24748ad8 100644 --- a/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java +++ b/Mage.Sets/src/mage/cards/u/UlvenwaldObserver.java @@ -28,7 +28,7 @@ package mage.cards.u; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesCreatureTriggeredAbility; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; @@ -50,7 +50,7 @@ public class UlvenwaldObserver extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("a creature you control with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); filter.add(new ControllerPredicate(TargetController.YOU)); } diff --git a/Mage.Sets/src/mage/cards/u/UnderhandedDesigns.java b/Mage.Sets/src/mage/cards/u/UnderhandedDesigns.java index 1c4328c9a86..09e32628f32 100644 --- a/Mage.Sets/src/mage/cards/u/UnderhandedDesigns.java +++ b/Mage.Sets/src/mage/cards/u/UnderhandedDesigns.java @@ -29,7 +29,7 @@ package mage.cards.u; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ActivateIfConditionActivatedAbility; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; @@ -68,7 +68,7 @@ public class UnderhandedDesigns extends CardImpl { Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{1}{B}"), - new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent("you control two or more artifacts"), CountType.MORE_THAN, 1)); + new PermanentsOnTheBattlefieldCondition(new FilterControlledArtifactPermanent("you control two or more artifacts"), ComparisonType.MORE_THAN, 1)); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/cards/u/Unearth.java b/Mage.Sets/src/mage/cards/u/Unearth.java index ae206bd1354..0c72bff09a4 100644 --- a/Mage.Sets/src/mage/cards/u/Unearth.java +++ b/Mage.Sets/src/mage/cards/u/Unearth.java @@ -27,7 +27,7 @@ */ package mage.cards.u; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect; import mage.abilities.keyword.CyclingAbility; @@ -50,7 +50,7 @@ public class Unearth extends CardImpl { private static final FilterCard filter = new FilterCreatureCard("creature card with converted mana cost 3 or less from your graveyard"); static { - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public Unearth(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java b/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java index 4a78f45d486..f638cf4caf1 100644 --- a/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java +++ b/Mage.Sets/src/mage/cards/v/VagrantPlowbeasts.java @@ -28,7 +28,7 @@ package mage.cards.v; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.effects.common.RegenerateTargetEffect; @@ -51,7 +51,7 @@ public class VagrantPlowbeasts extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public VagrantPlowbeasts(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/ValorousStance.java b/Mage.Sets/src/mage/cards/v/ValorousStance.java index 6dee7f701b0..bad35a2aa9c 100644 --- a/Mage.Sets/src/mage/cards/v/ValorousStance.java +++ b/Mage.Sets/src/mage/cards/v/ValorousStance.java @@ -27,7 +27,7 @@ */ package mage.cards.v; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -51,7 +51,7 @@ public class ValorousStance extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with toughness 4 or greater"); static { - filter.add(new ToughnessPredicate(CountType.MORE_THAN, 3)); + filter.add(new ToughnessPredicate(ComparisonType.MORE_THAN, 3)); } public ValorousStance(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java b/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java index c08c63c1caa..d9d2a95a60f 100644 --- a/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java +++ b/Mage.Sets/src/mage/cards/v/VanquishTheFoul.java @@ -27,7 +27,7 @@ */ package mage.cards.v; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.DestroyTargetEffect; import mage.abilities.effects.keyword.ScryEffect; import mage.cards.CardImpl; @@ -48,7 +48,7 @@ public class VanquishTheFoul extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } public VanquishTheFoul(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java b/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java index 69517275d81..1c5e07197ce 100644 --- a/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java +++ b/Mage.Sets/src/mage/cards/v/VenarianGlimmer.java @@ -28,7 +28,7 @@ package mage.cards.v; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; @@ -91,7 +91,7 @@ class VenarianGlimmerEffect extends OneShotEffect { Player player = game.getPlayer(targetPointer.getFirst(game, source)); if (player != null) { FilterCard filter = new FilterNonlandCard(); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); Effect effect = new DiscardCardYouChooseTargetEffect(filter, TargetController.ANY); effect.setTargetPointer(targetPointer); effect.apply(game, source); diff --git a/Mage.Sets/src/mage/cards/v/VillainousWealth.java b/Mage.Sets/src/mage/cards/v/VillainousWealth.java index c0c8320c508..73f348d747b 100644 --- a/Mage.Sets/src/mage/cards/v/VillainousWealth.java +++ b/Mage.Sets/src/mage/cards/v/VillainousWealth.java @@ -29,7 +29,7 @@ package mage.cards.v; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.*; import mage.constants.CardType; @@ -94,7 +94,7 @@ class VillainousWealthEffect extends OneShotEffect { if (controller != null) { Player player = game.getPlayer(targetPointer.getFirst(game, source)); FilterCard filter = new FilterNonlandCard(); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); UUID exileId = CardUtil.getCardExileZoneId(game, source); if (player != null) { Cards cardsToExile = new CardsImpl(); diff --git a/Mage.Sets/src/mage/cards/v/VineSnare.java b/Mage.Sets/src/mage/cards/v/VineSnare.java index 2e228ab1b4a..c541215452f 100644 --- a/Mage.Sets/src/mage/cards/v/VineSnare.java +++ b/Mage.Sets/src/mage/cards/v/VineSnare.java @@ -27,7 +27,7 @@ */ package mage.cards.v; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.common.PreventAllDamageByAllPermanentsEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; @@ -47,7 +47,7 @@ public class VineSnare extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 4 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 5)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 5)); } public VineSnare(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/v/VodalianKnights.java b/Mage.Sets/src/mage/cards/v/VodalianKnights.java index 4c72bad721b..929f27ceb32 100644 --- a/Mage.Sets/src/mage/cards/v/VodalianKnights.java +++ b/Mage.Sets/src/mage/cards/v/VodalianKnights.java @@ -28,7 +28,7 @@ package mage.cards.v; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.ControlsPermanentsControllerTriggeredAbility; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; @@ -68,7 +68,7 @@ public class VodalianKnights extends CardImpl { // When you control no Islands, sacrifice Vodalian Knights. this.addAbility(new ControlsPermanentsControllerTriggeredAbility( - new FilterLandPermanent("Island", "no Islands"), CountType.EQUAL_TO, 0, + new FilterLandPermanent("Island", "no Islands"), ComparisonType.EQUAL_TO, 0, new SacrificeSourceEffect())); // {U}: Vodalian Knights gains flying until end of turn. diff --git a/Mage.Sets/src/mage/cards/v/Void.java b/Mage.Sets/src/mage/cards/v/Void.java index 725c4b47086..b60deedb9b2 100644 --- a/Mage.Sets/src/mage/cards/v/Void.java +++ b/Mage.Sets/src/mage/cards/v/Void.java @@ -28,7 +28,7 @@ package mage.cards.v; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; import mage.cards.CardImpl; @@ -110,7 +110,7 @@ class VoidEffect extends OneShotEffect { } } FilterCard filterCard = new FilterCard(); - filterCard.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, number)); + filterCard.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, number)); filterCard.add(Predicates.not(new CardTypePredicate(CardType.LAND))); Player targetPlayer = game.getPlayer(targetPointer.getFirst(game, source)); diff --git a/Mage.Sets/src/mage/cards/w/WarNameAspirant.java b/Mage.Sets/src/mage/cards/w/WarNameAspirant.java index ab1f874104a..48494065fd6 100644 --- a/Mage.Sets/src/mage/cards/w/WarNameAspirant.java +++ b/Mage.Sets/src/mage/cards/w/WarNameAspirant.java @@ -28,7 +28,7 @@ package mage.cards.w; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.common.SimpleEvasionAbility; import mage.abilities.condition.common.RaidCondition; @@ -54,7 +54,7 @@ public class WarNameAspirant extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 1 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 2)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 2)); } public WarNameAspirant(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WarpingWail.java b/Mage.Sets/src/mage/cards/w/WarpingWail.java index 9a7bf365ee0..bf94e31c9a2 100644 --- a/Mage.Sets/src/mage/cards/w/WarpingWail.java +++ b/Mage.Sets/src/mage/cards/w/WarpingWail.java @@ -27,7 +27,7 @@ */ package mage.cards.w; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CounterTargetEffect; @@ -59,8 +59,8 @@ public class WarpingWail extends CardImpl { static { filterCreature.add(Predicates.or( - new PowerPredicate(CountType.FEWER_THAN, 2), - new ToughnessPredicate(CountType.FEWER_THAN, 2))); + new PowerPredicate(ComparisonType.FEWER_THAN, 2), + new ToughnessPredicate(ComparisonType.FEWER_THAN, 2))); filterSorcery.add(new CardTypePredicate(CardType.SORCERY)); } diff --git a/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java b/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java index bb825b05aae..a0f7e4de84c 100644 --- a/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java +++ b/Mage.Sets/src/mage/cards/w/WhereAncientsTread.java @@ -28,7 +28,7 @@ package mage.cards.w; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility; import mage.abilities.effects.common.DamageTargetEffect; import mage.cards.CardImpl; @@ -49,7 +49,7 @@ import java.util.UUID; private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 5 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 4)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 4)); } public WhereAncientsTread(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WildPair.java b/Mage.Sets/src/mage/cards/w/WildPair.java index ef18d21642b..fb2ba5744e0 100644 --- a/Mage.Sets/src/mage/cards/w/WildPair.java +++ b/Mage.Sets/src/mage/cards/w/WildPair.java @@ -29,7 +29,7 @@ package mage.cards.w; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.condition.Condition; import mage.abilities.decorator.ConditionalTriggeredAbility; @@ -108,7 +108,7 @@ class WildPairEffect extends OneShotEffect { if (permanent != null) { int totalPT = permanent.getPower().getValue() + permanent.getToughness().getValue(); FilterCreatureCard filter = new FilterCreatureCard("creature card with total power and toughness " + totalPT); - filter.add(new TotalPowerAndToughnessPredicate(CountType.EQUAL_TO, totalPT)); + filter.add(new TotalPowerAndToughnessPredicate(ComparisonType.EQUAL_TO, totalPT)); TargetCardInLibrary target = new TargetCardInLibrary(1, filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { @@ -129,7 +129,7 @@ class WildPairEffect extends OneShotEffect { */ class TotalPowerAndToughnessPredicate extends IntComparePredicate { - public TotalPowerAndToughnessPredicate(CountType type, int value) { + public TotalPowerAndToughnessPredicate(ComparisonType type, int value) { super(type, value); } diff --git a/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java b/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java index 5286c5ee850..a98dc38d695 100644 --- a/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java +++ b/Mage.Sets/src/mage/cards/w/WisdomOfTheJedi.java @@ -27,7 +27,7 @@ */ package mage.cards.w; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.Mode; import mage.abilities.effects.Effect; import mage.abilities.effects.common.CounterTargetEffect; @@ -54,7 +54,7 @@ public class WisdomOfTheJedi extends CardImpl { private static final FilterSpell filterSpell = new FilterSpell("spell with converted mana cost of 3 or less"); static { - filterSpell.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filterSpell.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public WisdomOfTheJedi(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/w/WoodbornBehemoth.java b/Mage.Sets/src/mage/cards/w/WoodbornBehemoth.java index 928aa8c78ac..ef34e9cb648 100644 --- a/Mage.Sets/src/mage/cards/w/WoodbornBehemoth.java +++ b/Mage.Sets/src/mage/cards/w/WoodbornBehemoth.java @@ -30,7 +30,7 @@ package mage.cards.w; import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition; import mage.abilities.decorator.ConditionalContinuousEffect; @@ -58,7 +58,7 @@ public class WoodbornBehemoth extends CardImpl { this.toughness = new MageInt(4); // As long as you control eight or more lands, Woodborn Behemoth gets +4/+4 and has trample. - PermanentsOnTheBattlefieldCondition eightOrMoreLandCondition = new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), CountType.MORE_THAN,7); + PermanentsOnTheBattlefieldCondition eightOrMoreLandCondition = new PermanentsOnTheBattlefieldCondition(new FilterLandPermanent(), ComparisonType.MORE_THAN,7); ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect( new BoostSourceEffect(4,4, Duration.WhileOnBattlefield), eightOrMoreLandCondition, "As long as you control eight or more lands, {this} gets +4/+4"); diff --git a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java index cc9fe80a60b..35cfe5b8d94 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandBellower.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandBellower.java @@ -30,7 +30,7 @@ package mage.cards.w; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; @@ -99,7 +99,7 @@ class WoodlandBellowerEffect extends OneShotEffect { filter.add(new ColorPredicate(ObjectColor.GREEN)); filter.add(new CardTypePredicate(CardType.CREATURE)); filter.add(Predicates.not(new SupertypePredicate(SuperType.LEGENDARY))); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage.Sets/src/mage/cards/w/WoodlandCemetery.java b/Mage.Sets/src/mage/cards/w/WoodlandCemetery.java index a375f460575..6da88f127fc 100644 --- a/Mage.Sets/src/mage/cards/w/WoodlandCemetery.java +++ b/Mage.Sets/src/mage/cards/w/WoodlandCemetery.java @@ -28,7 +28,7 @@ package mage.cards.w; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.constants.CardType; import mage.abilities.common.EntersBattlefieldAbility; import mage.abilities.condition.Condition; @@ -60,7 +60,7 @@ public class WoodlandCemetery extends CardImpl { public WoodlandCemetery(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},null); - Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, CountType.MORE_THAN, 0)); + Condition controls = new InvertCondition(new PermanentsOnTheBattlefieldCondition(filter, ComparisonType.MORE_THAN, 0)); String abilityText = "tap it unless you control a Swamp or a Forest"; this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new TapSourceEffect(), controls, abilityText), abilityText)); this.addAbility(new BlackManaAbility()); diff --git a/Mage.Sets/src/mage/cards/w/Wrangle.java b/Mage.Sets/src/mage/cards/w/Wrangle.java index ef05776b69c..48740feb46c 100644 --- a/Mage.Sets/src/mage/cards/w/Wrangle.java +++ b/Mage.Sets/src/mage/cards/w/Wrangle.java @@ -27,7 +27,7 @@ */ package mage.cards.w; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.Effect; import mage.abilities.effects.common.UntapTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -52,7 +52,7 @@ public class Wrangle extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creature with power 4 or less"); static { - filter.add(new PowerPredicate(CountType.FEWER_THAN, 5)); + filter.add(new PowerPredicate(ComparisonType.FEWER_THAN, 5)); } public Wrangle(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java b/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java index 19da42bce64..ade8b598029 100644 --- a/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java +++ b/Mage.Sets/src/mage/cards/y/YisanTheWandererBard.java @@ -29,7 +29,7 @@ package mage.cards.y; import mage.MageInt; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.PutCountersSourceCost; import mage.abilities.costs.common.TapSourceCost; @@ -108,7 +108,7 @@ class YisanTheWandererBardEffect extends OneShotEffect { if (sourcePermanent != null && controller != null) { int newConvertedCost = sourcePermanent.getCounters(game).getCount("verse"); FilterCard filter = new FilterCard("creature card with converted mana cost " + newConvertedCost); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, newConvertedCost)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, newConvertedCost)); filter.add(new CardTypePredicate(CardType.CREATURE)); TargetCardInLibrary target = new TargetCardInLibrary(filter); if (controller.searchLibrary(target, game)) { diff --git a/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java b/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java index 1f938a1917d..85313ef6640 100644 --- a/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java +++ b/Mage.Sets/src/mage/cards/z/ZurTheEnchanter.java @@ -28,7 +28,7 @@ package mage.cards.z; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.AttacksTriggeredAbility; import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect; import mage.abilities.keyword.FlyingAbility; @@ -53,7 +53,7 @@ public class ZurTheEnchanter extends CardImpl { static { filter.add(new CardTypePredicate(CardType.ENCHANTMENT)); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, 4)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, 4)); } public ZurTheEnchanter(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java b/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java index ff08e91e062..fbffff7cdd7 100644 --- a/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java +++ b/Mage.Sets/src/mage/cards/z/ZurgoBellstriker.java @@ -28,7 +28,7 @@ package mage.cards.z; import mage.MageInt; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.effects.common.combat.CantBlockCreaturesSourceEffect; import mage.abilities.keyword.DashAbility; @@ -51,7 +51,7 @@ public class ZurgoBellstriker extends CardImpl { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("creatures with power 2 or greater"); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 1)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 1)); } public ZurgoBellstriker(UUID ownerId, CardSetInfo setInfo) { diff --git a/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java index 9019fd97399..1aae08aba4d 100644 --- a/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/ControlsPermanentsControllerTriggeredAbility.java @@ -27,7 +27,7 @@ */ package mage.abilities.common; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.StateTriggeredAbility; import mage.abilities.effects.Effect; import mage.constants.Zone; @@ -44,10 +44,10 @@ import mage.game.events.GameEvent; public class ControlsPermanentsControllerTriggeredAbility extends StateTriggeredAbility { protected final FilterPermanent filter; - protected final CountType type; + protected final ComparisonType type; protected final int value; - public ControlsPermanentsControllerTriggeredAbility(FilterPermanent filter, CountType type, int value, Effect effect) { + public ControlsPermanentsControllerTriggeredAbility(FilterPermanent filter, ComparisonType type, int value, Effect effect) { super(Zone.BATTLEFIELD, effect); this.filter = filter; this.value = value; @@ -69,7 +69,7 @@ public class ControlsPermanentsControllerTriggeredAbility extends StateTriggered @Override public boolean checkTrigger(GameEvent event, Game game) { int inputValue = game.getBattlefield().countAll(filter, getControllerId(), game); - return CountType.compare(value, type, inputValue); + return ComparisonType.compare(value, type, inputValue); } @Override diff --git a/Mage/src/main/java/mage/abilities/condition/IntCompareCondition.java b/Mage/src/main/java/mage/abilities/condition/IntCompareCondition.java index 2ba089daa5d..cc33eca7b87 100644 --- a/Mage/src/main/java/mage/abilities/condition/IntCompareCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/IntCompareCondition.java @@ -28,7 +28,7 @@ package mage.abilities.condition; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.game.Game; /** @@ -37,10 +37,10 @@ import mage.game.Game; */ public abstract class IntCompareCondition implements Condition { - protected final CountType type; + protected final ComparisonType type; protected final int value; - public IntCompareCondition(CountType type, int value) { + public IntCompareCondition(ComparisonType type, int value) { this.type = type; this.value = value; } @@ -50,7 +50,7 @@ public abstract class IntCompareCondition implements Condition { @Override public final boolean apply(Game game, Ability source) { int inputValue = getInputValue(game, source); - return CountType.compare(inputValue , type, value); + return ComparisonType.compare(inputValue , type, value); } @Override diff --git a/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java b/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java index cfa5e4f5a86..9cd12424f94 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/CardsInAnyLibraryCondition.java @@ -28,7 +28,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.game.Game; import mage.players.Player; @@ -40,10 +40,10 @@ import java.util.UUID; */ public class CardsInAnyLibraryCondition implements Condition { - protected final CountType type; + protected final ComparisonType type; protected final int value; - public CardsInAnyLibraryCondition(CountType type, int value) { + public CardsInAnyLibraryCondition(ComparisonType type, int value) { this.type = type; this.value = value; } @@ -55,7 +55,7 @@ public class CardsInAnyLibraryCondition implements Condition { for (UUID playerId : game.getState().getPlayersInRange(controller.getId(), game)) { Player player = game.getPlayer(playerId); if (player != null) { - return CountType.compare(player.getLibrary().size(), type, value); + return ComparisonType.compare(player.getLibrary().size(), type, value); } } diff --git a/Mage/src/main/java/mage/abilities/condition/common/CardsInHandCondition.java b/Mage/src/main/java/mage/abilities/condition/common/CardsInHandCondition.java index 9d8b0813d63..9025cf0af46 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/CardsInHandCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/CardsInHandCondition.java @@ -30,7 +30,7 @@ package mage.abilities.condition.common; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.constants.TargetController; import mage.game.Game; @@ -47,23 +47,23 @@ public class CardsInHandCondition implements Condition { private Condition condition; - private CountType type; + private ComparisonType type; private int count; private TargetController targetController; public CardsInHandCondition() { - this(CountType.EQUAL_TO, 0); + this(ComparisonType.EQUAL_TO, 0); } - public CardsInHandCondition(CountType type, int count) { + public CardsInHandCondition(ComparisonType type, int count) { this(type, count, null); } - public CardsInHandCondition(CountType type, int count, Condition conditionToDecorate) { + public CardsInHandCondition(ComparisonType type, int count, Condition conditionToDecorate) { this(type, count, conditionToDecorate, TargetController.YOU); } - public CardsInHandCondition(CountType type, int count, Condition conditionToDecorate, TargetController targetController) { + public CardsInHandCondition(ComparisonType type, int count, Condition conditionToDecorate, TargetController targetController) { this.type = type; this.count = count; this.condition = conditionToDecorate; @@ -77,12 +77,12 @@ public class CardsInHandCondition implements Condition { if (controller != null) { switch (targetController) { case YOU: - conditionApplies = CountType.compare(game.getPlayer(source.getControllerId()).getHand().size(), type, count); + conditionApplies = ComparisonType.compare(game.getPlayer(source.getControllerId()).getHand().size(), type, count); break; case ACTIVE: Player player = game.getPlayer(game.getActivePlayerId()); if (player != null) { - conditionApplies = CountType.compare(player.getHand().size(), type, count); + conditionApplies = ComparisonType.compare(player.getHand().size(), type, count); } break; case ANY: @@ -90,7 +90,7 @@ public class CardsInHandCondition implements Condition { for (UUID playerId : game.getState().getPlayersInRange(controller.getId(), game)) { player = game.getPlayer(playerId); if (player != null) { - if (!CountType.compare(player.getHand().size(), type, this.count)) { + if (!ComparisonType.compare(player.getHand().size(), type, this.count)) { conflict = true; break; } diff --git a/Mage/src/main/java/mage/abilities/condition/common/DevouredCreaturesCondition.java b/Mage/src/main/java/mage/abilities/condition/common/DevouredCreaturesCondition.java index 8aa2e963418..6b0f110eca9 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/DevouredCreaturesCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/DevouredCreaturesCondition.java @@ -28,7 +28,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.IntCompareCondition; import mage.abilities.effects.Effect; import mage.abilities.effects.common.DevourEffect; @@ -43,7 +43,7 @@ import mage.game.permanent.Permanent; */ public class DevouredCreaturesCondition extends IntCompareCondition { - public DevouredCreaturesCondition(CountType type, int value) { + public DevouredCreaturesCondition(ComparisonType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java b/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java index 512a914ef68..8cf67b92811 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/FerociousCondition.java @@ -29,7 +29,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.mageobject.PowerPredicate; @@ -43,7 +43,7 @@ public enum FerociousCondition implements Condition { private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); static { - filter.add(new PowerPredicate(CountType.MORE_THAN, 3)); + filter.add(new PowerPredicate(ComparisonType.MORE_THAN, 3)); } diff --git a/Mage/src/main/java/mage/abilities/condition/common/OpponentControlsPermanentCondition.java b/Mage/src/main/java/mage/abilities/condition/common/OpponentControlsPermanentCondition.java index d1b37c77ca3..4281a43463f 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/OpponentControlsPermanentCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/OpponentControlsPermanentCondition.java @@ -31,7 +31,7 @@ package mage.abilities.condition.common; import java.util.UUID; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.filter.FilterPermanent; import mage.filter.predicate.permanent.ControllerIdPredicate; @@ -48,18 +48,18 @@ public class OpponentControlsPermanentCondition implements Condition { private FilterPermanent filter; - private CountType type; + private ComparisonType type; private int count; /** * @param filter */ public OpponentControlsPermanentCondition(FilterPermanent filter) { - this(filter, CountType.MORE_THAN, 0); + this(filter, ComparisonType.MORE_THAN, 0); } /** - * Applies a filter, a {@link CountType}, and count to permanents on the + * Applies a filter, a {@link ComparisonType}, and count to permanents on the * battlefield when checking the condition during the * {@link #apply(mage.game.Game, mage.abilities.Ability) apply} method invocation. * @@ -67,7 +67,7 @@ public class OpponentControlsPermanentCondition implements Condition { * @param type * @param count */ - public OpponentControlsPermanentCondition(FilterPermanent filter, CountType type, int count) { + public OpponentControlsPermanentCondition(FilterPermanent filter, ComparisonType type, int count) { this.filter = filter; this.type = type; this.count = count; @@ -79,7 +79,7 @@ public class OpponentControlsPermanentCondition implements Condition { for (UUID opponentId : game.getOpponents(source.getControllerId())) { FilterPermanent localFilter = filter.copy(); localFilter.add(new ControllerIdPredicate(opponentId)); - if (CountType.compare(game.getBattlefield().count(localFilter, source.getSourceId(), source.getControllerId(), game), type, this.count)) { + if (ComparisonType.compare(game.getBattlefield().count(localFilter, source.getSourceId(), source.getControllerId(), game), type, this.count)) { conditionApplies = true; break; } diff --git a/Mage/src/main/java/mage/abilities/condition/common/OpponentLostLifeCondition.java b/Mage/src/main/java/mage/abilities/condition/common/OpponentLostLifeCondition.java index 5fa01a16973..738cb089c9f 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/OpponentLostLifeCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/OpponentLostLifeCondition.java @@ -28,7 +28,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.IntCompareCondition; import mage.game.Game; import mage.watchers.common.PlayerLostLifeWatcher; @@ -42,7 +42,7 @@ import java.util.UUID; */ public class OpponentLostLifeCondition extends IntCompareCondition { - public OpponentLostLifeCondition(CountType type, int value) { + public OpponentLostLifeCondition(ComparisonType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/abilities/condition/common/PermanentHasCounterCondition.java b/Mage/src/main/java/mage/abilities/condition/common/PermanentHasCounterCondition.java index 55293b1a1ae..305834f6e9b 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/PermanentHasCounterCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/PermanentHasCounterCondition.java @@ -28,7 +28,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.counters.CounterType; import mage.game.Game; @@ -47,15 +47,15 @@ public class PermanentHasCounterCondition implements Condition { private CounterType counterType; private int amount; private FilterPermanent filter; - private CountType counttype; + private ComparisonType counttype; private boolean anyPlayer; public PermanentHasCounterCondition(CounterType counterType, int amount, FilterPermanent filter) { - this(counterType, amount, filter, CountType.EQUAL_TO); + this(counterType, amount, filter, ComparisonType.EQUAL_TO); this.anyPlayer = false; } - public PermanentHasCounterCondition(CounterType counterType, int amount, FilterPermanent filter, CountType type) { + public PermanentHasCounterCondition(CounterType counterType, int amount, FilterPermanent filter, ComparisonType type) { this.counterType = counterType; this.amount = amount; this.filter = filter; @@ -63,7 +63,7 @@ public class PermanentHasCounterCondition implements Condition { this.anyPlayer = false; } - public PermanentHasCounterCondition(CounterType counterType, int amount, FilterPermanent filter, CountType type, boolean any) { + public PermanentHasCounterCondition(CounterType counterType, int amount, FilterPermanent filter, ComparisonType type, boolean any) { this.counterType = counterType; this.amount = amount; this.filter = filter; @@ -77,7 +77,7 @@ public class PermanentHasCounterCondition implements Condition { permanents = game.getBattlefield().getAllActivePermanents(this.filter, game); } for (Permanent permanent : permanents) { - if(CountType.compare(permanent.getCounters(game).getCount(this.counterType), counttype, this.amount)) + if(ComparisonType.compare(permanent.getCounters(game).getCount(this.counterType), counttype, this.amount)) { return true; } diff --git a/Mage/src/main/java/mage/abilities/condition/common/PermanentsOnTheBattlefieldCondition.java b/Mage/src/main/java/mage/abilities/condition/common/PermanentsOnTheBattlefieldCondition.java index 8271280a7e2..bfd4b7798e5 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/PermanentsOnTheBattlefieldCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/PermanentsOnTheBattlefieldCondition.java @@ -28,7 +28,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.Condition; import mage.filter.FilterPermanent; import mage.filter.predicate.permanent.ControllerIdPredicate; @@ -47,23 +47,23 @@ public class PermanentsOnTheBattlefieldCondition implements Condition { private FilterPermanent filter; private Condition condition; - private CountType type; + private ComparisonType type; private int count; private boolean onlyControlled; /** * Applies a filter and delegates creation to * {@link #ControlsPermanent(mage.filter.FilterPermanent, mage.abilities.condition.common.ControlsPermanent.CountType, int)} - * with {@link CountType#MORE_THAN}, and 0. + * with {@link ComparisonType#MORE_THAN}, and 0. * * @param filter */ public PermanentsOnTheBattlefieldCondition(FilterPermanent filter) { - this(filter, CountType.MORE_THAN, 0); + this(filter, ComparisonType.MORE_THAN, 0); } /** - * Applies a filter, a {@link CountType}, and count to permanents on the + * Applies a filter, a {@link ComparisonType}, and count to permanents on the * battlefield when checking the condition during the * {@link #apply(mage.game.Game, mage.abilities.Ability) apply} method invocation. * @@ -71,11 +71,11 @@ public class PermanentsOnTheBattlefieldCondition implements Condition { * @param type * @param count */ - public PermanentsOnTheBattlefieldCondition(FilterPermanent filter, CountType type, int count) { + public PermanentsOnTheBattlefieldCondition(FilterPermanent filter, ComparisonType type, int count) { this(filter, type, count, true); } - public PermanentsOnTheBattlefieldCondition(FilterPermanent filter, CountType type, int count, boolean onlyControlled) { + public PermanentsOnTheBattlefieldCondition(FilterPermanent filter, ComparisonType type, int count, boolean onlyControlled) { this.filter = filter; this.type = type; this.count = count; @@ -83,7 +83,7 @@ public class PermanentsOnTheBattlefieldCondition implements Condition { } /** - * Applies a filter, a {@link CountType}, and count to permanents on the + * Applies a filter, a {@link ComparisonType}, and count to permanents on the * battlefield and calls the decorated condition to see if it * {@link #apply(mage.game.Game, mage.abilities.Ability) applies} * as well. This will force both conditions to apply for this to be true. @@ -93,7 +93,7 @@ public class PermanentsOnTheBattlefieldCondition implements Condition { * @param count * @param conditionToDecorate */ - public PermanentsOnTheBattlefieldCondition(FilterPermanent filter, CountType type, int count, Condition conditionToDecorate) { + public PermanentsOnTheBattlefieldCondition(FilterPermanent filter, ComparisonType type, int count, Condition conditionToDecorate) { this(filter, type, count); this.condition = conditionToDecorate; } @@ -108,7 +108,7 @@ public class PermanentsOnTheBattlefieldCondition implements Condition { } int permanentsOnBattlefield = game.getBattlefield().count(localFilter, source.getSourceId(), source.getControllerId(), game); - conditionApplies = CountType.compare(permanentsOnBattlefield, type, count); + conditionApplies = ComparisonType.compare(permanentsOnBattlefield, type, count); //If a decorated condition exists, check it as well and apply them together. if (this.condition != null) { diff --git a/Mage/src/main/java/mage/abilities/condition/common/YouGainedLifeCondition.java b/Mage/src/main/java/mage/abilities/condition/common/YouGainedLifeCondition.java index edfed0b8c01..6806e287770 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/YouGainedLifeCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/YouGainedLifeCondition.java @@ -1,7 +1,7 @@ package mage.abilities.condition.common; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.condition.IntCompareCondition; import mage.game.Game; import mage.watchers.common.PlayerGainedLifeWatcher; @@ -11,7 +11,7 @@ import mage.watchers.common.PlayerGainedLifeWatcher; */ public class YouGainedLifeCondition extends IntCompareCondition { - public YouGainedLifeCondition(CountType type, int value) { + public YouGainedLifeCondition(ComparisonType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java b/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java index 03bae928ed4..97938cd85d5 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/cost/CastWithoutPayingManaCostEffect.java @@ -29,7 +29,7 @@ package mage.abilities.effects.common.cost; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; import mage.constants.Outcome; @@ -58,7 +58,7 @@ public class CastWithoutPayingManaCostEffect extends OneShotEffect { public CastWithoutPayingManaCostEffect(int maxCost) { super(Outcome.PlayForFree); filter = new FilterNonlandCard("card with converted mana cost " + maxCost + " or less from your hand"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, maxCost + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, maxCost + 1)); this.manaCost = maxCost; this.staticText = "you may cast a card with converted mana cost " + maxCost + " or less from your hand without paying its mana cost"; } diff --git a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java index e4b753d777d..0fa13da8267 100644 --- a/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/common/search/SearchLibraryWithLessCMCPutInPlayEffect.java @@ -28,7 +28,7 @@ package mage.abilities.effects.common.search; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.effects.OneShotEffect; import mage.cards.Card; import mage.constants.Outcome; @@ -67,7 +67,7 @@ public class SearchLibraryWithLessCMCPutInPlayEffect extends OneShotEffect { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { FilterCard advancedFilter = filter.copy(); // never change static objects so copy the object here before - advancedFilter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); + advancedFilter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, source.getManaCostsToPay().getX() + 1)); TargetCardInLibrary target = new TargetCardInLibrary(advancedFilter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java b/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java index 8805ea9e7a4..55fc1074622 100644 --- a/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java +++ b/Mage/src/main/java/mage/abilities/effects/keyword/BolsterEffect.java @@ -28,7 +28,7 @@ package mage.abilities.effects.keyword; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.StaticValue; import mage.abilities.effects.Effect; @@ -96,7 +96,7 @@ public class BolsterEffect extends OneShotEffect { if (leastToughness != Integer.MAX_VALUE) { if (selectedCreature == null) { FilterPermanent filter = new FilterControlledCreaturePermanent("creature you control with toughness " + leastToughness); - filter.add(new ToughnessPredicate(CountType.EQUAL_TO, leastToughness)); + filter.add(new ToughnessPredicate(ComparisonType.EQUAL_TO, leastToughness)); Target target = new TargetPermanent(1,1, filter, true); if (controller.chooseTarget(outcome, target, source, game)) { selectedCreature = game.getPermanent(target.getFirstTarget()); diff --git a/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java b/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java index 027d6c67df2..306d710a24a 100644 --- a/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/SoulshiftAbility.java @@ -28,7 +28,7 @@ package mage.abilities.keyword; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.dynamicvalue.DynamicValue; import mage.abilities.dynamicvalue.common.StaticValue; @@ -76,7 +76,7 @@ public class SoulshiftAbility extends DiesTriggeredAbility { this.getTargets().clear(); int intValue = amount.calculate(game, this, null); FilterCard filter = new FilterCard("Spirit card with converted mana cost " + intValue + " or less from your graveyard"); - filter.add(new ConvertedManaCostPredicate(CountType.FEWER_THAN, intValue + 1)); + filter.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, intValue + 1)); filter.add(new SubtypePredicate("Spirit")); this.addTarget(new TargetCardInYourGraveyard(filter)); super.trigger(game, controllerId); //To change body of generated methods, choose Tools | Templates. diff --git a/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java b/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java index 0b87c3fe2a6..fc6f979b3bf 100644 --- a/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/TransmuteAbility.java @@ -2,7 +2,7 @@ package mage.abilities.keyword; import mage.MageObject; import mage.abilities.Ability; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.DiscardSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; @@ -78,7 +78,7 @@ class TransmuteEffect extends OneShotEffect { MageObject sourceObject = game.getObject(source.getSourceId()); if (sourceObject != null && controller != null) { FilterCard filter = new FilterCard("card with converted mana cost " + sourceObject.getConvertedManaCost()); - filter.add(new ConvertedManaCostPredicate(CountType.EQUAL_TO, sourceObject.getConvertedManaCost())); + filter.add(new ConvertedManaCostPredicate(ComparisonType.EQUAL_TO, sourceObject.getConvertedManaCost())); TargetCardInLibrary target = new TargetCardInLibrary(1, filter); if (controller.searchLibrary(target, game)) { if (!target.getTargets().isEmpty()) { diff --git a/Mage/src/main/java/mage/abilities/CountType.java b/Mage/src/main/java/mage/constants/ComparisonType.java similarity index 77% rename from Mage/src/main/java/mage/abilities/CountType.java rename to Mage/src/main/java/mage/constants/ComparisonType.java index 524829fbdaa..7f62a51f2ca 100644 --- a/Mage/src/main/java/mage/abilities/CountType.java +++ b/Mage/src/main/java/mage/constants/ComparisonType.java @@ -1,14 +1,14 @@ -package mage.abilities; +package mage.constants; /** * Created by IGOUDT on 5-3-2017. */ -public enum CountType { +public enum ComparisonType { MORE_THAN(">"), FEWER_THAN("<"), EQUAL_TO("=="); String operator; - CountType(String op) { + ComparisonType(String op) { operator = op; } @@ -18,7 +18,7 @@ public enum CountType { } - public static boolean compare(int source, CountType comparison, int target) { + public static boolean compare(int source, ComparisonType comparison, int target) { switch (comparison) { case MORE_THAN: return source > target; diff --git a/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java b/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java index 261f84f771d..fdf5d32d194 100644 --- a/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/IntComparePredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate; import mage.MageObject; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.game.Game; /** @@ -38,10 +38,10 @@ import mage.game.Game; */ public abstract class IntComparePredicate implements Predicate { - protected final CountType type; + protected final ComparisonType type; protected final int value; - public IntComparePredicate(CountType type, int value) { + public IntComparePredicate(ComparisonType type, int value) { this.type = type; this.value = value; } @@ -51,7 +51,7 @@ public abstract class IntComparePredicate implements Predi @Override public final boolean apply(T input, Game game) { int inputValue = getInputValue(input); - return CountType.compare(inputValue, type, value); + return ComparisonType.compare(inputValue, type, value); } @Override diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java index 7515c5e71be..615b7881d57 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/ConvertedManaCostPredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate.mageobject; import mage.MageObject; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.filter.predicate.IntComparePredicate; /** @@ -37,7 +37,7 @@ import mage.filter.predicate.IntComparePredicate; */ public class ConvertedManaCostPredicate extends IntComparePredicate { - public ConvertedManaCostPredicate(CountType type, int value) { + public ConvertedManaCostPredicate(ComparisonType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java index 45425282e32..f8b9d3826ae 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/PowerPredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate.mageobject; import mage.MageObject; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.filter.predicate.IntComparePredicate; /** @@ -37,7 +37,7 @@ import mage.filter.predicate.IntComparePredicate; */ public class PowerPredicate extends IntComparePredicate { - public PowerPredicate(CountType type, int value) { + public PowerPredicate(ComparisonType type, int value) { super(type, value); } diff --git a/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java b/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java index 228aaafed05..8cc1363eb1e 100644 --- a/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/mageobject/ToughnessPredicate.java @@ -28,7 +28,7 @@ package mage.filter.predicate.mageobject; import mage.MageObject; -import mage.abilities.CountType; +import mage.constants.ComparisonType; import mage.filter.predicate.IntComparePredicate; /** @@ -37,7 +37,7 @@ import mage.filter.predicate.IntComparePredicate; */ public class ToughnessPredicate extends IntComparePredicate { - public ToughnessPredicate(CountType type, int value) { + public ToughnessPredicate(ComparisonType type, int value) { super(type, value); } From 04f1b6306a18327e600d6aa0d8536155a264689f Mon Sep 17 00:00:00 2001 From: Jeff Date: Tue, 11 Apr 2017 17:53:34 -0500 Subject: [PATCH 11/21] - Added Cruel Reality. --- Mage.Sets/src/mage/cards/c/CruelReality.java | 169 +++++++++++++++++++ Mage.Sets/src/mage/sets/Amonkhet.java | 1 + 2 files changed, 170 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/c/CruelReality.java diff --git a/Mage.Sets/src/mage/cards/c/CruelReality.java b/Mage.Sets/src/mage/cards/c/CruelReality.java new file mode 100644 index 00000000000..a5c35dc0405 --- /dev/null +++ b/Mage.Sets/src/mage/cards/c/CruelReality.java @@ -0,0 +1,169 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.c; + +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; + +import java.util.UUID; +import mage.abilities.Ability; +import mage.abilities.TriggeredAbilityImpl; +import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.keyword.EnchantAbility; +import mage.constants.Outcome; +import mage.constants.Zone; +import mage.filter.common.FilterControlledPermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.CardTypePredicate; +import mage.game.Game; +import mage.game.events.GameEvent; +import mage.game.events.GameEvent.EventType; +import mage.game.permanent.Permanent; +import mage.players.Player; +import mage.target.TargetPermanent; +import mage.target.TargetPlayer; +import mage.target.targetpointer.FixedTarget; + +/** + * + * @author jeffwadsworth + */ +public class CruelReality extends CardImpl { + + public CruelReality(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{5}{B}{B}"); + this.subtype.add("Aura"); + this.subtype.add("Curse"); + this.color.setBlack(true); + + // Enchant player + TargetPlayer auraTarget = new TargetPlayer(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.Damage)); + this.addAbility(new EnchantAbility(auraTarget.getTargetName())); + + //At the beginning of enchanted player's upkeep, that player sacrifices a creature or planeswalker. If the player can't, he or she loses 5 life. + this.addAbility(new CruelRealityTriggeredAbiilty()); + + } + + public CruelReality(final CruelReality card) { + super(card); + } + + @Override + public CruelReality copy() { + return new CruelReality(this); + } +} + +class CruelRealityTriggeredAbiilty extends TriggeredAbilityImpl { + + public CruelRealityTriggeredAbiilty() { + super(Zone.BATTLEFIELD, new CruelRealityEffect()); + } + + public CruelRealityTriggeredAbiilty(final CruelRealityTriggeredAbiilty ability) { + super(ability); + } + + @Override + public CruelRealityTriggeredAbiilty copy() { + return new CruelRealityTriggeredAbiilty(this); + } + + @Override + public boolean checkEventType(GameEvent event, Game game) { + return event.getType() == EventType.UPKEEP_STEP_PRE; + } + + @Override + public boolean checkTrigger(GameEvent event, Game game) { + Permanent enchantment = game.getPermanent(this.sourceId); + if (enchantment != null + && enchantment.getAttachedTo() != null) { + Player cursedPlayer = game.getPlayer(enchantment.getAttachedTo()); + if (cursedPlayer != null + && game.getActivePlayerId().equals(cursedPlayer.getId())) { + this.getEffects().get(0).setTargetPointer(new FixedTarget(cursedPlayer.getId())); + return true; + } + } + return false; + } + + @Override + public String getRule() { + return "At the beginning of enchanted player's upkeep, " + super.getRule(); + } +} + +class CruelRealityEffect extends OneShotEffect { + + public CruelRealityEffect() { + super(Outcome.LoseLife); + staticText = "that player sacrifices a creature or planeswalker. If the player can't, he or she loses 5 life"; + } + + public CruelRealityEffect(final CruelRealityEffect effect) { + super(effect); + } + + @Override + public CruelRealityEffect copy() { + return new CruelRealityEffect(this); + } + + @Override + public boolean apply(Game game, Ability source) { + Player cursedPlayer = game.getPlayer(targetPointer.getFirst(game, source)); + Player controller = game.getPlayer(source.getControllerId()); + if (cursedPlayer != null + && controller != null) { + if (cursedPlayer.chooseUse(outcome, "Sacrifice a creature or planeswalker?", source, game)) { + FilterControlledPermanent filter = new FilterControlledPermanent(); + filter.add(Predicates.or( + new CardTypePredicate(CardType.CREATURE), + new CardTypePredicate(CardType.PLANESWALKER))); + TargetPermanent target = new TargetPermanent(filter); + if (cursedPlayer.choose(outcome, target, source.getId(), game)) { + Permanent objectToBeSacrificed = game.getPermanent(target.getFirstTarget()); + if (objectToBeSacrificed != null) { + if (objectToBeSacrificed.sacrifice(source.getId(), game)) { + return true; + } + } + } + } + cursedPlayer.loseLife(5, game, false); + } + return false; + } +} diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index c68c11e2688..cec12836493 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -89,6 +89,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Companion of the Trials", 271, Rarity.UNCOMMON, mage.cards.c.CompanionOfTheTrials.class)); cards.add(new SetCardInfo("Consuming Fervor", 126, Rarity.UNCOMMON, mage.cards.c.ConsumingFervor.class)); cards.add(new SetCardInfo("Crocodile of the Crossing", 162, Rarity.UNCOMMON, mage.cards.c.CrocodileOfTheCrossing.class)); + cards.add(new SetCardInfo("Cruel Reality", 84, Rarity.MYTHIC, mage.cards.c.CruelReality.class)); cards.add(new SetCardInfo("Curator of Mysteries", 49, Rarity.RARE, mage.cards.c.CuratorOfMysteries.class)); cards.add(new SetCardInfo("Cursed Minotaur", 85, Rarity.COMMON, mage.cards.c.CursedMinotaur.class)); cards.add(new SetCardInfo("Cut // Ribbons", 223, Rarity.RARE, mage.cards.c.CutRibbons.class)); From db74576397fae9c4562daac3f7c85a180b1d4766 Mon Sep 17 00:00:00 2001 From: Mark Langen Date: Tue, 11 Apr 2017 17:27:42 -0600 Subject: [PATCH 12/21] Added 4 cards from AHK * Added Cartouche of Strength * Added Nest of Scarabs (More correct implementation than existing one) * Added Soul-Scar Mage * Added Battlefield Scavenger --- .../mage/cards/b/BattlefieldScavenger.java | 109 ++++++++++++++ .../mage/cards/c/CartoucheOfKnowledge.java | 2 +- .../src/mage/cards/c/CartoucheOfStrength.java | 142 ++++++++++++++++++ Mage.Sets/src/mage/cards/n/NestOfScarabs.java | 61 ++------ Mage.Sets/src/mage/cards/s/SoulScarMage.java | 121 +++++++++++++++ Mage.Sets/src/mage/sets/Amonkhet.java | 3 + .../dynamicvalue/common/EffectKeyValue.java | 45 ++++++ .../effects/common/RummageEffect.java | 12 ++ .../mage/abilities/keyword/ExertAbility.java | 17 ++- 9 files changed, 459 insertions(+), 53 deletions(-) create mode 100644 Mage.Sets/src/mage/cards/b/BattlefieldScavenger.java create mode 100644 Mage.Sets/src/mage/cards/c/CartoucheOfStrength.java create mode 100644 Mage.Sets/src/mage/cards/s/SoulScarMage.java create mode 100644 Mage/src/main/java/mage/abilities/dynamicvalue/common/EffectKeyValue.java create mode 100644 Mage/src/main/java/mage/abilities/effects/common/RummageEffect.java diff --git a/Mage.Sets/src/mage/cards/b/BattlefieldScavenger.java b/Mage.Sets/src/mage/cards/b/BattlefieldScavenger.java new file mode 100644 index 00000000000..a6184a253a2 --- /dev/null +++ b/Mage.Sets/src/mage/cards/b/BattlefieldScavenger.java @@ -0,0 +1,109 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.b; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.AbilityImpl; +import mage.abilities.TriggeredAbilityImpl; +import mage.abilities.effects.Effect; +import mage.abilities.effects.common.RummageEffect; +import mage.abilities.keyword.ExertAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Zone; +import mage.game.Game; +import mage.game.events.GameEvent; +import mage.game.permanent.Permanent; + +/** + * + * @author anonymous + */ +public class BattlefieldScavenger extends CardImpl { + + public BattlefieldScavenger(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}"); + + this.subtype.add("Jackal"); + this.subtype.add("Rogue"); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // You may exert Battlefield Scavenger as it attacks. + this.addAbility(new ExertAbility(null, false)); + + // Whenever you exert a creature, you may discard a card. If you do, draw a card. + this.addAbility(new WheneverYouExertCreatureTriggeredAbility(new RummageEffect())); + } + + public BattlefieldScavenger(final BattlefieldScavenger card) { + super(card); + } + + @Override + public BattlefieldScavenger copy() { + return new BattlefieldScavenger(this); + } +} + + +class WheneverYouExertCreatureTriggeredAbility extends TriggeredAbilityImpl { + + WheneverYouExertCreatureTriggeredAbility(Effect effect) { + super(Zone.BATTLEFIELD, effect); + } + + WheneverYouExertCreatureTriggeredAbility(final WheneverYouExertCreatureTriggeredAbility ability) { + super(ability); + } + + @Override + public boolean checkEventType(GameEvent event, Game game) { + return event.getType() == GameEvent.EventType.BECOMES_EXERTED; + } + + @Override + public boolean checkTrigger(GameEvent event, Game game) { + boolean weAreExerting = getControllerId().equals(event.getPlayerId()); + Permanent exerted = game.getPermanent(event.getTargetId()); + boolean exertedIsCreature = (exerted != null) && exerted.isCreature(); + return weAreExerting && exertedIsCreature; + } + + @Override + public WheneverYouExertCreatureTriggeredAbility copy() { + return new WheneverYouExertCreatureTriggeredAbility(this); + } + + @Override + public String getRule() { + return "Whenever you exert a creature, " + super.getRule(); + } +} diff --git a/Mage.Sets/src/mage/cards/c/CartoucheOfKnowledge.java b/Mage.Sets/src/mage/cards/c/CartoucheOfKnowledge.java index f304bffecc7..7634b9852ea 100644 --- a/Mage.Sets/src/mage/cards/c/CartoucheOfKnowledge.java +++ b/Mage.Sets/src/mage/cards/c/CartoucheOfKnowledge.java @@ -71,7 +71,7 @@ public class CartoucheOfKnowledge extends CardImpl { this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1))); // Enchanted creature gets +1/+1 and has flying. - ability =new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)); + ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)); Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA); effect.setText("and has flying"); ability.addEffect(effect); diff --git a/Mage.Sets/src/mage/cards/c/CartoucheOfStrength.java b/Mage.Sets/src/mage/cards/c/CartoucheOfStrength.java new file mode 100644 index 00000000000..14197bb87b8 --- /dev/null +++ b/Mage.Sets/src/mage/cards/c/CartoucheOfStrength.java @@ -0,0 +1,142 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.c; + +import java.util.UUID; +import mage.abilities.Ability; +import mage.abilities.Mode; +import mage.abilities.common.EntersBattlefieldAbility; +import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.effects.Effect; +import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continuous.BoostEnchantedEffect; +import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect; +import mage.abilities.keyword.TrampleAbility; +import mage.constants.*; +import mage.game.Game; +import mage.game.permanent.Permanent; +import mage.target.TargetPermanent; +import mage.abilities.keyword.EnchantAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.target.common.TargetControlledCreaturePermanent; +import mage.target.common.TargetOpponentsCreaturePermanent; + +/** + * + * @author stravant + */ +public class CartoucheOfStrength extends CardImpl { + + public CartoucheOfStrength(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}"); + + this.subtype.add("Aura"); + this.subtype.add("Cartouche"); + + // Enchant creature you control + TargetPermanent auraTarget = new TargetControlledCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + + // When Cartouche of Strength enters the battlefield, you may have enchanted creature fight target creature an opponent controls. + ability = new EntersBattlefieldTriggeredAbility(new FightEnchantedTargetEffect(), /* optional = */true); + ability.addTarget(new TargetOpponentsCreaturePermanent()); + this.addAbility(ability); + + // Enchanted creature gets +1/+1 and has trample. + ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)); + Effect effect = new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA); + effect.setText("and has trample"); + ability.addEffect(effect); + this.addAbility(ability); + } + + public CartoucheOfStrength(final CartoucheOfStrength card) { + super(card); + } + + @Override + public CartoucheOfStrength copy() { + return new CartoucheOfStrength(this); + } +} + +/** + * + * @author stravant + */ +class FightEnchantedTargetEffect extends OneShotEffect { + public FightEnchantedTargetEffect() { + super(Outcome.Damage); + } + + public FightEnchantedTargetEffect(final FightEnchantedTargetEffect effect) { + super(effect); + } + + @Override + public boolean apply(Game game, Ability source) { + Permanent sourcePermanent = game.getPermanent(source.getSourceId()); + if (sourcePermanent != null) { + Permanent originalCreature = game.getPermanentOrLKIBattlefield(sourcePermanent.getAttachedTo()); + if (originalCreature != null) { + Permanent enchantedCreature = game.getPermanent(sourcePermanent.getAttachedTo()); + // only if target is legal the effect will be applied + if (source.getTargets().get(0).isLegal(source, game)) { + Permanent creature1 = game.getPermanent(source.getTargets().get(0).getFirstTarget()); + // 20110930 - 701.10 + if (creature1 != null && enchantedCreature != null) { + if (creature1.isCreature() && enchantedCreature.isCreature()) { + return enchantedCreature.fight(creature1, source, game); + } + } + } + if (!game.isSimulation()) + game.informPlayers(originalCreature.getLogName() + ": Fighting effect has been fizzled."); + } + } + return false; + } + + @Override + public FightEnchantedTargetEffect copy() { + return new FightEnchantedTargetEffect(this); + } + + @Override + public String getText(Mode mode) { + return "you may have enchanted creature fight target creature an opponent controls."; + } + +} \ No newline at end of file diff --git a/Mage.Sets/src/mage/cards/n/NestOfScarabs.java b/Mage.Sets/src/mage/cards/n/NestOfScarabs.java index 7ef0c72c90e..b844353245c 100644 --- a/Mage.Sets/src/mage/cards/n/NestOfScarabs.java +++ b/Mage.Sets/src/mage/cards/n/NestOfScarabs.java @@ -28,16 +28,14 @@ package mage.cards.n; import java.util.UUID; + import mage.MageInt; -import mage.abilities.Ability; import mage.abilities.TriggeredAbilityImpl; -import mage.abilities.effects.Effect; -import mage.abilities.effects.OneShotEffect; +import mage.abilities.dynamicvalue.common.EffectKeyValue; import mage.abilities.effects.common.CreateTokenEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.constants.Outcome; import mage.constants.Zone; import mage.counters.CounterType; import mage.game.Game; @@ -47,7 +45,7 @@ import mage.game.permanent.token.Token; /** * - * @author Styxo + * @author stravant */ public class NestOfScarabs extends CardImpl { @@ -55,7 +53,8 @@ public class NestOfScarabs extends CardImpl { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}"); // Whenever you put one or more -1/-1 counters on a creature, create that many 1/1 black Insect tokens. - this.addAbility(new NestOfScarabsTriggeredAbility(new NestOfScarabsEffect(), false)); + this.addAbility(new NestOfScarabsTriggeredAbility()); + } public NestOfScarabs(final NestOfScarabs card) { @@ -70,11 +69,11 @@ public class NestOfScarabs extends CardImpl { class NestOfScarabsTriggeredAbility extends TriggeredAbilityImpl { - public NestOfScarabsTriggeredAbility(Effect effect, boolean optional) { - super(Zone.BATTLEFIELD, effect, optional); + NestOfScarabsTriggeredAbility() { + super(Zone.BATTLEFIELD, new CreateTokenEffect(new BlackInsectToken(), new EffectKeyValue("countersAdded"))); } - public NestOfScarabsTriggeredAbility(NestOfScarabsTriggeredAbility ability) { + NestOfScarabsTriggeredAbility(final NestOfScarabsTriggeredAbility ability) { super(ability); } @@ -85,20 +84,19 @@ class NestOfScarabsTriggeredAbility extends TriggeredAbilityImpl { @Override public boolean checkTrigger(GameEvent event, Game game) { - if (event.getData().equals(CounterType.M1M1.getName())) { + boolean weAreDoingIt = getControllerId().equals(game.getControllerId(event.getSourceId())); + boolean isM1M1Counters = event.getData().equals(CounterType.M1M1.getName()); + if (weAreDoingIt && isM1M1Counters) { Permanent permanent = game.getPermanentOrLKIBattlefield(event.getTargetId()); if (permanent == null) { permanent = game.getPermanentEntering(event.getTargetId()); } - if (permanent != null && permanent.isCreature()) { - this.getEffects().forEach((effect) -> { - effect.setValue("countersAdded", event.getAmount()); - }); + if (permanent.isCreature()) { + getEffects().forEach(effect -> effect.setValue("countersAdded", event.getAmount())); return true; } } return false; - } @Override @@ -108,40 +106,13 @@ class NestOfScarabsTriggeredAbility extends TriggeredAbilityImpl { @Override public String getRule() { - return "Whenever you put one or more -1/-1 counters on a creature, " + super.getRule(); - } -} - -class NestOfScarabsEffect extends OneShotEffect { - - public NestOfScarabsEffect() { - super(Outcome.Benefit); - this.staticText = "create that many 1/1 black Insect tokens"; - } - - public NestOfScarabsEffect(final NestOfScarabsEffect effect) { - super(effect); - } - - @Override - public NestOfScarabsEffect copy() { - return new NestOfScarabsEffect(this); - } - - @Override - public boolean apply(Game game, Ability source) { - int countersAdded = (Integer) this.getValue("countersAdded"); - if (countersAdded > 0) { - return new CreateTokenEffect(new BlackInsectToken(), countersAdded).apply(game, source); - } - return false; + return "Whenever you put one or more -1/-1 counters on a creature, create that many 1/1 black Insect tokens."; } } class BlackInsectToken extends Token { - - public BlackInsectToken() { - super("Insect", "1/1 black Insect creature token"); + BlackInsectToken() { + super("Insect", "1/1 black Insect token"); cardType.add(CardType.CREATURE); color.setBlack(true); subtype.add("Insect"); diff --git a/Mage.Sets/src/mage/cards/s/SoulScarMage.java b/Mage.Sets/src/mage/cards/s/SoulScarMage.java new file mode 100644 index 00000000000..4f12aa3ba96 --- /dev/null +++ b/Mage.Sets/src/mage/cards/s/SoulScarMage.java @@ -0,0 +1,121 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.s; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.dynamicvalue.common.StaticValue; +import mage.abilities.effects.ReplacementEffectImpl; +import mage.abilities.effects.common.counter.AddCountersTargetEffect; +import mage.abilities.keyword.ProwessAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Outcome; +import mage.constants.Zone; +import mage.counters.CounterType; +import mage.game.Game; +import mage.game.events.DamageCreatureEvent; +import mage.game.events.GameEvent; +import mage.game.permanent.Permanent; +import mage.target.targetpointer.FixedTarget; + +/** + * + * @author stravant + */ +public class SoulScarMage extends CardImpl { + + public SoulScarMage(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}"); + + this.subtype.add("Human"); + this.subtype.add("Wizard"); + this.power = new MageInt(1); + this.toughness = new MageInt(2); + + // Prowess + this.addAbility(new ProwessAbility()); + + // If a source you control would deal noncombat damage to a creature an opponent controls, put that many -1/-1 counters on that creature instead. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SoulScarMageDamageReplacementEffect())); + } + + public SoulScarMage(final SoulScarMage card) { + super(card); + } + + @Override + public SoulScarMage copy() { + return new SoulScarMage(this); + } +} + +class SoulScarMageDamageReplacementEffect extends ReplacementEffectImpl { + + public SoulScarMageDamageReplacementEffect() { + super(Duration.WhileOnBattlefield, Outcome.Benefit); + staticText = "If a source you control would deal noncombat damage to a creature an opponent controls, put that many -1/-1 counters on that creature instead."; + } + + public SoulScarMageDamageReplacementEffect(final SoulScarMageDamageReplacementEffect effect) { + super(effect); + } + + @Override + public SoulScarMageDamageReplacementEffect copy() { + return new SoulScarMageDamageReplacementEffect(this); + } + + @Override + public boolean replaceEvent(GameEvent event, Ability source, Game game) { + Permanent toGetCounters = game.getPermanent(event.getTargetId()); + if (toGetCounters != null) { + AddCountersTargetEffect addCounters = new AddCountersTargetEffect(CounterType.M1M1.createInstance(), new StaticValue(event.getAmount())); + addCounters.setTargetPointer(new FixedTarget(toGetCounters.getId())); + addCounters.apply(game, source); + return true; + } + return false; + } + + @Override + public boolean checksEventType(GameEvent event, Game game) { + return event.getType() == GameEvent.EventType.DAMAGE_CREATURE; + } + + @Override + public boolean applies(GameEvent event, Ability source, Game game) { + boolean weControlSource = game.getControllerId(event.getSourceId()).equals(source.getControllerId()); + boolean isNoncombatDamage = !((DamageCreatureEvent)event).isCombatDamage(); + return weControlSource && isNoncombatDamage; + } +} diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index cec12836493..60c7d438bea 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -74,11 +74,13 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Archfiend of Ifnir", 78, Rarity.RARE, mage.cards.a.ArchfiendOfIfnir.class)); cards.add(new SetCardInfo("As Foretold", 42, Rarity.MYTHIC, mage.cards.a.AsForetold.class)); cards.add(new SetCardInfo("Aven Mindcensor", 5, Rarity.RARE, mage.cards.a.AvenMindcensor.class)); + cards.add(new SetCardInfo("Battlefield Scavenger", 118, Rarity.UNCOMMON, mage.cards.b.BattlefieldScavenger.class)); cards.add(new SetCardInfo("Bontu's Monument", 225, Rarity.UNCOMMON, mage.cards.b.BontusMonument.class)); cards.add(new SetCardInfo("Canyon Slough", 239, Rarity.RARE, mage.cards.c.CanyonSlough.class)); cards.add(new SetCardInfo("Cartouche of Ambition", 83, Rarity.COMMON, mage.cards.c.CartoucheOfAmbition.class)); cards.add(new SetCardInfo("Cartouche of Knowledge", 45, Rarity.COMMON, mage.cards.c.CartoucheOfKnowledge.class)); cards.add(new SetCardInfo("Cartouche of Solidarity", 7, Rarity.COMMON, mage.cards.c.CartoucheOfSolidarity.class)); + cards.add(new SetCardInfo("Cartouche of Strength", 158, Rarity.COMMON, mage.cards.c.CartoucheOfStrength.class)); cards.add(new SetCardInfo("Cartouche of Zeal", 124, Rarity.COMMON, mage.cards.c.CartoucheOfZeal.class)); cards.add(new SetCardInfo("Cast Out", 8, Rarity.UNCOMMON, mage.cards.c.CastOut.class)); cards.add(new SetCardInfo("Censor", 46, Rarity.UNCOMMON, mage.cards.c.Censor.class)); @@ -184,6 +186,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Scribe of the Mindful", 68, Rarity.COMMON, mage.cards.s.ScribeOfTheMindful.class)); cards.add(new SetCardInfo("Sheltered Thicket", 248, Rarity.RARE, mage.cards.s.ShelteredThicket.class)); cards.add(new SetCardInfo("Sixth Sense", 187, Rarity.UNCOMMON, mage.cards.s.SixthSense.class)); + cards.add(new SetCardInfo("Soul-Scar Mage", 149, Rarity.RARE, mage.cards.s.SoulScarMage.class)); cards.add(new SetCardInfo("Spidery Grasp", 188, Rarity.COMMON, mage.cards.s.SpideryGrasp.class)); cards.add(new SetCardInfo("Splendid Agony", 109, Rarity.COMMON, mage.cards.s.SplendidAgony.class)); cards.add(new SetCardInfo("Supply Caravan", 30, Rarity.COMMON, mage.cards.s.SupplyCaravan.class)); diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/EffectKeyValue.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/EffectKeyValue.java new file mode 100644 index 00000000000..1b6e03eb648 --- /dev/null +++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/EffectKeyValue.java @@ -0,0 +1,45 @@ +package mage.abilities.dynamicvalue.common; + + +import mage.abilities.Ability; +import mage.abilities.dynamicvalue.DynamicValue; +import mage.abilities.effects.Effect; +import mage.game.Game; + +/** + * @author stravant + */ +public class EffectKeyValue implements DynamicValue { + private String key; + private String description; + + public EffectKeyValue(String key) { + this.key = key; + this.description = key; + } + + public EffectKeyValue(String key, String description) { + this(key); + this.description = description; + } + + @Override + public int calculate(Game game, Ability source, Effect effect) { + return (Integer)effect.getValue(key); + } + + @Override + public EffectKeyValue copy(){ + return new EffectKeyValue(this.key, this.description); + } + + @Override + public String toString() { + return "equal to"; + } + + @Override + public String getMessage() { + return description; + } +} \ No newline at end of file diff --git a/Mage/src/main/java/mage/abilities/effects/common/RummageEffect.java b/Mage/src/main/java/mage/abilities/effects/common/RummageEffect.java new file mode 100644 index 00000000000..6df19ab2ddb --- /dev/null +++ b/Mage/src/main/java/mage/abilities/effects/common/RummageEffect.java @@ -0,0 +1,12 @@ +package mage.abilities.effects.common; + +import mage.abilities.costs.common.DiscardCardCost; + +/** + * @author stravant + */ +public class RummageEffect extends DoIfCostPaid { + public RummageEffect() { + super(new DrawCardSourceControllerEffect(1), new DiscardCardCost()); + } +} \ No newline at end of file diff --git a/Mage/src/main/java/mage/abilities/keyword/ExertAbility.java b/Mage/src/main/java/mage/abilities/keyword/ExertAbility.java index 323118d132c..dde33b839d1 100644 --- a/Mage/src/main/java/mage/abilities/keyword/ExertAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/ExertAbility.java @@ -55,7 +55,7 @@ import mage.watchers.Watcher; */ public class ExertAbility extends SimpleStaticAbility { - final private String ruleText; + private String ruleText; public ExertAbility(BecomesExertSourceTriggeredAbility ability) { this(ability, false); @@ -63,14 +63,17 @@ public class ExertAbility extends SimpleStaticAbility { public ExertAbility(BecomesExertSourceTriggeredAbility ability, boolean exertOnlyOncePerTurn) { super(Zone.BATTLEFIELD, new ExertReplacementEffect(exertOnlyOncePerTurn)); - this.addSubAbility(ability); ruleText = (exertOnlyOncePerTurn ? "If {this} hasn't been exerted this turn, you may exert it" - : "You may exert {this}") - + " as it attacks. When you do, " - + ability.getEffects().get(0).getText(ability.getModes().getMode()) - + ". (An exterted creature can't untap during your next untap step)"; - ability.setRuleVisible(false); + : "You may exert {this}") + " as it attacks. "; + if (ability != null) { + this.addSubAbility(ability); + ruleText += ("When you do, " + + ability.getEffects().get(0).getText(ability.getModes().getMode()) + + ". "); + ability.setRuleVisible(false); + } + ruleText += "(An exterted creature can't untap during your next untap step)"; if (exertOnlyOncePerTurn) { getWatchers().add(new ExertedThisTurnWatcher()); } From 83971539d24fbf86ca4cc0d52590e28db157de86 Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 10:10:33 +1000 Subject: [PATCH 13/21] spjspj - Fix up gen-existing-cards-by-set.pl for handling split cards (relevant to Amonkhet). --- Utils/gen-existing-cards-by-set.pl | 55 +++++++++++++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) diff --git a/Utils/gen-existing-cards-by-set.pl b/Utils/gen-existing-cards-by-set.pl index dc95dd1c2bd..66ac22e1ac6 100755 --- a/Utils/gen-existing-cards-by-set.pl +++ b/Utils/gen-existing-cards-by-set.pl @@ -56,12 +56,56 @@ while(my $line = ) { if ($data[1] eq $setName) { my $cardInfo = "$data[0],,,$data[2]"; + push(@setCards, $cardInfo); - $cardsFound = $cardsFound + 1; } else { $all_sets {$data[1]} = 1; } } + +# Fix up split cards +my $potentialSideA; +my @tempSetCards; + +foreach $potentialSideA (sort @setCards) { + #print (">>$potentialSideA\n"); + if ($potentialSideA =~ m/.*,,,(\d+)(a)$/) { + my $cardNumSideB = $1 . "b"; + my $val; + foreach $val (sort @setCards) { + if ($val =~ m/$cardNumSideB$/) { + $potentialSideA =~ s/,,,.*//; + $val =~ s/,,,.*//; + + # Add 'SideaSideb' to %cards + my $ds = $cards{$val}{$setName}; + print ("$potentialSideA$val,,,$cardNumSideB\n"); + my @newCard; + push (@newCard, "$potentialSideA$val"); + push (@newCard, "$setName"); + push (@newCard, "SPLIT"); + push (@newCard, @$ds[3]); + push (@newCard, "$potentialSideA // $val"); + $cards{$newCard[0]}{$newCard[1]} = \@newCard; + + $cardNumSideB =~ s/.$//; + push (@tempSetCards, "$potentialSideA$val,,,$cardNumSideB"); + + print ("Adding in: $potentialSideA \/\/ $val,,,$cardNumSideB\n"); + $cardsFound = $cardsFound - 1; + } + } + } + elsif ($potentialSideA =~ m/.*,,,(\d+)(b)$/) { + next; + } + else { + $cardsFound = $cardsFound + 1; + push (@tempSetCards, $potentialSideA); + } +} +@setCards = @tempSetCards; + close(DATA); print "Number of cards found for set " . $setName . ": " . $cardsFound . "\n"; @@ -186,6 +230,8 @@ foreach $name_collectorid (sort @setCards) } } else { + my $ds; + $ds = $cards{$cardName}{$setName}; my $className = toCamelCase($cardName); my $setId = lc($cardName); $setId =~ s/^(.).*/$1/; @@ -193,6 +239,13 @@ foreach $name_collectorid (sort @setCards) $googleSetName =~ s/ /+/img; my $fn = "..\\Mage.Sets\\src\\mage\\cards\\$setId\\$className.java"; my $str = " cards.add(new SetCardInfo(\"$cardName\", $cardNr, Rarity." . getRarity ($cards{$cardName}{$setName}[3], $cardName) . ", mage.cards.$setId.$className.class));\n"; + + if (@$ds[2] eq "SPLIT") { + my $oldCardName = $cardName; + $cardName = @$ds[4]; + $str = " cards.add(new SetCardInfo(\"$cardName\", $cardNr, Rarity." . getRarity ($cards{$oldCardName}{$setName}[3], $oldCardName) . ", mage.cards.$setId.$className.class));\n"; + } + my $plus_cardName = $cardName; $plus_cardName =~ s/ /+/img; $plus_cardName =~ s/,/+/img; From c5d9daccbea42b800758e237462faaa128927469 Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 12:12:43 +1000 Subject: [PATCH 14/21] Rhonas - fix in mtg-cards-data.txt --- Utils/mtg-cards-data.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 01ad0bdc0ab..dcbcd85ac0a 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -30921,7 +30921,7 @@ Manglehorn|Amonkhet|175|U|{2}{G}|Creature - Beast|2|2|When Manglehorn enters the Pouncing Cheetah|Amonkhet|179|C|{2}{G}|Creature - Cat|3|2|Flash| Prowling Serpopard|Amonkhet|180|R|{1}{G}{G}|Creature - Cat Snake|4|3|Prowling Serpopard can't be countered.$Creature spells you control can't be countered.| Quarry Hauler|Amonkhet|181|C|{3}{G}|Creature - Camel|4|3|When Quarry Hauler enters the battlefield, for each kind of counter on target permanent, put another counter of that kind on it or remove one from it.| -Rhonas, the Indomitable|Amonkhet|182|{2}{G}|Legendary Creature - God|5|5|Deathtouch, indestructible$Rhonas, the Indomitable can't attack or block unless you control another creature with power 4 or greater.${2}{G}: Another target creature gets +2/+0 and gains trample until end of turn.| +Rhonas, the Indomitable|Amonkhet|182|M|{2}{G}|Legendary Creature - God|5|5|Deathtouch, indestructible$Rhonas, the Indomitable can't attack or block unless you control another creature with power 4 or greater.${2}{G}: Another target creature gets +2/+0 and gains trample until end of turn.| Shefet Monitor|Amonkhet|186|U|{5}{G}|Creature - Lizard|6|5|Cycling {3}{G}$When you cycle Shefet Monitor, you may search your library for a basic land card or a Desert card, put it onto the battlefield, then shuffle your library.| Sixth Sense|Amonkhet|187|U|{G}|Enchantment - Aura|||Enchant creature$Enchanted creature has "Whenever this creature deals combat damage to a player, you may draw a card."| Spidery Grasp|Amonkhet|188|C|{2}{G}|Instant|||Untap target creature. It gets +2/+4 and gains reach until end of turn.| @@ -31001,4 +31001,4 @@ Liliana, Death Wielder|Amonkhet|274|M|{5}{B}{B}|Planeswalker - Liliana|||+2: Put Desiccated Naga|Amonkhet|276|U|{2}{B}|Creature - Zombie Naga|3|2|{3}{B}: Target opponent loses 2 life and you gain 2 life. Activate this ability only if you control a Liliana planeswalker.| Liliana's Influence|Amonkhet|277|R|{4}{B}{B}|Sorcery|||Put a -1/-1 counter on each creature you don't control. You may search your library and/or graveyard for a card named Liliana, Death Wielder, reveal it, and put it into your hand. If you search your library this way, shuffle it.| Tattered Mummy|Amonkhet|278|C|{1}{B}|Creature - Zombie Jackal|1|2|When Tattered Mummy dies, each opponent loses 2 life.| -Foul Orchard|Amonkhet|279|C||Land|||Foul Orchard enters the battlefield tapped.${T}: Add {B} or {G} to your mana pool.| \ No newline at end of file +Foul Orchard|Amonkhet|279|C||Land|||Foul Orchard enters the battlefield tapped.${T}: Add {B} or {G} to your mana pool.| From d82eeacf4fa9a53b02499f172891de10953d9d92 Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 12:17:30 +1000 Subject: [PATCH 15/21] Amonkhet - minor housekeeping --- Mage.Sets/src/mage/sets/Amonkhet.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index 60c7d438bea..e6c9b07bdf3 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -66,11 +66,11 @@ public class Amonkhet extends ExpansionSet { this.ratioBoosterSpecialLand = 144; cards.add(new SetCardInfo("Ahn-Crop Crasher", 117, Rarity.UNCOMMON, mage.cards.a.AhnCropCrasher.class)); - cards.add(new SetCardInfo("Approach of the Second Sun", 4, Rarity.RARE, mage.cards.a.ApproachOfTheSecondSun.class)); cards.add(new SetCardInfo("Ancient Crab", 40, Rarity.COMMON, mage.cards.a.AncientCrab.class)); cards.add(new SetCardInfo("Angel of Sanctions", 1, Rarity.MYTHIC, mage.cards.a.AngelOfSanctions.class)); cards.add(new SetCardInfo("Angler Drake", 41, Rarity.UNCOMMON, mage.cards.a.AnglerDrake.class)); cards.add(new SetCardInfo("Anointer Priest", 3, Rarity.COMMON, mage.cards.a.AnointerPriest.class)); + cards.add(new SetCardInfo("Approach of the Second Sun", 4, Rarity.RARE, mage.cards.a.ApproachOfTheSecondSun.class)); cards.add(new SetCardInfo("Archfiend of Ifnir", 78, Rarity.RARE, mage.cards.a.ArchfiendOfIfnir.class)); cards.add(new SetCardInfo("As Foretold", 42, Rarity.MYTHIC, mage.cards.a.AsForetold.class)); cards.add(new SetCardInfo("Aven Mindcensor", 5, Rarity.RARE, mage.cards.a.AvenMindcensor.class)); @@ -125,6 +125,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Graceful Cat", 273, Rarity.COMMON, mage.cards.g.GracefulCat.class)); cards.add(new SetCardInfo("Gravedigger", 93, Rarity.UNCOMMON, mage.cards.g.Gravedigger.class)); cards.add(new SetCardInfo("Grim Strider", 93, Rarity.UNCOMMON, mage.cards.g.GrimStrider.class)); + cards.add(new SetCardInfo("Grim Strider", 94, Rarity.UNCOMMON, mage.cards.g.GrimStrider.class)); cards.add(new SetCardInfo("Hapatra, Vizier of Poisons", 199, Rarity.RARE, mage.cards.h.HapatraVizierOfPoisons.class)); cards.add(new SetCardInfo("Hazoret the Fervent", 136, Rarity.MYTHIC, mage.cards.h.HazoretTheFervent.class)); cards.add(new SetCardInfo("Hazoret's Favor", 137, Rarity.RARE, mage.cards.h.HazoretsFavor.class)); @@ -143,8 +144,8 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Kefnet the Mindful", 59, Rarity.MYTHIC, mage.cards.k.KefnetTheMindful.class)); cards.add(new SetCardInfo("Kefnet's Monument", 231, Rarity.UNCOMMON, mage.cards.k.KefnetsMonument.class)); cards.add(new SetCardInfo("Lay Bare the Heart", 96, Rarity.UNCOMMON, mage.cards.l.LayBareTheHeart.class)); - cards.add(new SetCardInfo("Liliana's Mastery", 98, Rarity.RARE, mage.cards.l.LilianasMastery.class)); cards.add(new SetCardInfo("Liliana's Influence", 277, Rarity.RARE, mage.cards.l.LilianasInfluence.class)); + cards.add(new SetCardInfo("Liliana's Mastery", 98, Rarity.RARE, mage.cards.l.LilianasMastery.class)); cards.add(new SetCardInfo("Liliana, Death Wielder", 274, Rarity.MYTHIC, mage.cards.l.LilianaDeathWielder.class)); cards.add(new SetCardInfo("Liliana, Death's Majesty", 97, Rarity.MYTHIC, mage.cards.l.LilianaDeathsMajesty.class)); cards.add(new SetCardInfo("Limits of Solidarity", 140, Rarity.UNCOMMON, mage.cards.l.LimitsOfSolidarity.class)); @@ -186,6 +187,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Scribe of the Mindful", 68, Rarity.COMMON, mage.cards.s.ScribeOfTheMindful.class)); cards.add(new SetCardInfo("Sheltered Thicket", 248, Rarity.RARE, mage.cards.s.ShelteredThicket.class)); cards.add(new SetCardInfo("Sixth Sense", 187, Rarity.UNCOMMON, mage.cards.s.SixthSense.class)); + cards.add(new SetCardInfo("Soul-Scar Mage", 148, Rarity.RARE, mage.cards.s.SoulScarMage.class)); cards.add(new SetCardInfo("Soul-Scar Mage", 149, Rarity.RARE, mage.cards.s.SoulScarMage.class)); cards.add(new SetCardInfo("Spidery Grasp", 188, Rarity.COMMON, mage.cards.s.SpideryGrasp.class)); cards.add(new SetCardInfo("Splendid Agony", 109, Rarity.COMMON, mage.cards.s.SplendidAgony.class)); From 239d93177453fa25e35f7f7190050152b79db692 Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 12:24:21 +1000 Subject: [PATCH 16/21] Amonkhet - minor housekeeping --- Mage.Sets/src/mage/sets/Amonkhet.java | 1 - 1 file changed, 1 deletion(-) diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index e6c9b07bdf3..2d3bfe07e9b 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -124,7 +124,6 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Glorybringer", 174, Rarity.RARE, mage.cards.g.Glorybringer.class)); cards.add(new SetCardInfo("Graceful Cat", 273, Rarity.COMMON, mage.cards.g.GracefulCat.class)); cards.add(new SetCardInfo("Gravedigger", 93, Rarity.UNCOMMON, mage.cards.g.Gravedigger.class)); - cards.add(new SetCardInfo("Grim Strider", 93, Rarity.UNCOMMON, mage.cards.g.GrimStrider.class)); cards.add(new SetCardInfo("Grim Strider", 94, Rarity.UNCOMMON, mage.cards.g.GrimStrider.class)); cards.add(new SetCardInfo("Hapatra, Vizier of Poisons", 199, Rarity.RARE, mage.cards.h.HapatraVizierOfPoisons.class)); cards.add(new SetCardInfo("Hazoret the Fervent", 136, Rarity.MYTHIC, mage.cards.h.HazoretTheFervent.class)); From ea98f96a9209a00ef2be66bb02782b34bebdc68f Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 14:16:04 +1000 Subject: [PATCH 17/21] spjspj - Implement Harsh Mentor (AKH) --- Mage.Sets/src/mage/sets/Amonkhet.java | 1 + Utils/gen-card.pl | 3 ++- Utils/mtg-cards-data.txt | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index 2d3bfe07e9b..add11e20d16 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -126,6 +126,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Gravedigger", 93, Rarity.UNCOMMON, mage.cards.g.Gravedigger.class)); cards.add(new SetCardInfo("Grim Strider", 94, Rarity.UNCOMMON, mage.cards.g.GrimStrider.class)); cards.add(new SetCardInfo("Hapatra, Vizier of Poisons", 199, Rarity.RARE, mage.cards.h.HapatraVizierOfPoisons.class)); + cards.add(new SetCardInfo("Harsh Mentor", 135, Rarity.RARE, mage.cards.h.HarshMentor.class)); cards.add(new SetCardInfo("Hazoret the Fervent", 136, Rarity.MYTHIC, mage.cards.h.HazoretTheFervent.class)); cards.add(new SetCardInfo("Hazoret's Favor", 137, Rarity.RARE, mage.cards.h.HazoretsFavor.class)); cards.add(new SetCardInfo("Hazoret's Monument", 229, Rarity.UNCOMMON, mage.cards.h.HazoretsMonument.class)); diff --git a/Utils/gen-card.pl b/Utils/gen-card.pl index 831f7303dd6..8d4d633cf24 100755 --- a/Utils/gen-card.pl +++ b/Utils/gen-card.pl @@ -180,7 +180,8 @@ while ($type =~ m/([a-zA-Z]+)( )*/g) { if (@types) { $vars{'subType'} .= "\n this.subtype.add(\"$1\");"; } else { - $vars{'subType'} .= "\n addSuperType(\"$1\");"; + my $st = uc($1); + $vars{'subType'} .= "\n addSuperType(Supertype.$st);"; } } } diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index dcbcd85ac0a..e85969a6a75 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -30868,7 +30868,7 @@ New Perspectives|Amonkhet|63|R|{5}{U}|Enchantment|||When New Perspectives enters Pull from Tomorrow|Amonkhet|65|R|{X}{U}{U}|Instant|||Draw X cards, then discard a card.| Scribe of the Mindful|Amonkhet|68|C|{2}{U}|Creature - Human Cleric|2|2|{1}, {T}, Sacrifice Scribe of the Mindful: Return target instant or sorcery card from your graveyard to your hand.| Trial of Knowledge|Amonkhet|73|U|{3}{U}|Enchantment|||When Trial of Knowledge enters the battlefield, draw three cards, then discard a card.$When a Cartouche enters the battlefield under your control, return Trial of Knowledge to its owner's hand.| -Vizier of Tumbling Snads|Amonkhet|75|U|{2}{U}|Creature - Human Cleric|1|3|{T}: Untap another target permanent.$Cycling {1}{U}$When you cycle Vizier of Tumbling Sands, untap target permanent.| +Vizier of Tumbling Sands|Amonkhet|75|U|{2}{U}|Creature - Human Cleric|1|3|{T}: Untap another target permanent.$Cycling {1}{U}$When you cycle Vizier of Tumbling Sands, untap target permanent.| Archfiend of Ifnir|Amonkhet|78|R|{3}{B}{B}|Creature - Demon|5|4|Flying$Whenever you cycle or discard another card, put a -1/-1 counter on each creature your opponents control.$Cycling {2}| Cartouche of Ambition|Amonkhet|83|C|{2}{B}|Enchantment - Aura Cartouche|||Enchant creature you control$When Cartouche of Ambition enters the battlefield, you may put a -1/-1 counter on target creature.$Enchanted creature gets +1/+1 and has lifelink.| Cruel Reality|Amonkhet|84|M|{5}{B}{B}|Enchantment - Aura Curse|||Enchant player$At the beginning of enchanted player's upkeep, that player sacrifices a creature or planeswalker. If the player can't, he or she loses 5 life.| @@ -31002,3 +31002,4 @@ Desiccated Naga|Amonkhet|276|U|{2}{B}|Creature - Zombie Naga|3|2|{3}{B}: Target Liliana's Influence|Amonkhet|277|R|{4}{B}{B}|Sorcery|||Put a -1/-1 counter on each creature you don't control. You may search your library and/or graveyard for a card named Liliana, Death Wielder, reveal it, and put it into your hand. If you search your library this way, shuffle it.| Tattered Mummy|Amonkhet|278|C|{1}{B}|Creature - Zombie Jackal|1|2|When Tattered Mummy dies, each opponent loses 2 life.| Foul Orchard|Amonkhet|279|C||Land|||Foul Orchard enters the battlefield tapped.${T}: Add {B} or {G} to your mana pool.| +Harsh Mentor|Amonkhet|135|R|1{R}|Creature - Human Cleric|2|2|Whenever an opponent activates an ability of an artifact, creature, or land on the battlefield, if it isn't a mana ability, Harsh Mentor deals 2 damage to that player.| From 171c3997e69a9d0d5423e9f178a8df342cf24043 Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 16:05:54 +1000 Subject: [PATCH 18/21] minor housekeeping --- Utils/gen-card.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Utils/gen-card.pl b/Utils/gen-card.pl index 8d4d633cf24..21d4ba1f30f 100755 --- a/Utils/gen-card.pl +++ b/Utils/gen-card.pl @@ -181,7 +181,7 @@ while ($type =~ m/([a-zA-Z]+)( )*/g) { $vars{'subType'} .= "\n this.subtype.add(\"$1\");"; } else { my $st = uc($1); - $vars{'subType'} .= "\n addSuperType(Supertype.$st);"; + $vars{'subType'} .= "\n addSuperType(SuperType.$st);"; } } } From 2a39a8e5cfb5c7dcd92b051bbbcc2ab6c0a1cfda Mon Sep 17 00:00:00 2001 From: spjspj Date: Wed, 12 Apr 2017 16:07:18 +1000 Subject: [PATCH 19/21] minor housekeeping --- Utils/gen-card.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Utils/gen-card.pl b/Utils/gen-card.pl index 21d4ba1f30f..42dff275942 100755 --- a/Utils/gen-card.pl +++ b/Utils/gen-card.pl @@ -185,8 +185,8 @@ while ($type =~ m/([a-zA-Z]+)( )*/g) { } } } -$vars{'type'} = join(', ', @types); +$vars{'type'} = join(', ', @types); $vars{'abilitiesImports'} = ''; $vars{'abilities'} = ''; From 6cec543809fa610e4299c0d60bee35c0f41271f7 Mon Sep 17 00:00:00 2001 From: Jeff Date: Wed, 12 Apr 2017 10:06:24 -0500 Subject: [PATCH 20/21] - Added Bounty of the Luxa. --- .../src/mage/cards/b/BountyOfTheLuxa.java | 112 ++++++++++++++++++ Mage.Sets/src/mage/sets/Amonkhet.java | 3 +- 2 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 Mage.Sets/src/mage/cards/b/BountyOfTheLuxa.java diff --git a/Mage.Sets/src/mage/cards/b/BountyOfTheLuxa.java b/Mage.Sets/src/mage/cards/b/BountyOfTheLuxa.java new file mode 100644 index 00000000000..c256b456954 --- /dev/null +++ b/Mage.Sets/src/mage/cards/b/BountyOfTheLuxa.java @@ -0,0 +1,112 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.b; + +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import java.util.UUID; +import mage.Mana; +import mage.abilities.Ability; +import mage.abilities.common.BeginningOfPreCombatMainTriggeredAbility; +import mage.abilities.effects.OneShotEffect; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.constants.Outcome; +import mage.constants.TargetController; +import mage.counters.CounterType; +import mage.game.Game; +import mage.game.permanent.Permanent; +import mage.players.Player; + +/** + * + * @author jeffwadsworth + */ +public class BountyOfTheLuxa extends CardImpl { + + public BountyOfTheLuxa(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}{U}"); + + //At the beginning of your precombat main phase, remove all flood counters from Bounty of the Luxa. If no flood counters were removed this way, put a flood counter on Bounty of the Luxa and draw a card. Otherwise, add {C}{G}{U} to your mana pool. + this.addAbility(new BeginningOfPreCombatMainTriggeredAbility(new BountyOfTheLuxaEffect(), TargetController.YOU, false)); + + } + + public BountyOfTheLuxa(final BountyOfTheLuxa card) { + super(card); + } + + @Override + public BountyOfTheLuxa copy() { + return new BountyOfTheLuxa(this); + } + +} + +class BountyOfTheLuxaEffect extends OneShotEffect { + + public BountyOfTheLuxaEffect() { + super(Outcome.Benefit); + staticText = "remove all flood counters from {this}. If no flood counters were removed this way, put a flood counter on {this} and draw a card. Otherwise, add {C}{G}{U} to your mana pool"; + } + + public BountyOfTheLuxaEffect(final BountyOfTheLuxaEffect effect) { + super(effect); + } + + @Override + public BountyOfTheLuxaEffect copy() { + return new BountyOfTheLuxaEffect(this); + } + + @Override + public boolean apply(Game game, Ability source) { + Player controller = game.getPlayer(source.getControllerId()); + Permanent bountyOfLuxa = game.getPermanent(source.getSourceId()); + if (controller != null + && bountyOfLuxa != null) { + if (bountyOfLuxa.getCounters(game).getCount(CounterType.FLOOD) > 0) { + bountyOfLuxa.removeCounters(CounterType.FLOOD.createInstance(bountyOfLuxa.getCounters(game).getCount(CounterType.FLOOD)), game); + if (bountyOfLuxa.getCounters(game).getCount(CounterType.FLOOD) == 0) { + Mana manaToAdd = new Mana(); + manaToAdd.increaseColorless(); + manaToAdd.increaseGreen(); + manaToAdd.increaseBlue(); + controller.getManaPool().addMana(manaToAdd, game, source); + } + } else { + new AddCountersSourceEffect(CounterType.FLOOD.createInstance()).apply(game, source); + new DrawCardSourceControllerEffect(1).apply(game, source); + } + return true; + } + return false; + } + +} diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index add11e20d16..fb79b214227 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -75,6 +75,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("As Foretold", 42, Rarity.MYTHIC, mage.cards.a.AsForetold.class)); cards.add(new SetCardInfo("Aven Mindcensor", 5, Rarity.RARE, mage.cards.a.AvenMindcensor.class)); cards.add(new SetCardInfo("Battlefield Scavenger", 118, Rarity.UNCOMMON, mage.cards.b.BattlefieldScavenger.class)); + cards.add(new SetCardInfo("Bounty of the Luxa", 196, Rarity.RARE, mage.cards.b.BountyOfTheLuxa.class)); cards.add(new SetCardInfo("Bontu's Monument", 225, Rarity.UNCOMMON, mage.cards.b.BontusMonument.class)); cards.add(new SetCardInfo("Canyon Slough", 239, Rarity.RARE, mage.cards.c.CanyonSlough.class)); cards.add(new SetCardInfo("Cartouche of Ambition", 83, Rarity.COMMON, mage.cards.c.CartoucheOfAmbition.class)); @@ -126,7 +127,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Gravedigger", 93, Rarity.UNCOMMON, mage.cards.g.Gravedigger.class)); cards.add(new SetCardInfo("Grim Strider", 94, Rarity.UNCOMMON, mage.cards.g.GrimStrider.class)); cards.add(new SetCardInfo("Hapatra, Vizier of Poisons", 199, Rarity.RARE, mage.cards.h.HapatraVizierOfPoisons.class)); - cards.add(new SetCardInfo("Harsh Mentor", 135, Rarity.RARE, mage.cards.h.HarshMentor.class)); + //cards.add(new SetCardInfo("Harsh Mentor", 135, Rarity.RARE, mage.cards.h.HarshMentor.class)); cards.add(new SetCardInfo("Hazoret the Fervent", 136, Rarity.MYTHIC, mage.cards.h.HazoretTheFervent.class)); cards.add(new SetCardInfo("Hazoret's Favor", 137, Rarity.RARE, mage.cards.h.HazoretsFavor.class)); cards.add(new SetCardInfo("Hazoret's Monument", 229, Rarity.UNCOMMON, mage.cards.h.HazoretsMonument.class)); From bccb09366e8558dacdf432e7197aee97de9ea7b8 Mon Sep 17 00:00:00 2001 From: Darkside Date: Wed, 12 Apr 2017 10:58:34 -0500 Subject: [PATCH 21/21] Add Lord of the Accursed for AKH --- .../src/mage/cards/l/LordOfTheAccursed.java | 84 +++++++++++++++++++ Mage.Sets/src/mage/sets/Amonkhet.java | 1 + 2 files changed, 85 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java diff --git a/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java b/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java new file mode 100644 index 00000000000..883cc1a266e --- /dev/null +++ b/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java @@ -0,0 +1,84 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.cards.l; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.costs.common.TapSourceCost; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.effects.common.continuous.BoostControlledEffect; +import mage.abilities.effects.common.continuous.GainAbilityAllEffect; +import mage.abilities.keyword.MenaceAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Zone; +import mage.filter.common.FilterCreaturePermanent; +import mage.filter.predicate.mageobject.SubtypePredicate; + +/** + * + * @author jonubuu + */ +public class LordOfTheAccursed extends CardImpl { + + private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Zombie", "Zombie creatures"); + + public LordOfTheAccursed(UUID ownerId, CardSetInfo setInfo) { + super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{B}"); + this.subtype.add("Zombie"); + + this.power = new MageInt(2); + this.toughness = new MageInt(3); + + // Other Zombie creatures get +1/+1. + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true))); + + //{2}{B}, Tap: All Zombies gain menace until end of turn. + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect( + new MenaceAbility(), + Duration.EndOfTurn, + filter, "All Zombies gains menace until end of turn."), + new ManaCostsImpl("{1}{B}")); + ability.addCost(new TapSourceCost()); + this.addAbility(ability); + } + + public LordOfTheAccursed(final LordOfTheAccursed card) { + super(card); + } + + @Override + public LordOfTheAccursed copy() { + return new LordOfTheAccursed(this); + } +} \ No newline at end of file diff --git a/Mage.Sets/src/mage/sets/Amonkhet.java b/Mage.Sets/src/mage/sets/Amonkhet.java index fb79b214227..1a3b2e34477 100644 --- a/Mage.Sets/src/mage/sets/Amonkhet.java +++ b/Mage.Sets/src/mage/sets/Amonkhet.java @@ -150,6 +150,7 @@ public class Amonkhet extends ExpansionSet { cards.add(new SetCardInfo("Liliana, Death Wielder", 274, Rarity.MYTHIC, mage.cards.l.LilianaDeathWielder.class)); cards.add(new SetCardInfo("Liliana, Death's Majesty", 97, Rarity.MYTHIC, mage.cards.l.LilianaDeathsMajesty.class)); cards.add(new SetCardInfo("Limits of Solidarity", 140, Rarity.UNCOMMON, mage.cards.l.LimitsOfSolidarity.class)); + cards.add(new SetCardInfo("Lord of the Accursed", 140, Rarity.UNCOMMON, mage.cards.l.LordOfTheAccursed.class)); cards.add(new SetCardInfo("Magma Spray", 141, Rarity.COMMON, mage.cards.m.MagmaSpray.class)); cards.add(new SetCardInfo("Manglehorn", 175, Rarity.UNCOMMON, mage.cards.m.Manglehorn.class)); cards.add(new SetCardInfo("Miasma Mummy", 100, Rarity.COMMON, mage.cards.m.MiasmaMummy.class));