mirror of
https://github.com/correl/mage.git
synced 2024-12-24 11:50:45 +00:00
commit
5e8c03f0d9
48 changed files with 191 additions and 71 deletions
|
@ -80,7 +80,7 @@ public class AbolisherOfBloodlines extends CardImpl {
|
|||
|
||||
class AbolisherOfBloodlinesAbility extends TriggeredAbilityImpl {
|
||||
|
||||
public static final String RULE_TEXT = "When this creature transforms into Abolisher of Bloodlines, target opponent sacrifices three creatures";
|
||||
static final String RULE_TEXT = "When this creature transforms into Abolisher of Bloodlines, target opponent sacrifices three creatures";
|
||||
|
||||
public AbolisherOfBloodlinesAbility() {
|
||||
super(Zone.BATTLEFIELD, new SacrificeEffect(new FilterCreaturePermanent(), 3, "Target opponent"), false);
|
||||
|
|
|
@ -48,7 +48,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class Befoul extends CardImpl {
|
||||
|
||||
public static final FilterPermanent filter = new FilterPermanent("land or nonblack creature");
|
||||
static final FilterPermanent filter = new FilterPermanent("land or nonblack creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(
|
||||
|
|
|
@ -43,7 +43,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class BelovedChaplain extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("creatures");
|
||||
static final FilterCard filter = new FilterCard("creatures");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.CREATURE));
|
||||
|
|
|
@ -48,7 +48,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class BraidsCabalMinion extends CardImpl {
|
||||
|
||||
public static final FilterPermanent filter = new FilterPermanent("artifact, creature, or land");
|
||||
static final FilterPermanent filter = new FilterPermanent("artifact, creature, or land");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT),
|
||||
|
|
|
@ -49,7 +49,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class Cantivore extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("enchantment cards");
|
||||
static final FilterCard filter = new FilterCard("enchantment cards");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.ENCHANTMENT));
|
||||
|
|
|
@ -45,21 +45,20 @@ import mage.game.Game;
|
|||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class CoalitionVictory extends CardImpl {
|
||||
|
||||
public static final FilterControlledLandPermanent filterPlains = new FilterControlledLandPermanent();
|
||||
public static final FilterControlledLandPermanent filterIsland = new FilterControlledLandPermanent();
|
||||
public static final FilterControlledLandPermanent filterSwamp = new FilterControlledLandPermanent();
|
||||
public static final FilterControlledLandPermanent filterMountain = new FilterControlledLandPermanent();
|
||||
public static final FilterControlledLandPermanent filterForest = new FilterControlledLandPermanent();
|
||||
public static final FilterControlledCreaturePermanent filterWhite = new FilterControlledCreaturePermanent();
|
||||
public static final FilterControlledCreaturePermanent filterBlue = new FilterControlledCreaturePermanent();
|
||||
public static final FilterControlledCreaturePermanent filterBlack = new FilterControlledCreaturePermanent();
|
||||
public static final FilterControlledCreaturePermanent filterRed = new FilterControlledCreaturePermanent();
|
||||
public static final FilterControlledCreaturePermanent filterGreen = new FilterControlledCreaturePermanent();
|
||||
|
||||
static final FilterControlledLandPermanent filterPlains = new FilterControlledLandPermanent();
|
||||
static final FilterControlledLandPermanent filterIsland = new FilterControlledLandPermanent();
|
||||
static final FilterControlledLandPermanent filterSwamp = new FilterControlledLandPermanent();
|
||||
static final FilterControlledLandPermanent filterMountain = new FilterControlledLandPermanent();
|
||||
static final FilterControlledLandPermanent filterForest = new FilterControlledLandPermanent();
|
||||
static final FilterControlledCreaturePermanent filterWhite = new FilterControlledCreaturePermanent();
|
||||
static final FilterControlledCreaturePermanent filterBlue = new FilterControlledCreaturePermanent();
|
||||
static final FilterControlledCreaturePermanent filterBlack = new FilterControlledCreaturePermanent();
|
||||
static final FilterControlledCreaturePermanent filterRed = new FilterControlledCreaturePermanent();
|
||||
static final FilterControlledCreaturePermanent filterGreen = new FilterControlledCreaturePermanent();
|
||||
|
||||
static {
|
||||
filterPlains.add(new SubtypePredicate(SubType.PLAINS));
|
||||
|
@ -75,7 +74,7 @@ public class CoalitionVictory extends CardImpl {
|
|||
}
|
||||
|
||||
public CoalitionVictory(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{3}{W}{U}{B}{R}{G}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{W}{U}{B}{R}{G}");
|
||||
|
||||
// You win the game if you control a land of each basic land type and a creature of each color.
|
||||
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new WinGameSourceControllerEffect(),
|
||||
|
|
|
@ -44,19 +44,18 @@ import mage.filter.predicate.mageobject.CardTypePredicate;
|
|||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author cbt33
|
||||
*/
|
||||
public class Cognivore extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("instant cards");
|
||||
|
||||
|
||||
static final FilterCard filter = new FilterCard("instant cards");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.INSTANT));
|
||||
}
|
||||
|
||||
public Cognivore(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{6}{U}{U}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{6}{U}{U}");
|
||||
this.subtype.add("Lhurgoyf");
|
||||
|
||||
this.power = new MageInt(0);
|
||||
|
@ -66,7 +65,7 @@ public class Cognivore extends CardImpl {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
// Cognivore's power and toughness are each equal to the number of instant cards in all graveyards.
|
||||
DynamicValue value = (new CardsInAllGraveyardsCount(filter));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetPowerToughnessSourceEffect(value, Duration.EndOfGame)));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetPowerToughnessSourceEffect(value, Duration.EndOfGame)));
|
||||
}
|
||||
|
||||
public Cognivore(final Cognivore card) {
|
||||
|
|
|
@ -45,7 +45,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class CommanderEesha extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("creatures");
|
||||
static final FilterCard filter = new FilterCard("creatures");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.CREATURE));
|
||||
|
|
|
@ -50,7 +50,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class ConsumeSpirit extends CardImpl {
|
||||
|
||||
public static final FilterMana filterBlack = new FilterMana();
|
||||
static final FilterMana filterBlack = new FilterMana();
|
||||
|
||||
static {
|
||||
filterBlack.setBlack(true);
|
||||
|
|
|
@ -49,7 +49,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class Crypsis extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("creatures your opponents control");
|
||||
static final FilterCard filter = new FilterCard("creatures your opponents control");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.CREATURE));
|
||||
|
|
|
@ -51,7 +51,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class CryptRats extends CardImpl {
|
||||
|
||||
public static final FilterMana filterBlack = new FilterMana();
|
||||
static final FilterMana filterBlack = new FilterMana();
|
||||
|
||||
static {
|
||||
filterBlack.setBlack(true);
|
||||
|
|
|
@ -43,7 +43,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class DejaVu extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("sorcery card from your graveyard");
|
||||
static final FilterCard filter = new FilterCard("sorcery card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.SORCERY));
|
||||
|
|
|
@ -107,7 +107,7 @@ class DracoCostReductionEffect extends CostModificationEffectImpl {
|
|||
|
||||
class DracoSacrificeUnlessPaysEffect extends OneShotEffect {
|
||||
|
||||
public static final int MAX_DOMAIN_VALUE = 10;
|
||||
static final int MAX_DOMAIN_VALUE = 10;
|
||||
|
||||
public DracoSacrificeUnlessPaysEffect () {
|
||||
super(Outcome.Sacrifice);
|
||||
|
|
|
@ -50,7 +50,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class DrainLife extends CardImpl {
|
||||
|
||||
public static final FilterMana filterBlack = new FilterMana();
|
||||
static final FilterMana filterBlack = new FilterMana();
|
||||
|
||||
static {
|
||||
filterBlack.setBlack(true);
|
||||
|
|
|
@ -56,7 +56,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class DropOfHoney extends CardImpl {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
|
||||
public DropOfHoney(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{G}");
|
||||
|
|
|
@ -48,7 +48,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class ElvishHarbinger extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("Elf card");
|
||||
static final FilterCard filter = new FilterCard("Elf card");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ELEMENTAL));
|
||||
}
|
||||
|
|
|
@ -43,18 +43,18 @@ import mage.target.common.TargetCardInLibrary;
|
|||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class FaerieHarbinger extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("Faerie card");
|
||||
|
||||
static final FilterCard filter = new FilterCard("Faerie card");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.FAERIE));
|
||||
}
|
||||
|
||||
public FaerieHarbinger(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("Faerie");
|
||||
this.subtype.add("Wizard");
|
||||
this.power = new MageInt(2);
|
||||
|
|
|
@ -46,7 +46,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class GiantHarbinger extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("Giant card");
|
||||
static final FilterCard filter = new FilterCard("Giant card");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.GIANT));
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class GreaterHarvester extends CardImpl {
|
||||
|
||||
public static final FilterPermanent filter = new FilterPermanent("a permanent");
|
||||
static final FilterPermanent filter = new FilterPermanent("a permanent");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(new CardTypePredicate(CardType.ARTIFACT),
|
||||
|
|
70
Mage.Sets/src/mage/cards/h/HeatOfBattle.java
Normal file
70
Mage.Sets/src/mage/cards/h/HeatOfBattle.java
Normal file
|
@ -0,0 +1,70 @@
|
|||
package mage.cards.h;
|
||||
|
||||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
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;
|
||||
import mage.target.targetpointer.FixedTarget;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class HeatOfBattle extends CardImpl {
|
||||
|
||||
public HeatOfBattle(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{R}");
|
||||
|
||||
|
||||
// Whenever a creature blocks, Heat of Battle deals 1 damage to that creature's controller.
|
||||
this.addAbility(new HeatOfBattleTriggeredAbility());
|
||||
}
|
||||
|
||||
public HeatOfBattle(final HeatOfBattle card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
public HeatOfBattle copy() {
|
||||
return new HeatOfBattle(this);
|
||||
}
|
||||
}
|
||||
|
||||
class HeatOfBattleTriggeredAbility extends TriggeredAbilityImpl {
|
||||
|
||||
public HeatOfBattleTriggeredAbility() {
|
||||
super(Zone.BATTLEFIELD, new DamageTargetEffect(1));
|
||||
}
|
||||
|
||||
public HeatOfBattleTriggeredAbility(HeatOfBattleTriggeredAbility ability) {
|
||||
super(ability);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HeatOfBattleTriggeredAbility copy() {
|
||||
return new HeatOfBattleTriggeredAbility(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkEventType(GameEvent event, Game game) {
|
||||
return event.getType() == GameEvent.EventType.BLOCKER_DECLARED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkTrigger(GameEvent event, Game game) {
|
||||
Permanent blocker = game.getPermanent(event.getSourceId());
|
||||
if (blocker != null) {
|
||||
getEffects().get(0).setTargetPointer(new FixedTarget(blocker.getControllerId()));
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRule() {
|
||||
return "Whenever a creature blocks, {this} deals 1 damage to that creature's controller.";
|
||||
}
|
||||
}
|
||||
|
|
@ -57,9 +57,9 @@ import mage.game.permanent.token.KaldraToken;
|
|||
*/
|
||||
public class HelmOfKaldra extends CardImpl {
|
||||
|
||||
public static final FilterControlledArtifactPermanent filterHelm = new FilterControlledArtifactPermanent();
|
||||
public static final FilterControlledArtifactPermanent filterShield = new FilterControlledArtifactPermanent();
|
||||
public static final FilterControlledArtifactPermanent filterSword = new FilterControlledArtifactPermanent();
|
||||
static final FilterControlledArtifactPermanent filterHelm = new FilterControlledArtifactPermanent();
|
||||
static final FilterControlledArtifactPermanent filterShield = new FilterControlledArtifactPermanent();
|
||||
static final FilterControlledArtifactPermanent filterSword = new FilterControlledArtifactPermanent();
|
||||
|
||||
static {
|
||||
filterHelm.add(new NamePredicate("Helm of Kaldra"));
|
||||
|
|
|
@ -45,7 +45,7 @@ import mage.target.common.TargetCardInLibrary;
|
|||
*/
|
||||
public class KithkinHarbinger extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("Kithkin card");
|
||||
static final FilterCard filter = new FilterCard("Kithkin card");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.KITHKIN));
|
||||
|
|
|
@ -60,7 +60,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class MagneticMountain extends CardImpl {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent("blue creatures");
|
||||
static final FilterCreaturePermanent filter = new FilterCreaturePermanent("blue creatures");
|
||||
|
||||
static {
|
||||
filter.add(new ColorPredicate(ObjectColor.BLUE));
|
||||
|
|
|
@ -58,7 +58,7 @@ import mage.target.common.TargetControlledPermanent;
|
|||
*/
|
||||
public class ManaVortex extends CardImpl {
|
||||
|
||||
public static final FilterLandPermanent filter = new FilterLandPermanent();
|
||||
static final FilterLandPermanent filter = new FilterLandPermanent();
|
||||
|
||||
public ManaVortex(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}{U}");
|
||||
|
|
|
@ -52,7 +52,7 @@ import mage.target.common.TargetCreatureOrPlayer;
|
|||
*/
|
||||
public class MasterApothecary extends CardImpl {
|
||||
|
||||
public static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped Cleric you control");
|
||||
static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("an untapped Cleric you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.CLERIC));
|
||||
|
|
|
@ -138,7 +138,7 @@ class MerchantsDockhandEffect extends OneShotEffect {
|
|||
|
||||
class TapXTargetCost extends VariableCostImpl {
|
||||
|
||||
public final static FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("untapped artifacts you control");
|
||||
final static FilterControlledArtifactPermanent filter = new FilterControlledArtifactPermanent("untapped artifacts you control");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
|
|
|
@ -47,7 +47,7 @@ import mage.target.common.TargetCardInLibrary;
|
|||
*/
|
||||
public class MerrowHarbinger extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("Merfolk card");
|
||||
static final FilterCard filter = new FilterCard("Merfolk card");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.MERFOLK ));
|
||||
|
|
|
@ -57,8 +57,8 @@ import mage.players.PlayerList;
|
|||
*/
|
||||
public class MysticBarrier extends CardImpl {
|
||||
|
||||
public static final String ALLOW_ATTACKING_LEFT = "Allow attacking left";
|
||||
public static final String ALLOW_ATTACKING_RIGHT = "Allow attacking right";
|
||||
static final String ALLOW_ATTACKING_LEFT = "Allow attacking left";
|
||||
static final String ALLOW_ATTACKING_RIGHT = "Allow attacking right";
|
||||
|
||||
public MysticBarrier(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{4}{W}");
|
||||
|
@ -117,8 +117,8 @@ class MysticBarrierTriggeredAbility extends TriggeredAbilityImpl {
|
|||
|
||||
class MysticBarrierChooseEffect extends OneShotEffect {
|
||||
|
||||
public static final String[] SET_VALUES = new String[] { MysticBarrier.ALLOW_ATTACKING_LEFT, MysticBarrier.ALLOW_ATTACKING_RIGHT };
|
||||
public static final Set<String> CHOICES = new HashSet<>(Arrays.asList(SET_VALUES));
|
||||
static final String[] SET_VALUES = new String[] { MysticBarrier.ALLOW_ATTACKING_LEFT, MysticBarrier.ALLOW_ATTACKING_RIGHT };
|
||||
static final Set<String> CHOICES = new HashSet<>(Arrays.asList(SET_VALUES));
|
||||
final static Choice DIRECTION_CHOICE = new ChoiceImpl(true);
|
||||
static {
|
||||
DIRECTION_CHOICE.setChoices(CHOICES);
|
||||
|
|
|
@ -127,8 +127,6 @@ class NayaSoulbeastCastEffect extends OneShotEffect {
|
|||
|
||||
class NayaSoulbeastReplacementEffect extends ReplacementEffectImpl {
|
||||
|
||||
public static final String SOURCE_CAST_SPELL_ABILITY = "sourceCastSpellAbility";
|
||||
|
||||
public NayaSoulbeastReplacementEffect() {
|
||||
super(Duration.OneUse, Outcome.BoostCreature);
|
||||
staticText = "{this} enters the battlefield with X +1/+1 counters on it, where X is the total converted mana cost of all cards revealed this way";
|
||||
|
|
|
@ -43,7 +43,7 @@ import mage.filter.common.FilterBlockingCreature;
|
|||
*/
|
||||
public class Piety extends CardImpl {
|
||||
|
||||
public static final FilterBlockingCreature filter = new FilterBlockingCreature();
|
||||
static final FilterBlockingCreature filter = new FilterBlockingCreature();
|
||||
|
||||
public Piety(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{W}");
|
||||
|
|
|
@ -56,7 +56,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class PorphyryNodes extends CardImpl {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
|
||||
public PorphyryNodes(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{W}");
|
||||
|
|
|
@ -61,7 +61,7 @@ public class RavenousWampa extends CardImpl {
|
|||
filter.add(new AnotherPredicate());
|
||||
}
|
||||
|
||||
public static final String RAVENOUS_WAMPA_STATE_VALUE_KEY_PREFIX = "TOU_SAC_CRE";
|
||||
static final String RAVENOUS_WAMPA_STATE_VALUE_KEY_PREFIX = "TOU_SAC_CRE";
|
||||
|
||||
public RavenousWampa(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R/W}{R/W}");
|
||||
|
|
|
@ -43,7 +43,7 @@ import mage.target.common.TargetCardInYourGraveyard;
|
|||
*/
|
||||
public class Relearn extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("instant or sorcery card from your graveyard");
|
||||
static final FilterCard filter = new FilterCard("instant or sorcery card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(
|
||||
|
|
|
@ -42,7 +42,7 @@ import mage.target.common.TargetCardInYourGraveyard;
|
|||
*/
|
||||
public class SagesKnowledge extends CardImpl {
|
||||
|
||||
public static final FilterCard filter = new FilterCard("sorcery card from your graveyard");
|
||||
static final FilterCard filter = new FilterCard("sorcery card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(new CardTypePredicate(CardType.SORCERY));
|
||||
|
|
|
@ -47,7 +47,7 @@ import mage.target.common.TargetCreaturePermanent;
|
|||
*/
|
||||
public class SerpentAssassin extends CardImpl {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonblack creature");
|
||||
static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonblack creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK)));
|
||||
|
|
|
@ -48,7 +48,7 @@ import mage.target.common.TargetCreatureOrPlayer;
|
|||
*/
|
||||
public class SoulBurn extends CardImpl {
|
||||
|
||||
public static final FilterMana filterBlackOrRed = new FilterMana();
|
||||
static final FilterMana filterBlackOrRed = new FilterMana();
|
||||
|
||||
static {
|
||||
filterBlackOrRed.setBlack(true);
|
||||
|
|
|
@ -45,7 +45,7 @@ import mage.target.common.TargetCreaturePermanent;
|
|||
*/
|
||||
public class SoulShred extends CardImpl {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonblack creature");
|
||||
static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nonblack creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new ColorPredicate(ObjectColor.BLACK)));
|
||||
|
|
|
@ -54,7 +54,7 @@ import java.util.UUID;
|
|||
*/
|
||||
public class SpellstutterSprite extends CardImpl {
|
||||
|
||||
public static final FilterPermanent filter = new FilterPermanent("number of Faeries you control");
|
||||
static final FilterPermanent filter = new FilterPermanent("number of Faeries you control");
|
||||
static {
|
||||
filter.add(new ControllerPredicate(TargetController.YOU));
|
||||
filter.add(new SubtypePredicate(SubType.FAERIE));
|
||||
|
|
|
@ -45,7 +45,7 @@ import mage.target.TargetPermanent;
|
|||
*/
|
||||
public class StreamOfAcid extends CardImpl {
|
||||
|
||||
public static final FilterPermanent filter = new FilterPermanent("land or nonblack creature");
|
||||
static final FilterPermanent filter = new FilterPermanent("land or nonblack creature");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(
|
||||
|
|
53
Mage.Sets/src/mage/cards/s/SuqAtaFirewalker.java
Normal file
53
Mage.Sets/src/mage/cards/s/SuqAtaFirewalker.java
Normal file
|
@ -0,0 +1,53 @@
|
|||
package mage.cards.s;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.ObjectColor;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.CantBeTargetedSourceEffect;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterObject;
|
||||
import mage.filter.FilterStackObject;
|
||||
import mage.filter.predicate.mageobject.ColorPredicate;
|
||||
import mage.target.common.TargetCreatureOrPlayer;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class SuqAtaFirewalker extends CardImpl {
|
||||
|
||||
private static final FilterObject filterRed = new FilterStackObject("red spells or abilities from red sources");
|
||||
static {
|
||||
filterRed.add(new ColorPredicate(ObjectColor.RED));
|
||||
}
|
||||
public SuqAtaFirewalker(UUID cardId, CardSetInfo cardSetInfo){
|
||||
super(cardId, cardSetInfo, new CardType[]{CardType.CREATURE}, "{1}{U}{U}");
|
||||
subtype.add("Human");
|
||||
subtype.add("Wizard");
|
||||
power = new MageInt(0);
|
||||
toughness = new MageInt(1);
|
||||
color.setBlue(true);
|
||||
|
||||
|
||||
// Suq'Ata Firewalker can't be the target of black spells or abilities from black sources.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeTargetedSourceEffect(filterRed, Duration.WhileOnBattlefield)));
|
||||
|
||||
//{T}: Suq'Ata Firewalker deals 1 damage to target creature or player.
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
|
||||
ability.addTarget(new TargetCreatureOrPlayer());
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
public SuqAtaFirewalker(SuqAtaFirewalker other){
|
||||
super(other);
|
||||
}
|
||||
|
||||
public SuqAtaFirewalker copy(){
|
||||
return new SuqAtaFirewalker(this);
|
||||
}
|
||||
}
|
|
@ -112,7 +112,7 @@ class CombatDamageToCreatureWatcher extends Watcher {
|
|||
// which objects dealt combat damage to creature during the turn
|
||||
public final Set<MageObjectReference> dealtCombatDamageToCreature;
|
||||
|
||||
public final static String BASIC_KEY = "CombatDamageToCreatureWatcher";
|
||||
final static String BASIC_KEY = "CombatDamageToCreatureWatcher";
|
||||
|
||||
public CombatDamageToCreatureWatcher() {
|
||||
super(BASIC_KEY, WatcherScope.GAME);
|
||||
|
|
|
@ -52,7 +52,7 @@ import mage.util.functions.EmptyApplyToPermanent;
|
|||
*/
|
||||
public class UnstableShapeshifter extends CardImpl {
|
||||
|
||||
public final static FilterCreaturePermanent filterAnotherCreature = new FilterCreaturePermanent("another creature");
|
||||
final static FilterCreaturePermanent filterAnotherCreature = new FilterCreaturePermanent("another creature");
|
||||
|
||||
static {
|
||||
filterAnotherCreature.add(new AnotherPredicate());
|
||||
|
|
|
@ -91,7 +91,7 @@ public class VedalkenShackles extends CardImpl {
|
|||
|
||||
class PowerIslandPredicate implements ObjectPlayerPredicate<ObjectPlayer<Permanent>> {
|
||||
|
||||
public static final FilterLandPermanent filter = new FilterLandPermanent("Island");
|
||||
static final FilterLandPermanent filter = new FilterLandPermanent("Island");
|
||||
static {
|
||||
filter.add(new SubtypePredicate(SubType.ISLAND));
|
||||
}
|
||||
|
|
|
@ -63,7 +63,7 @@ import static mage.cards.v.VolrathsCurse.keyString;
|
|||
*/
|
||||
public class VolrathsCurse extends CardImpl {
|
||||
|
||||
public static final String keyString = "_ignoreEffectForTurn";
|
||||
static final String keyString = "_ignoreEffectForTurn";
|
||||
|
||||
public VolrathsCurse(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}");
|
||||
|
|
|
@ -89,7 +89,7 @@ public class WerewolfRansacker extends CardImpl {
|
|||
|
||||
class WerewolfRansackerAbility extends TriggeredAbilityImpl {
|
||||
|
||||
public static final String RULE_TEXT = "Whenever this creature transforms into Werewolf Ransacker, you may destroy target artifact. If that artifact is put into a graveyard this way, Werewolf Ransacker deals 3 damage to that artifact's controller";
|
||||
static final String RULE_TEXT = "Whenever this creature transforms into Werewolf Ransacker, you may destroy target artifact. If that artifact is put into a graveyard this way, Werewolf Ransacker deals 3 damage to that artifact's controller";
|
||||
|
||||
public WerewolfRansackerAbility() {
|
||||
super(Zone.BATTLEFIELD, new WerewolfRansackerEffect(), true);
|
||||
|
|
|
@ -48,7 +48,7 @@ import mage.filter.predicate.mageobject.ColorPredicate;
|
|||
*/
|
||||
public class WrathOfMaritLage extends CardImpl {
|
||||
|
||||
public static final FilterCreaturePermanent filter = new FilterCreaturePermanent("red creatures");
|
||||
static final FilterCreaturePermanent filter = new FilterCreaturePermanent("red creatures");
|
||||
|
||||
static {
|
||||
filter.add(new ColorPredicate(ObjectColor.RED));
|
||||
|
|
|
@ -32,7 +32,6 @@ import mage.constants.Rarity;
|
|||
import mage.constants.SetType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author North
|
||||
*/
|
||||
public class Stronghold extends ExpansionSet {
|
||||
|
@ -99,6 +98,7 @@ public class Stronghold extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Grave Pact", 10, Rarity.RARE, mage.cards.g.GravePact.class));
|
||||
cards.add(new SetCardInfo("Hammerhead Shark", 32, Rarity.COMMON, mage.cards.h.HammerheadShark.class));
|
||||
cards.add(new SetCardInfo("Heartstone", 128, Rarity.UNCOMMON, mage.cards.h.Heartstone.class));
|
||||
cards.add(new SetCardInfo("Heat of Battle", 88, Rarity.UNCOMMON, mage.cards.h.HeatOfBattle.class));
|
||||
cards.add(new SetCardInfo("Hermit Druid", 58, Rarity.RARE, mage.cards.h.HermitDruid.class));
|
||||
cards.add(new SetCardInfo("Hesitation", 33, Rarity.UNCOMMON, mage.cards.h.Hesitation.class));
|
||||
cards.add(new SetCardInfo("Hibernation Sliver", 140, Rarity.UNCOMMON, mage.cards.h.HibernationSliver.class));
|
||||
|
|
|
@ -152,6 +152,7 @@ public class Visions extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Sun Clasp", 121, Rarity.COMMON, mage.cards.s.SunClasp.class));
|
||||
cards.add(new SetCardInfo("Suq'Ata Assassin", 19, Rarity.UNCOMMON, mage.cards.s.SuqAtaAssassin.class));
|
||||
cards.add(new SetCardInfo("Suq'Ata Lancer", 96, Rarity.COMMON, mage.cards.s.SuqAtaLancer.class));
|
||||
cards.add(new SetCardInfo("Suq'Ata Firewalker", 94, Rarity.UNCOMMON, mage.cards.s.SuqAtaFirewalker.class));
|
||||
cards.add(new SetCardInfo("Talruum Champion", 97, Rarity.COMMON, mage.cards.t.TalruumChampion.class));
|
||||
cards.add(new SetCardInfo("Talruum Piper", 98, Rarity.UNCOMMON, mage.cards.t.TalruumPiper.class));
|
||||
cards.add(new SetCardInfo("Tar Pit Warrior", 20, Rarity.COMMON, mage.cards.t.TarPitWarrior.class));
|
||||
|
|
Loading…
Reference in a new issue