refactor: SimpleStaticAbility default zone (cards C)

This commit is contained in:
xenohedron 2024-11-16 22:10:37 -05:00
parent 6963717a83
commit 145ce7d1ed
158 changed files with 180 additions and 182 deletions

View file

@ -32,7 +32,7 @@ public final class CagedSun extends CardImpl {
this.addAbility(new AsEntersBattlefieldAbility(new ChooseColorEffect(Outcome.Benefit)));
// Creatures you control of the chosen color get +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CagedSunEffect2()));
this.addAbility(new SimpleStaticAbility(new CagedSunEffect2()));
// Whenever a land's ability adds one or more mana of the chosen color, add one additional mana of that color.
this.addAbility(new CagedSunTriggeredAbility());

View file

@ -33,7 +33,7 @@ public final class CairnWanderer extends CardImpl {
this.addAbility(new ChangelingAbility());
// As long as a creature card with flying is in a graveyard, Cairn Wanderer has flying. The same is true for fear, first strike, double strike, deathtouch, haste, landwalk, lifelink, protection, reach, trample, shroud, and vigilance.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CairnWandererEffect()));
this.addAbility(new SimpleStaticAbility(new CairnWandererEffect()));
}
private CairnWanderer(final CairnWanderer card) {

View file

@ -40,7 +40,7 @@ public final class CallForUnity extends CardImpl {
Effect effect = new BoostControlledEffect(new CountersSourceCount(CounterType.UNITY), new CountersSourceCount(CounterType.UNITY), Duration.WhileOnBattlefield,
StaticFilters.FILTER_PERMANENT_CREATURE, false);
effect.setText("Creatures you control get +1/+1 for each unity counter on {this}");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
this.addAbility(new SimpleStaticAbility(effect));
}
private CallForUnity(final CallForUnity card) {

View file

@ -39,7 +39,7 @@ public final class CallOfTheFullMoon extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature gets +3/+2 and has trample.
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(3, 2, Duration.WhileOnBattlefield));
ability = new SimpleStaticAbility(new BoostEnchantedEffect(3, 2, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has trample.");
ability.addEffect(effect);

View file

@ -35,7 +35,7 @@ public final class CallToServe extends CardImpl {
this.addAbility(ability);
// Enchanted creature gets +1/+2, has flying, and is an Angel in addition to its other types.
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 2, Duration.WhileOnBattlefield));
ability = new SimpleStaticAbility(new BoostEnchantedEffect(1, 2, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
effect.setText(", has flying");
ability.addEffect(effect);

View file

@ -29,7 +29,7 @@ public final class CallousGiant extends CardImpl {
this.toughness = new MageInt(4);
// If a source would deal 3 or less damage to Callous Giant, prevent that damage.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CallousGiantEffect()));
this.addAbility(new SimpleStaticAbility(new CallousGiantEffect()));
}
private CallousGiant(final CallousGiant card) {

View file

@ -31,7 +31,7 @@ public final class CalmingLicid extends CardImpl {
this.addAbility(new LicidAbility(new ColoredManaCost(ColoredManaSymbol.W), new ColoredManaCost(ColoredManaSymbol.W)));
// Enchanted creature can't attack.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantAttackAttachedEffect(AttachmentType.AURA)));
}
private CalmingLicid(final CalmingLicid card) {

View file

@ -35,7 +35,7 @@ public final class Camel extends CardImpl {
this.addAbility(BandingAbility.getInstance());
// As long as Camel is attacking, prevent all damage Deserts would deal to Camel and to creatures banded with Camel.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CamelEffect()));
this.addAbility(new SimpleStaticAbility(new CamelEffect()));
}

View file

@ -40,7 +40,7 @@ public final class CandlelightVigil extends CardImpl {
// Enchanted creature gets +3/+2 and has vigilance.
Effect effect = new BoostEnchantedEffect(3, 2, Duration.WhileOnBattlefield);
effect.setText("Enchanted creature gets +3/+2");
SimpleStaticAbility ability2 = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
SimpleStaticAbility ability2 = new SimpleStaticAbility(effect);
effect = new GainAbilityAttachedEffect(VigilanceAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has vigilance");
ability2.addEffect(effect);

View file

@ -38,7 +38,7 @@ public final class CapashenStandard extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature gets +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)));
// {2}, Sacrifice Capashen Standard: Draw a card.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}"));
ability.addCost(new SacrificeSourceCost());

View file

@ -27,7 +27,7 @@ public final class CaptainsClaws extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +1/+0.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 0)));
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(1, 0)));
// Whenever equipped creature attacks, create a 1/1 white Kor Ally creature token tapped and attacking.
this.addAbility(new AttacksAttachedTriggeredAbility(new CreateTokenEffect(new KorAllyToken(), 1, true, true)));
// Equip {1}
@ -43,4 +43,3 @@ public final class CaptainsClaws extends CardImpl {
return new CaptainsClaws(this);
}
}

View file

@ -35,7 +35,7 @@ public final class CaptainsHook extends CardImpl {
// Equipped creature gets +2/+0
Effect effect = new BoostEquippedEffect(2, 0);
effect.setText("Equipped creature gets +2/+0");
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
Ability ability = new SimpleStaticAbility(effect);
// has menace,
effect = new GainAbilityAttachedEffect(new MenaceAbility(), AttachmentType.EQUIPMENT);
effect.setText(", has menace");

View file

@ -42,7 +42,7 @@ public final class CaptivatingVampire extends CardImpl {
this.toughness = new MageInt(2);
// Other Vampire creatures you control get +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter1, true)));
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter1, true)));
// Tap five untapped Vampires you control: Gain control of target creature. It becomes a Vampire in addition to its other types.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CaptivatingVampireEffect(), new TapTargetCost(new TargetControlledPermanent(5, 5, filter2, true)));

View file

@ -43,7 +43,7 @@ public final class CaptureSphere extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new TapEnchantedEffect()));
// Enchanted creature doesn't untap during its controller's untap step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect()));
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepEnchantedEffect()));
}
private CaptureSphere(final CaptureSphere card) {

View file

@ -43,7 +43,7 @@ public final class CapturedByTheConsulate extends CardImpl {
this.addAbility(ability);
// Enchanted creature can't attack.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantAttackAttachedEffect(AttachmentType.AURA)));
// Whenever an opponent casts a spell, if it has a single target, change the target to enchanted creature if able.
this.addAbility(new CapturedByTheConsulateTriggeredAbility(Zone.BATTLEFIELD, new CapturedByTheConsulateEffect()));

View file

@ -33,7 +33,7 @@ public final class Carapace extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature gets +0/+2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(0, 2, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(0, 2, Duration.WhileOnBattlefield)));
// Sacrifice Carapace: Regenerate enchanted creature.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA), new SacrificeSourceCost()));
}

View file

@ -43,10 +43,10 @@ public final class CarboniteChamber extends CardImpl {
this.addAbility(ability);
// You control enchanted creature.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect()));
this.addAbility(new SimpleStaticAbility(new ControlEnchantedEffect()));
// It can't attack or block, and its activated abilities can't be activated.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBlockAttackActivateAttachedEffect()));
this.addAbility(new SimpleStaticAbility(new CantBlockAttackActivateAttachedEffect()));
}

View file

@ -51,7 +51,7 @@ public final class CaribouRange extends CardImpl {
ability.addCost(new TapSourceCost());
Effect effect = new GainAbilityAttachedEffect(ability, AttachmentType.AURA);
effect.setText("Enchanted land has \"{W}{W}, {T}: Create a 0/1 white Caribou creature token.\"");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
this.addAbility(new SimpleStaticAbility(effect));
// Sacrifice a Caribou token: You gain 1 life.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1),
new SacrificeTargetCost(filter)));

View file

@ -42,7 +42,7 @@ public final class CarryAway extends CardImpl {
ability = new EntersBattlefieldTriggeredAbility(new CarryAwayEffect());
this.addAbility(ability);
// You control enchanted Equipment.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect("Equipment")));
this.addAbility(new SimpleStaticAbility(new ControlEnchantedEffect("Equipment")));
}
private CarryAway(final CarryAway card) {

View file

@ -45,7 +45,7 @@ public final class CartoucheOfAmbition extends CardImpl {
this.addAbility(ability);
// Enchanted creature gets +1/+1 and has lifelink.
ability =new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
ability =new SimpleStaticAbility(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(LifelinkAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has lifelink");
ability.addEffect(effect);

View file

@ -41,7 +41,7 @@ public final 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(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has flying");
ability.addEffect(effect);

View file

@ -42,7 +42,7 @@ public final class CartoucheOfSolidarity extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new WarriorVigilantToken())));
// Enchanted creature gets +1/+1 and has first strike.
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
ability = new SimpleStaticAbility(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has first strike");
ability.addEffect(effect);

View file

@ -47,7 +47,7 @@ public final class CartoucheOfStrength extends CardImpl {
this.addAbility(ability);
// Enchanted creature gets +1/+1 and has trample.
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
ability = new SimpleStaticAbility(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has trample");
ability.addEffect(effect);

View file

@ -44,7 +44,7 @@ public final class CartoucheOfZeal extends CardImpl {
this.addAbility(ability);
// Enchanted creature gets +1/+1 and has haste.
ability =new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
ability =new SimpleStaticAbility(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(HasteAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has haste");
ability.addEffect(effect);

View file

@ -36,7 +36,7 @@ public final class CastIntoDarkness extends CardImpl {
// Enchanted creature gets -2/-0 and can't block.
Effect effect = new BoostEnchantedEffect(-2,0, Duration.WhileOnBattlefield);
effect.setText("Enchanted creature gets -2/-0");
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
ability = new SimpleStaticAbility(effect);
effect = new CantBlockAttachedEffect(AttachmentType.AURA);
effect.setText("and can't block");
ability.addEffect(effect);

View file

@ -40,7 +40,7 @@ public final class CastawaysDespair extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new TapEnchantedEffect()));
// Enchanted creature doesn't untap during its controller's untap step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect()));
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepEnchantedEffect()));
}
private CastawaysDespair(final CastawaysDespair card) {

View file

@ -32,7 +32,7 @@ public final class CastleRaptors extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// As long as Castle Raptors is untapped, it gets +0/+2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
new BoostSourceEffect(0, 2, Duration.WhileOnBattlefield), SourceTappedCondition.UNTAPPED,
"As long as {this} is untapped, it gets +0/+2.")));
}

View file

@ -32,10 +32,10 @@ public final class CatalystStone extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// Flashback costs you pay cost up to {2} less.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CatalystStoneCostReductionEffect()));
this.addAbility(new SimpleStaticAbility(new CatalystStoneCostReductionEffect()));
// Flashback costs your opponents pay cost {2} more.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CatalystStoneCostRaiseEffect()));
this.addAbility(new SimpleStaticAbility(new CatalystStoneCostRaiseEffect()));
}

View file

@ -31,7 +31,7 @@ public final class CathedralOfSerra extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
// White legendary creatures you control have "bands with other legendary creatures."
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
new BandsWithOtherAbility(SuperType.LEGENDARY), Duration.WhileOnBattlefield, filter)
.withForceQuotes()
));

View file

@ -41,7 +41,7 @@ public final class CaughtInTheBrights extends CardImpl {
this.addAbility(ability);
// Enchanted creature can't attack or block.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
// When a Vehicle you control attacks, exile enchanted creature.
this.addAbility(new AttacksAllTriggeredAbility(new ExileAttachedEffect(), false, filter, SetTargetPointer.NONE, false).setTriggerPhrase("When a Vehicle you control attacks, "));

View file

@ -38,7 +38,7 @@ public final class CausticTar extends CardImpl {
// Enchanted land has "{T}: Target player loses 3 life."
Ability tarAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(3), new TapSourceCost());
tarAbility.addTarget(new TargetPlayer());
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(tarAbility, AttachmentType.AURA,
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(tarAbility, AttachmentType.AURA,
Duration.WhileOnBattlefield,"Enchanted land has \"{T}: Target player loses 3 life.\"")));
}

View file

@ -40,7 +40,7 @@ public final class CaveSense extends CardImpl {
// Enchanted creature gets +1/+1 and has mountainwalk.
Effect effect = new GainAbilityAttachedEffect(new MountainwalkAbility(), AttachmentType.AURA);
effect.setText("and has mountainwalk");
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 1));
ability = new SimpleStaticAbility(new BoostEnchantedEffect(1, 1));
ability.addEffect(effect);
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class CavernLampad extends CardImpl {
// Intimidate
this.addAbility(IntimidateAbility.getInstance());
// Enchanted creature gets +2/+2 and has intimidate.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2,2));
Ability ability = new SimpleStaticAbility(new BoostEnchantedEffect(2,2));
Effect effect = new GainAbilityAttachedEffect(IntimidateAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has intimidate");
ability.addEffect(effect);

View file

@ -25,10 +25,10 @@ public final class CavernsOfDespair extends CardImpl {
this.supertype.add(SuperType.WORLD);
// No more than two creatures can attack each combat.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CavernsOfDespairAttackRestrictionEffect()));
this.addAbility(new SimpleStaticAbility(new CavernsOfDespairAttackRestrictionEffect()));
// No more than two creatures can block each combat.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CavernsOfDespairBlockRestrictionEffect()));
this.addAbility(new SimpleStaticAbility(new CavernsOfDespairBlockRestrictionEffect()));
}
private CavernsOfDespair(final CavernsOfDespair card) {

View file

@ -39,7 +39,7 @@ public final class CelestialArchon extends CardImpl {
// First strike
this.addAbility(FirstStrikeAbility.getInstance());
// Enchanted creature gets +4/+4 and has flying and first strike.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(4,4));
Ability ability = new SimpleStaticAbility(new BoostEnchantedEffect(4,4));
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has flying");
ability.addEffect(effect);

View file

@ -48,7 +48,7 @@ public final class CelestialCrusader extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// Other white creatures get +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
}
private CelestialCrusader(final CelestialCrusader card) {

View file

@ -33,14 +33,14 @@ public final class CelestialDawn extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{W}{W}");
// Lands you control are Plains.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CelestialDawnToPlainsEffect()));
this.addAbility(new SimpleStaticAbility(new CelestialDawnToPlainsEffect()));
// Nonland cards you own that aren't on the battlefield, spells you control, and nonland permanents you control are white.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CelestialDawnToWhiteEffect()));
this.addAbility(new SimpleStaticAbility(new CelestialDawnToWhiteEffect()));
// You may spend white mana as though it were mana of any color.
// You may spend other mana only as though it were colorless mana.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new CelestialDawnSpendAnyManaEffect());
Ability ability = new SimpleStaticAbility(new CelestialDawnSpendAnyManaEffect());
ability.addEffect(new CelestialDawnSpendColorlessManaEffect());
this.addAbility(ability);

View file

@ -43,7 +43,7 @@ public final class CelestialMantle extends CardImpl {
this.addAbility(ability);
// Enchanted creature gets +3/+3.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(3, 3, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(3, 3, Duration.WhileOnBattlefield)));
// Whenever enchanted creature deals combat damage to a player, double its controller's life total.
this.addAbility(new CelestialMantleAbility());

View file

@ -41,7 +41,7 @@ public final class CemeteryReaper extends CardImpl {
this.toughness = new MageInt(2);
// Other Zombie creatures you control get +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
// {2}{B}, {T} : Exile target creature card from a graveyard. Create a 2/2 black Zombie creature token.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl<>("{2}{B}"));

View file

@ -38,7 +38,7 @@ public final class CentaurOmenreader extends CardImpl {
this.toughness = new MageInt(3);
// As long as Centaur Omenreader is tapped, creature spells you cast cost {2} less to cast.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CentaurOmenreaderSpellsCostReductionEffect(filter)));
this.addAbility(new SimpleStaticAbility(new CentaurOmenreaderSpellsCostReductionEffect(filter)));
}
private CentaurOmenreader(final CentaurOmenreader card) {

View file

@ -32,7 +32,7 @@ public final class Cessation extends CardImpl {
this.addAbility(ability);
//Enchanted creature can't attack.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantAttackAttachedEffect(AttachmentType.AURA)));
//When Cessation is put into a graveyard from the battlefield, return Cessation to its owner's hand.
this.addAbility(new PutIntoGraveFromBattlefieldSourceTriggeredAbility(new ReturnToHandSourceEffect()));

View file

@ -52,7 +52,7 @@ public final class ChainerDementiaMaster extends CardImpl {
this.toughness = new MageInt(3);
// Nightmare creatures get +1/+1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterCreature, false)));
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterCreature, false)));
// {B}{B}{B}, Pay 3 life: Put target creature card from a graveyard onto the battlefield under your control. That creature is black and is a Nightmare in addition to its other creature types.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ChainerDementiaMasterEffect(), new ManaCostsImpl<>("{B}{B}{B}"));

View file

@ -26,7 +26,7 @@ public final class ChainsOfMephistopheles extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{B}");
// If a player would draw a card except the first one they draw in their draw step each turn, that player discards a card instead. If the player discards a card this way, they draw a card. If the player doesn't discard a card this way, they put the top card of their library into their graveyard.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChainsOfMephistophelesReplacementEffect()), new CardsDrawnDuringDrawStepWatcher());
this.addAbility(new SimpleStaticAbility(new ChainsOfMephistophelesReplacementEffect()), new CardsDrawnDuringDrawStepWatcher());
}
private ChainsOfMephistopheles(final ChainsOfMephistopheles card) {

View file

@ -41,7 +41,7 @@ public final class ChamberOfManipulation extends CardImpl {
Ability controlAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainControlTargetEffect(Duration.EndOfTurn), new TapSourceCost());
controlAbility.addTarget(new TargetCreaturePermanent());
controlAbility.addCost(new DiscardTargetCost(new TargetCardInHand()));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(controlAbility, AttachmentType.AURA,
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(controlAbility, AttachmentType.AURA,
Duration.WhileOnBattlefield, "Enchanted land has \"{T}, Discard a card: Gain control of target creature until end of turn.\"")));
}

View file

@ -30,7 +30,7 @@ public final class ChampionOfLambholt extends CardImpl {
this.toughness = new MageInt(1);
// Creatures with power less than Champion of Lambholt's power can't block creatures you control.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChampionOfLambholtEffect()));
this.addAbility(new SimpleStaticAbility(new ChampionOfLambholtEffect()));
// Whenever another creature you control enters, put a +1/+1 counter on Champion of Lambholt.
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(Zone.BATTLEFIELD,

View file

@ -28,10 +28,10 @@ public final class ChampionsHelm extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +2/+2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 2)));
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(2, 2)));
// As long as equipped creature is legendary, it has hexproof.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
new GainAbilityAttachedEffect(HexproofAbility.getInstance(), AttachmentType.EQUIPMENT),
new EquippedHasSupertypeCondition(SuperType.LEGENDARY), staticText)));

View file

@ -34,7 +34,7 @@ public final class ChantOfTheSkifsang extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature gets -13/-0.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(-13, 0, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(-13, 0, Duration.WhileOnBattlefield)));
}
private ChantOfTheSkifsang(final ChantOfTheSkifsang card) {

View file

@ -37,7 +37,7 @@ public final class ChaosImps extends CardImpl {
this.addAbility(new UnleashAbility());
// Chaos Imps has trample as long as it has a +1/+1 counter on it.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
this.addAbility(new SimpleStaticAbility(
new ConditionalContinuousEffect(new GainAbilitySourceEffect(TrampleAbility.getInstance()),
new SourceHasCounterCondition(CounterType.P1P1),"{this} has trample as long as it has a +1/+1 counter on it")));
@ -51,4 +51,4 @@ public final class ChaosImps extends CardImpl {
public ChaosImps copy() {
return new ChaosImps(this);
}
}
}

View file

@ -38,10 +38,10 @@ public final class Chaosphere extends CardImpl {
this.supertype.add(SuperType.WORLD);
// Creatures with flying can block only creatures with flying.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChaosphereEffect()));
this.addAbility(new SimpleStaticAbility(new ChaosphereEffect()));
// Creatures without flying have reach.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ReachAbility.getInstance(), Duration.WhileOnBattlefield, filterCreature, rule)));
this.addAbility(new SimpleStaticAbility(new GainAbilityAllEffect(ReachAbility.getInstance(), Duration.WhileOnBattlefield, filterCreature, rule)));
}

View file

@ -25,7 +25,7 @@ public final class ChargingRhino extends CardImpl {
this.toughness = new MageInt(4);
// Charging Rhino can't be blocked by more than one creature.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByMoreThanOneSourceEffect()));
this.addAbility(new SimpleStaticAbility(new CantBeBlockedByMoreThanOneSourceEffect()));
}
private ChargingRhino(final ChargingRhino card) {

View file

@ -36,7 +36,7 @@ public final class ChargingTuskodon extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
// If Charging Tuskodon would deal combat damage to a player, it deals double that damage to that player instead.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChargingTuskodonEffect()));
this.addAbility(new SimpleStaticAbility(new ChargingTuskodonEffect()));
}
private ChargingTuskodon(final ChargingTuskodon card) {

View file

@ -30,7 +30,7 @@ public final class ChariotOfVictory extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature has first strike, trample, and haste.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT));
Ability ability = new SimpleStaticAbility(new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT));
Effect effect = new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.EQUIPMENT);
effect.setText(", trample,");
ability.addEffect(effect);

View file

@ -36,7 +36,7 @@ public final class ChiefEngineer extends CardImpl {
this.toughness = new MageInt(3);
// Artifact spells you cast have convoke.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledSpellsEffect(new ConvokeAbility(), filter)));
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledSpellsEffect(new ConvokeAbility(), filter)));
}
private ChiefEngineer(final ChiefEngineer card) {

View file

@ -34,7 +34,7 @@ public final class ChiefOfTheEdge extends CardImpl {
this.toughness = new MageInt(2);
// Other Warrior creatures you control get +1/+0
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 0, Duration.WhileOnBattlefield, filter, true)));
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 0, Duration.WhileOnBattlefield, filter, true)));
}
private ChiefOfTheEdge(final ChiefOfTheEdge card) {

View file

@ -34,7 +34,7 @@ public final class ChiefOfTheScale extends CardImpl {
this.toughness = new MageInt(3);
// Other Warrior creatures you control get +0/+1
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(0, 1, Duration.WhileOnBattlefield, filter, true)));
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(0, 1, Duration.WhileOnBattlefield, filter, true)));
}
private ChiefOfTheScale(final ChiefOfTheScale card) {

View file

@ -28,7 +28,7 @@ public final class Chill extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{U}");
// Red spells cost {2} more to cast.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostIncreasingAllEffect(2, filter, TargetController.ANY)));
this.addAbility(new SimpleStaticAbility(new SpellsCostIncreasingAllEffect(2, filter, TargetController.ANY)));
}
private Chill(final Chill card) {

View file

@ -34,7 +34,7 @@ public final class ChimericMass extends CardImpl {
new CreatureToken(0, 0, "Construct artifact creature with \"This creature's power and toughness are each equal to the number of charge counters on it.\"")
.withType(CardType.ARTIFACT)
.withSubType(SubType.CONSTRUCT)
.withAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SetBasePowerToughnessSourceEffect(count, Duration.WhileOnBattlefield))),
.withAbility(new SimpleStaticAbility(new SetBasePowerToughnessSourceEffect(count, Duration.WhileOnBattlefield))),
CardType.ARTIFACT, Duration.EndOfTurn).withDurationRuleAtStart(true), new GenericManaCost(1)));
}

View file

@ -38,7 +38,7 @@ public final class ChirrutImwe extends CardImpl {
this.toughness = new MageInt(3);
// Chirrut Imwe can block up to two additional creatures.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChirrutImweEffect()));
this.addAbility(new SimpleStaticAbility(new ChirrutImweEffect()));
// {1}{W}: Prevent all combat damage that would be dealt to Chirrut Imwe until end of turn.
Effect effect = new PreventCombatDamageToSourceEffect(Duration.EndOfTurn);
@ -97,4 +97,4 @@ class ChirrutImweEffect extends ContinuousEffectImpl {
public boolean hasLayer(Layer layer) {
return layer == Layer.RulesEffects;
}
}
}

View file

@ -29,7 +29,7 @@ public final class ChitinousCloak extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +2/+2 and has menace.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 2));
Ability ability = new SimpleStaticAbility(new BoostEquippedEffect(2, 2));
Effect effect = new GainAbilityAttachedEffect(new MenaceAbility(), AttachmentType.EQUIPMENT);
effect.setText("and has menace. <i>(It can't be blocked except by two or more creatures.)</i>");
ability.addEffect(effect);

View file

@ -27,7 +27,7 @@ public final class ChoMannoRevolutionary extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(2);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PreventAllDamageToSourceEffect(Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new PreventAllDamageToSourceEffect(Duration.WhileOnBattlefield)));
}
private ChoMannoRevolutionary(final ChoMannoRevolutionary card) {

View file

@ -41,7 +41,7 @@ public final class ChoMannosBlessing extends CardImpl {
this.addAbility(new AsEntersBattlefieldAbility(new ChooseColorEffect(Outcome.Benefit)));
// Enchanted creature has protection from the chosen color. This effect doesn't remove Cho-Manno's Blessing.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ProtectionChosenColorAttachedEffect(true)));
this.addAbility(new SimpleStaticAbility(new ProtectionChosenColorAttachedEffect(true)));
}
private ChoMannosBlessing(final ChoMannosBlessing card) {

View file

@ -38,7 +38,7 @@ public final class ChokingRestraints extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature can't attack or block
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
// {3}{W}{W}, Sacrifice Choking Restraints: Exile enchanted creature.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileAttachedEffect(), new ManaCostsImpl<>("{3}{W}{W}"));

View file

@ -38,8 +38,8 @@ public final class ChorusOfTheConclave extends CardImpl {
this.addAbility(new ForestwalkAbility());
// As an additional cost to cast creature spells, you may pay any amount of mana. If you do, that creature enters the battlefield with that many additional +1/+1 counters on it.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChorusOfTheConclaveReplacementEffect()));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChorusOfTheConclaveReplacementEffect2()));
this.addAbility(new SimpleStaticAbility(new ChorusOfTheConclaveReplacementEffect()));
this.addAbility(new SimpleStaticAbility(new ChorusOfTheConclaveReplacementEffect2()));
}

View file

@ -41,7 +41,7 @@ public final class ChosenByHeliod extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1), false));
// Enchanted creature gets +0/+2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(0,2, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(0,2, Duration.WhileOnBattlefield)));
}
private ChosenByHeliod(final ChosenByHeliod card) {

View file

@ -42,7 +42,7 @@ public final class Chromanticore extends CardImpl {
// Lifelink
this.addAbility(LifelinkAbility.getInstance());
// Enchanted creature gets +4/+4 and has flying, first strike, vigilance, trample and lifelink.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(4,4));
Ability ability = new SimpleStaticAbility(new BoostEnchantedEffect(4,4));
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has flying");
ability.addEffect(effect);

View file

@ -21,7 +21,7 @@ public final class ChromaticLantern extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}");
// Lands you control have "{T}: Add one mana of any color."
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new AnyColorManaAbility(), Duration.WhileOnBattlefield, StaticFilters.FILTER_LANDS, false)));
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(new AnyColorManaAbility(), Duration.WhileOnBattlefield, StaticFilters.FILTER_LANDS, false)));
// {T}: Add one mana of any color.
this.addAbility(new AnyColorManaAbility());

View file

@ -30,7 +30,7 @@ public final class ChromaticOrrery extends CardImpl {
this.supertype.add(SuperType.LEGENDARY);
// You may spend mana as though it were mana of any color.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ChromaticOrreryEffect()));
this.addAbility(new SimpleStaticAbility(new ChromaticOrreryEffect()));
// {T}: Add {C}{C}{C}{C}{C}.
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, Mana.ColorlessMana(5), new TapSourceCost()));
@ -81,4 +81,4 @@ class ChromaticOrreryEffect extends AsThoughEffectImpl implements AsThoughManaEf
public ManaType getAsThoughManaType(ManaType manaType, ManaPoolItem mana, UUID affectedControllerId, Ability source, Game game) {
return mana.getFirstAvailable();
}
}
}

View file

@ -35,7 +35,7 @@ public final class CitanulHierophants extends CardImpl {
this.toughness = new MageInt(2);
//Creatures you control have "{T}: Add {G}."
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(new GreenManaAbility(), Duration.WhileOnBattlefield, filter, false)));
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(new GreenManaAbility(), Duration.WhileOnBattlefield, filter, false)));
}
private CitanulHierophants(final CitanulHierophants card) {

View file

@ -26,7 +26,7 @@ public final class CityOfSolitude extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}");
// Players can cast spells and activate abilities only during their own turns.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CityOfSolitudeEffect()));
this.addAbility(new SimpleStaticAbility(new CityOfSolitudeEffect()));
}
private CityOfSolitude(final CityOfSolitude card) {

View file

@ -29,7 +29,7 @@ public final class CivicSaber extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +1/+0 for each of its colors.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CivicSaberColorCount(), StaticValue.get(0), Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(new CivicSaberColorCount(), StaticValue.get(0), Duration.WhileOnBattlefield)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
@ -81,4 +81,3 @@ class CivicSaberColorCount implements DynamicValue {
return "of its colors";
}
}

View file

@ -39,7 +39,7 @@ public final class ClaimOfErebos extends CardImpl {
Ability grantedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(2), new ManaCostsImpl<>("{1}{B}"));
grantedAbility.addCost(new TapSourceCost());
grantedAbility.addTarget(new TargetPlayer());
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(grantedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(grantedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield)));
}

View file

@ -24,7 +24,7 @@ public final class ClamIAm extends CardImpl {
this.toughness = new MageInt(2);
// If you roll a 3 on a six-sided die, you may reroll that die.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ClamIAmEffect()));
this.addAbility(new SimpleStaticAbility(new ClamIAmEffect()));
}
private ClamIAm(final ClamIAm card) {

View file

@ -39,12 +39,12 @@ public final class ClashOfRealities extends CardImpl {
// All Spirits have "When this permanent enters the battlefield, you may have it deal 3 damage to target non-Spirit creature."
Ability ability1 = new ClashOfRealitiesTriggeredAbility(new DamageTargetEffect(3), "When this permanent enters, ");
ability1.addTarget(new TargetCreaturePermanent(filterNotSpirit));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability1, Duration.WhileOnBattlefield, filterSpirit, "All Spirits have \"When this permanent enters the battlefield, you may have it deal 3 damage to target non-Spirit creature.\"")));
this.addAbility(new SimpleStaticAbility(new GainAbilityAllEffect(ability1, Duration.WhileOnBattlefield, filterSpirit, "All Spirits have \"When this permanent enters the battlefield, you may have it deal 3 damage to target non-Spirit creature.\"")));
// Non-Spirit creatures have "When this creature enters the battlefield, you may have it deal 3 damage to target Spirit creature."
Ability ability2 = new ClashOfRealitiesTriggeredAbility(new DamageTargetEffect(3), "When this creature enters, ");
ability2.addTarget(new TargetCreaturePermanent(filterSpirit));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability2, Duration.WhileOnBattlefield, filterNotSpirit, "Non-Spirit creatures have \"When this creature enters the battlefield, you may have it deal 3 damage to target Spirit creature.\"")));
this.addAbility(new SimpleStaticAbility(new GainAbilityAllEffect(ability2, Duration.WhileOnBattlefield, filterNotSpirit, "Non-Spirit creatures have \"When this creature enters the battlefield, you may have it deal 3 damage to target Spirit creature.\"")));
}
private ClashOfRealities(final ClashOfRealities card) {

View file

@ -37,7 +37,7 @@ public final class Claustrophobia extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new TapEnchantedEffect()));
// Enchanted creature doesn't untap during its controller's untap step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect()));
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepEnchantedEffect()));
}
private Claustrophobia(final Claustrophobia card) {

View file

@ -39,7 +39,7 @@ public final class ClawsOfValakut extends CardImpl {
this.getSpellAbility().addTarget(auraTarget);
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
this.addAbility(new EnchantAbility(auraTarget));
SimpleStaticAbility ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(new PermanentsOnBattlefieldCount(filter, 1),
SimpleStaticAbility ability = new SimpleStaticAbility(new BoostEnchantedEffect(new PermanentsOnBattlefieldCount(filter, 1),
new PermanentsOnBattlefieldCount(filter, 0),
Duration.WhileOnBattlefield));
ability.addEffect(new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.AURA).setText("and has first strike"));

View file

@ -35,7 +35,7 @@ public final class ClingingDarkness extends CardImpl {
this.addAbility(ability);
// Enchanted creature gets -4/-1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(-4, -1, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(-4, -1, Duration.WhileOnBattlefield)));
}
private ClingingDarkness(final ClingingDarkness card) {

View file

@ -31,7 +31,7 @@ public final class CloakAndDagger extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +2/+0 and has shroud.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 0));
Ability ability = new SimpleStaticAbility(new BoostEquippedEffect(2, 0));
ability.addEffect(new GainAbilityAttachedEffect(ShroudAbility.getInstance(), AttachmentType.EQUIPMENT).setText("and has shroud"));
this.addAbility(ability);
// Whenever a Rogue creature enters the battlefield, you may attach Cloak and Dagger to it.

View file

@ -39,7 +39,7 @@ public final class CloakOfInvisibility extends CardImpl {
this.addAbility(ability);
// Enchanted creature has phasing and can't be blocked except by Walls.
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(PhasingAbility.getInstance(), AttachmentType.AURA).setText("Enchanted creature has phasing"));
ability = new SimpleStaticAbility(new GainAbilityAttachedEffect(PhasingAbility.getInstance(), AttachmentType.AURA).setText("Enchanted creature has phasing"));
ability.addEffect(new CantBeBlockedByCreaturesAttachedEffect(Duration.WhileOnBattlefield, filter, AttachmentType.AURA)
.setText("and can't be blocked except by Walls. " +
"<i>(It phases in or out before its controller untaps during each of their untap steps. " +

View file

@ -33,7 +33,7 @@ public final class CloakOfMists extends CardImpl {
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
this.addAbility(new EnchantAbility(auraTarget));
// Enchanted creature can't be blocked.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantBeBlockedAttachedEffect(AttachmentType.AURA)));
}
private CloakOfMists(final CloakOfMists card) {

View file

@ -31,7 +31,7 @@ public final class Cloudform extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new BecomesAuraAttachToManifestSourceEffect()));
// Enchanted creature has flying and hexproof.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD,
Ability ability = new SimpleStaticAbility(
new GainAbilityAttachedEffect(FlyingAbility.getInstance(),
AttachmentType.AURA, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(

View file

@ -38,7 +38,7 @@ public final class CloudreachCavalry extends CardImpl {
this.toughness = new MageInt(1);
// As long as you control a Bird, Cloudreach Cavalry gets +2/+2 and has flying.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
Ability ability = new SimpleStaticAbility(new ConditionalContinuousEffect(
new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield),
new PermanentsOnTheBattlefieldCondition(filter),
"As long as you control a Bird, {this} gets +2/+2"));

View file

@ -41,14 +41,14 @@ public final class CloutOfTheDominus extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// As long as enchanted creature is blue, it gets +1/+1 and has shroud.
SimpleStaticAbility blueAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
SimpleStaticAbility blueAbility = new SimpleStaticAbility(new ConditionalContinuousEffect(
new BoostEnchantedEffect(1, 1), new EnchantedCreatureColorCondition(ObjectColor.BLUE), "As long as enchanted creature is blue, it gets +1/+1"));
blueAbility.addEffect(new ConditionalContinuousEffect(new GainAbilityAttachedEffect(ShroudAbility.getInstance(), AttachmentType.AURA),
new EnchantedCreatureColorCondition(ObjectColor.BLUE), "and has shroud"));
this.addAbility(blueAbility);
// As long as enchanted creature is red, it gets +1/+1 and has haste.
SimpleStaticAbility redAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
SimpleStaticAbility redAbility = new SimpleStaticAbility(new ConditionalContinuousEffect(
new BoostEnchantedEffect(1, 1), new EnchantedCreatureColorCondition(ObjectColor.RED), "As long as enchanted creature is red, it gets +1/+1"));
redAbility.addEffect(new ConditionalContinuousEffect(new GainAbilityAttachedEffect(HasteAbility.getInstance(), AttachmentType.AURA),
new EnchantedCreatureColorCondition(ObjectColor.RED), "and has haste"));

View file

@ -23,7 +23,7 @@ public final class CoatOfArms extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{5}");
// Each creature gets +1/+1 for each other creature on the battlefield that shares at least one creature type with it.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CoatOfArmsEffect()));
this.addAbility(new SimpleStaticAbility(new CoatOfArmsEffect()));
}
private CoatOfArms(final CoatOfArms card) {

View file

@ -26,7 +26,7 @@ public final class CobbledWings extends CardImpl {
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature has flying.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.EQUIPMENT)));
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.EQUIPMENT)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));

View file

@ -50,7 +50,7 @@ public final class Cocoon extends CardImpl {
this.addAbility(ability);
// Enchanted creature doesnt untap during your untap step if Cocoon has a pupa counter on it.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousRuleModifyingEffect(new DontUntapInControllersUntapStepEnchantedEffect(),
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousRuleModifyingEffect(new DontUntapInControllersUntapStepEnchantedEffect(),
new SourceHasCounterCondition(CounterType.PUPA)).setText("Enchanted creature doesn't untap during its controller's untap step if Cocoon has a pupa counter on it")));
// At the beginning of your upkeep, remove a pupa counter from Cocoon. If you cant, sacrifice it, put a +1/+1 counter on enchanted creature, and that creature gains flying.

View file

@ -34,7 +34,7 @@ public final class CoercedToKill extends CardImpl {
this.addAbility(new EnchantAbility(auraTarget));
// You control enchanted creature.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect()));
this.addAbility(new SimpleStaticAbility(new ControlEnchantedEffect()));
// Enchanted creature has base power and toughness 1/1, has deathtouch, and is an Assassin in addition to its other types.
Ability ability = new SimpleStaticAbility(new SetBasePowerToughnessEnchantedEffect(1, 1));

View file

@ -38,7 +38,7 @@ public final class CoilsOfTheMedusa extends CardImpl {
this.addAbility(new EnchantAbility(auraTarget));
// Enchanted creature gets +1/-1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, -1, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(1, -1, Duration.WhileOnBattlefield)));
// Sacrifice Coils of the Medusa: Destroy all non-Wall creatures blocking enchanted creature.
this.addAbility(new SimpleActivatedAbility(

View file

@ -34,14 +34,14 @@ public final class ColfenorsPlans extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new ColfenorsPlansExileEffect(), false));
// You may look at and play cards exiled with Colfenor's Plans.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ColfenorsPlansPlayCardEffect()));
this.addAbility(new SimpleStaticAbility(new ColfenorsPlansPlayCardEffect()));
this.addAbility(new SimpleStaticAbility(Zone.ALL, new ColfenorsPlansLookAtCardEffect()));
// Skip your draw step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipDrawStepEffect()));
this.addAbility(new SimpleStaticAbility(new SkipDrawStepEffect()));
// You can't cast more than one spell each turn.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantCastMoreThanOneSpellEffect(TargetController.YOU)));
this.addAbility(new SimpleStaticAbility(new CantCastMoreThanOneSpellEffect(TargetController.YOU)));
}

View file

@ -21,7 +21,7 @@ public final class CollectiveBlessing extends CardImpl {
// Creatures you control get +3/+3.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(3,3, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(3,3, Duration.WhileOnBattlefield)));
}
private CollectiveBlessing(final CollectiveBlessing card) {
@ -32,4 +32,4 @@ public final class CollectiveBlessing extends CardImpl {
public CollectiveBlessing copy() {
return new CollectiveBlessing(this);
}
}
}

View file

@ -28,7 +28,7 @@ public final class CollectiveRestraint extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{U}");
// Domain - Creatures can't attack you unless their controller pays {X} for each creature they control that's attacking you, where X is the number of basic land types you control.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new CollectiveRestraintPayManaToAttackAllEffect());
Ability ability = new SimpleStaticAbility(new CollectiveRestraintPayManaToAttackAllEffect());
ability.setAbilityWord(AbilityWord.DOMAIN);
this.addAbility(ability.addHint(DomainHint.instance));

View file

@ -34,7 +34,7 @@ public final class ColossusOfSardia extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
// Colossus of Sardia doesn't untap during your untap step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepSourceEffect()));
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepSourceEffect()));
// {9}: Untap Colossus of Sardia. Activate this ability only during your upkeep.
this.addAbility(new ConditionalActivatedAbility(Zone.BATTLEFIELD,

View file

@ -33,7 +33,7 @@ public final class ComaVeil extends CardImpl {
this.addAbility(ability);
// Enchanted permanent doesn't untap during its controller's untap step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect("permanent")));
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepEnchantedEffect("permanent")));
}
private ComaVeil(final ComaVeil card) {

View file

@ -35,7 +35,7 @@ public final class CommanderCody extends CardImpl {
this.toughness = new MageInt(7);
// Non-token Trooper creatures you control have "At the beginning of your upkeep, create a 1/1 white Trooper creature token."
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
new BeginningOfUpkeepTriggeredAbility(new CreateTokenEffect(new TrooperToken())),
Duration.WhileOnBattlefield, filter, false)
.withForceQuotes()

View file

@ -35,7 +35,7 @@ public final class CommandersAuthority extends CardImpl {
this.addAbility(ability);
// Enchanted creature has "At the beginning of your upkeep, create a 1/1 white Human creature token."
ability = new BeginningOfUpkeepTriggeredAbility(new CreateTokenEffect(new HumanToken()));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability, AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(ability, AttachmentType.AURA)));
}
private CommandersAuthority(final CommandersAuthority card) {

View file

@ -43,14 +43,14 @@ public final class CompulsoryRest extends CardImpl {
this.addAbility(ability);
// Enchanted creature can't attack or block.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
this.addAbility(new SimpleStaticAbility(new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
// Enchanted creature has "{2}, Sacrifice this creature: You gain 2 life."
Ability grantedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(2), new GenericManaCost(2));
Cost cost = new SacrificeSourceCost();
cost.setText("Sacrifice this creature");
grantedAbility.addCost(cost);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(grantedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield)));
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(grantedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield)));
}

View file

@ -45,7 +45,7 @@ public final class ConclavesBlessing extends CardImpl {
PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter, 2);
BoostEnchantedEffect effect = new BoostEnchantedEffect(StaticValue.get(0), value, Duration.WhileOnBattlefield);
effect.setText("Enchanted creature gets +0/+2 for each other creature you control.");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
this.addAbility(new SimpleStaticAbility(effect));
}
private ConclavesBlessing(final ConclavesBlessing card) {

View file

@ -56,7 +56,7 @@ public final class ConduitOfRuin extends CardImpl {
// The first creature spell you cast each turn costs {2} less to cast.
Effect effect = new SpellsCostReductionControllerEffect(filterCost, 2);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect), new ConduitOfRuinWatcher());
this.addAbility(new SimpleStaticAbility(effect), new ConduitOfRuinWatcher());
}
private ConduitOfRuin(final ConduitOfRuin card) {

View file

@ -34,7 +34,7 @@ public final class Confiscate extends CardImpl {
this.addAbility(ability);
// You control enchanted permanent.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect("permanent")));
this.addAbility(new SimpleStaticAbility(new ControlEnchantedEffect("permanent")));
}
private Confiscate(final Confiscate card) {

View file

@ -35,7 +35,7 @@ public final class Conquer extends CardImpl {
this.addAbility(ability);
// You control enchanted land.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect("land")));
this.addAbility(new SimpleStaticAbility(new ControlEnchantedEffect("land")));
}
private Conquer(final Conquer card) {

View file

@ -46,7 +46,7 @@ public final class ConsecratedByBlood extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted creature gets +2/+2 and has flying and "Sacrifice two other creatures: Regenerate this creature."
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
ability = new SimpleStaticAbility(new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
effect.setText("and has flying");
ability.addEffect(effect);

Some files were not shown because too many files have changed in this diff Show more