forked from External/mage
refactor: SimpleStaticAbility default zone (cards N O P)
This commit is contained in:
parent
ee2b430479
commit
701896bd81
200 changed files with 223 additions and 225 deletions
|
|
@ -59,7 +59,7 @@ public final class NaruMehaMasterWizard extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
//Other Wizards you control get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, wizardFilter, true)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, wizardFilter, true)));
|
||||
}
|
||||
|
||||
private NaruMehaMasterWizard(final NaruMehaMasterWizard card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class NathsElite extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// All creatures able to block Nath's Elite do so.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new MustBeBlockedByAllSourceEffect(Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new MustBeBlockedByAllSourceEffect(Duration.WhileOnBattlefield)));
|
||||
|
||||
// When Nath's Elite enters the battlefield, clash with an opponent. If you win, put a +1/+1 counter on Nath's Elite.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new DoIfClashWonEffect(new AddCountersSourceEffect(CounterType.P1P1.createInstance()))));
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ public final class NaturesRevolt extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{G}{G}");
|
||||
|
||||
// All lands are 2/2 creatures that are still lands.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BecomesCreatureAllEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new BecomesCreatureAllEffect(
|
||||
new CreatureToken(2, 2, "2/2 creatures"),
|
||||
"lands", filter, Duration.WhileOnBattlefield, false)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public final class NayaHushblade extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// As long as you control another multicolored permanent, Naya Hushblade gets +1/+1 and has shroud.
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
Ability ability = new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostSourceEffect(1,1, Duration.WhileOnBattlefield),
|
||||
new PermanentsOnTheBattlefieldCondition(filter),
|
||||
"As long as you control another multicolored permanent, Naya Hushblade gets +1/+1"));
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class NazgulBattleMace extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
// Equipped creature has menace, deathtouch, annihilator 1, and
|
||||
// "Whenever an opponent sacrifices a nontoken permanent, put that card onto the battlefield under your control unless that player pays 3 life."
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(new MenaceAbility(false), AttachmentType.EQUIPMENT));
|
||||
Ability ability = new SimpleStaticAbility(new GainAbilityAttachedEffect(new MenaceAbility(false), AttachmentType.EQUIPMENT));
|
||||
ability.addEffect(new GainAbilityAttachedEffect(DeathtouchAbility.getInstance(), AttachmentType.EQUIPMENT).setText(", deathtouch"));
|
||||
ability.addEffect(new GainAbilityAttachedEffect(new AnnihilatorAbility(1), AttachmentType.EQUIPMENT).setText(", annihilator 1"));
|
||||
Ability sacTriggerAbility = new SacrificePermanentTriggeredAbility(Zone.BATTLEFIELD,
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class NearheathPilgrim extends CardImpl {
|
|||
this.addAbility(new SoulbondAbility());
|
||||
|
||||
// As long as Nearheath Pilgrim is paired with another creature, both creatures have lifelink.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityPairedEffect(LifelinkAbility.getInstance(), ruleText)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityPairedEffect(LifelinkAbility.getInstance(), ruleText)));
|
||||
}
|
||||
|
||||
private NearheathPilgrim(final NearheathPilgrim card) {
|
||||
|
|
|
|||
|
|
@ -51,11 +51,11 @@ public final class NecromancersMagemark extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Creatures you control that are enchanted get +1/+1.
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, false));
|
||||
ability = new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, false));
|
||||
this.addAbility(ability);
|
||||
|
||||
// If a creature you control that's enchanted would die, return it to its owner's hand instead.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NecromancersMagemarkEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NecromancersMagemarkEffect()));
|
||||
}
|
||||
|
||||
private NecromancersMagemark(final NecromancersMagemark card) {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class Necropotence extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{B}{B}{B}");
|
||||
|
||||
// Skip your draw step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipDrawStepEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new SkipDrawStepEffect()));
|
||||
// Whenever you discard a card, exile that card from your graveyard.
|
||||
Effect effect = new ExileTargetEffect(null, "", Zone.GRAVEYARD);
|
||||
effect.setText("exile that card from your graveyard");
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@ public final class Necropouncer extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
this.addAbility(new LivingWeaponAbility());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(3, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(HasteAbility.getInstance(), AttachmentType.EQUIPMENT)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(3, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(HasteAbility.getInstance(), AttachmentType.EQUIPMENT)));
|
||||
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public final class NecroticPlague extends CardImpl {
|
|||
ability = new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceEffect());
|
||||
Effect effect = new GainAbilityAttachedEffect(ability, AttachmentType.AURA, Duration.WhileOnBattlefield);
|
||||
effect.setText("Enchanted creature has \"At the beginning of your upkeep, sacrifice this creature.\"");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
|
||||
ability = new DiesAttachedTriggeredAbility(new NecroticPlagueEffect(), "enchanted creature", false);
|
||||
ability.setTargetAdjuster(NecroticPlagueAdjuster.instance);
|
||||
|
|
|
|||
|
|
@ -33,10 +33,10 @@ public final class NefariousLich extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{B}{B}{B}{B}");
|
||||
|
||||
// If damage would be dealt to you, exile that many cards from your graveyard instead. If you can't, you lose the game.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NefariousLichDamageReplacementEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NefariousLichDamageReplacementEffect()));
|
||||
|
||||
// If you would gain life, draw that many cards instead.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NefariousLichLifeGainReplacementEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NefariousLichLifeGainReplacementEffect()));
|
||||
|
||||
// When Nefarious Lich leaves the battlefield, you lose the game.
|
||||
this.addAbility(new LeavesBattlefieldTriggeredAbility(new LoseGameSourceControllerEffect(), false));
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class NeglectedHeirloom extends CardImpl {
|
|||
this.secondSideCardClazz = mage.cards.a.AshmouthBlade.class;
|
||||
|
||||
// Equipped creature gets +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(1, 1)));
|
||||
|
||||
// When equipped creature transforms, transform Neglected Heirloom.
|
||||
this.addAbility(new TransformAbility());
|
||||
|
|
@ -87,4 +87,4 @@ class NeglectedHeirloomTriggeredAbility extends TriggeredAbilityImpl {
|
|||
public String getRule() {
|
||||
return "When equipped creature transforms, transform Neglected Heirloom.";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -44,11 +44,11 @@ public final class NehebTheWorthy extends CardImpl {
|
|||
this.addAbility(FirstStrikeAbility.getInstance());
|
||||
|
||||
// Other Minotaurs you control have first strike.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Duration.WhileOnBattlefield, filter, true)));
|
||||
this.addAbility(new SimpleStaticAbility(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(ComparisonType.FEWER_THAN, 2);
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
Ability ability = new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostControlledEffect(2, 0, Duration.WhileOnBattlefield, filter), condition, "As long as you have one or fewer cards in hand, Minotaurs you control get +2/+0"));
|
||||
this.addAbility(ability);
|
||||
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public final class NephaliaAcademy extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.LAND},"");
|
||||
|
||||
// If a spell or ability an opponent controls causes you to discard a card, you may reveal that card and put it on top of your library instead of putting it anywhere else.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NephaliaAcademyEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NephaliaAcademyEffect()));
|
||||
|
||||
// {T}: Add {C}.
|
||||
this.addAbility(new ColorlessManaAbility());
|
||||
|
|
@ -135,4 +135,4 @@ class NephaliaAcademyEffect extends ReplacementEffectImpl {
|
|||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@ public final class NerfHerder extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Monstrosity abilities you activate cost {1} less to activate.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AbilitiesCostReductionControllerEffect(MonstrosityAbility.class, "Monstrosity")));
|
||||
this.addAbility(new SimpleStaticAbility(new AbilitiesCostReductionControllerEffect(MonstrosityAbility.class, "Monstrosity")));
|
||||
|
||||
// Each creature you control with a +1/+1 counter on it has trample.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(
|
||||
TrampleAbility.getInstance(),
|
||||
Duration.WhileOnBattlefield,
|
||||
StaticFilters.FILTER_CONTROLLED_CREATURE_P1P1))
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class NettleSentinel extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Nettle Sentinel doesn't untap during your untap step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepSourceEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepSourceEffect()));
|
||||
// Whenever you cast a green spell, you may untap Nettle Sentinel.
|
||||
this.addAbility(new SpellCastControllerTriggeredAbility(new UntapSourceEffect(), filter, true));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public final class NeurokHoversail 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 {2}
|
||||
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class NeurokSpy extends CardImpl {
|
|||
new CantBeBlockedSourceEffect(),
|
||||
new DefendingPlayerControlsSourceAttackingCondition(new FilterArtifactPermanent()));
|
||||
effect.setText("{this} can't be blocked as long as defending player controls an artifact");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private NeurokSpy(final NeurokSpy card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class NeurokStealthsuit extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature has shroud.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ShroudAbility.getInstance(), AttachmentType.EQUIPMENT)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(ShroudAbility.getInstance(), AttachmentType.EQUIPMENT)));
|
||||
// {U}{U}: Attach Neurok Stealthsuit to target creature you control.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AttachEffect(Outcome.BoostCreature, "Attach {this} to target creature you control"), new ManaCostsImpl<>("{U}{U}"));
|
||||
ability.addTarget(new TargetControlledCreaturePermanent());
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class Nevermore extends CardImpl {
|
|||
this.addAbility(new AsEntersBattlefieldAbility(new ChooseACardNameEffect(ChooseACardNameEffect.TypeOfName.NON_LAND_NAME)));
|
||||
|
||||
// The named card can't be cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NevermoreEffect2()));
|
||||
this.addAbility(new SimpleStaticAbility(new NevermoreEffect2()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public final class NewHorizons extends CardImpl {
|
|||
Ability gainedAbility = new SimpleManaAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(2), new TapSourceCost());
|
||||
Effect effect = new GainAbilityAttachedEffect(gainedAbility, AttachmentType.AURA);
|
||||
effect.setText("Enchanted land has \"{T}: Add two mana of any one color.\"");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private NewHorizons(final NewHorizons card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class NewPerspectives extends CardImpl {
|
|||
this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(3)));
|
||||
|
||||
// As long as you have seven or more cards in hand, you may pay {0} rather than pay cycling costs.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NewPerspectivesCostModificationEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NewPerspectivesCostModificationEffect()));
|
||||
}
|
||||
|
||||
private NewPerspectives(final NewPerspectives card) {
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class NezahalPrimalTide extends CardImpl {
|
|||
|
||||
// You have no maximum hand size.
|
||||
Effect effect = new MaximumHandSizeControllerEffect(Integer.MAX_VALUE, Duration.WhileOnBattlefield, MaximumHandSizeControllerEffect.HandSizeModification.SET);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
|
||||
// Whenever an opponent casts a noncreature spell, draw a card.
|
||||
this.addAbility(new SpellCastOpponentTriggeredAbility(Zone.BATTLEFIELD,
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public final class NightMarketGuard extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Night Market Guard can block an additional creature each combat.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CanBlockAdditionalCreatureEffect(Duration.WhileOnBattlefield, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new CanBlockAdditionalCreatureEffect(Duration.WhileOnBattlefield, 1)));
|
||||
}
|
||||
|
||||
private NightMarketGuard(final NightMarketGuard card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class NightRevelers extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Night Revelers has haste as long as an opponent controls a Human.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new GainAbilitySourceEffect(HasteAbility.getInstance()),
|
||||
new OpponentControlsPermanentCondition(filter),
|
||||
"{this} has haste as long as an opponent controls a Human.")));
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class NightfireGiant extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Nightfire Giant gets +1/+1 as long as you control a Mountain.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceWhileControlsEffect(filter, 1, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceWhileControlsEffect(filter, 1, 1)));
|
||||
|
||||
// {4}{R}: Nightfire Giant deals 2 damage to any target.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{4}{R}"));
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class NightmareLash extends CardImpl {
|
|||
|
||||
// Equipped creature gets +1/+1 for each Swamp you control.
|
||||
PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(value, value)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(value, value)));
|
||||
// Equip-Pay 3 life.
|
||||
this.addAbility(new EquipAbility(Outcome.BoostCreature, new PayLifeCost(3)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class NightscapeFamiliar extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Blue spells and red spells you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
|
||||
// {1}{B}: Regenerate Nightscape Familiar.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}")));
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class NightshadePeddler extends CardImpl {
|
|||
this.addAbility(new SoulbondAbility());
|
||||
|
||||
// As long as Nightshade Peddler is paired with another creature, both creatures have deathtouch.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityPairedEffect(DeathtouchAbility.getInstance(), ruleText)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityPairedEffect(DeathtouchAbility.getInstance(), ruleText)));
|
||||
}
|
||||
|
||||
private NightshadePeddler(final NightshadePeddler card) {
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public final class NightveilSpecter extends CardImpl {
|
|||
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new NightveilSpecterExileEffect(), false, true));
|
||||
|
||||
// You may play cards exiled with Nightveil Specter.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NightveilSpecterEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NightveilSpecterEffect()));
|
||||
}
|
||||
|
||||
private NightveilSpecter(final NightveilSpecter card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class NimLasher extends CardImpl {
|
|||
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private NimLasher(final NimLasher card) {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class NimShambler extends CardImpl {
|
|||
|
||||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(1);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
|
||||
new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class NimShrieker extends CardImpl {
|
|||
this.power = new MageInt(0);
|
||||
this.toughness = new MageInt(1);
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private NimShrieker(final NimShrieker card) {
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class NimbusNaiad extends CardImpl {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
// Enchanted creature gets +2/+2 and has flying.
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2,2));
|
||||
Ability ability = new SimpleStaticAbility(new BoostEnchantedEffect(2,2));
|
||||
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
|
||||
effect.setText("and has flying");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class NimbusWings extends CardImpl {
|
|||
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
|
||||
this.addAbility(new EnchantAbility(auraTarget));
|
||||
// Enchanted creature gets +1/+2 and has flying.
|
||||
SimpleStaticAbility ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 2, Duration.WhileOnBattlefield));
|
||||
SimpleStaticAbility ability = new SimpleStaticAbility(new BoostEnchantedEffect(1, 2, Duration.WhileOnBattlefield));
|
||||
ability.addEffect(new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA).setText("and has flying"));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class NissasChosen extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// If Nissa's Chosen would be put into a graveyard from the battlefield, put it on the bottom of its owner's library instead
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NissasChosenEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NissasChosenEffect()));
|
||||
}
|
||||
|
||||
private NissasChosen(final NissasChosen card) {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class NivMizzetVisionary extends CardImpl {
|
|||
|
||||
// You have no maximum hand size.
|
||||
Effect effect = new MaximumHandSizeControllerEffect(Integer.MAX_VALUE, Duration.WhileOnBattlefield, MaximumHandSizeControllerEffect.HandSizeModification.SET);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
|
||||
// Whenever a source you control deals noncombat damage to an opponent, you draw that many cards.
|
||||
this.addAbility(new NivMizzetVisionaryAbility());
|
||||
|
|
@ -89,4 +89,4 @@ class NivMizzetVisionaryAbility extends TriggeredAbilityImpl {
|
|||
public String getRule() {
|
||||
return "Whenever a source you control deals noncombat damage to an opponent, you draw that many cards.";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,14 +36,14 @@ public final class NobleQuarry extends CardImpl {
|
|||
// All creatures able to block Noble Quarry or enchanted creature do so.
|
||||
Effect effect = new MustBeBlockedByAllSourceEffect(Duration.WhileOnBattlefield);
|
||||
effect.setText("All creatures able to block Noble Quarry");
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
Ability ability = new SimpleStaticAbility(effect);
|
||||
effect = new MustBeBlockedByAllAttachedEffect(Duration.WhileOnBattlefield, AttachmentType.AURA);
|
||||
effect.setText("or enchanted creature do so");
|
||||
ability.addEffect(effect);
|
||||
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)));
|
||||
}
|
||||
|
||||
private NobleQuarry(final NobleQuarry card) {
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ public final class NogiDracoZealot extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Dragon spells you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter2, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter2, 1)));
|
||||
|
||||
// Whenever Nogi, Draco-Zealot attacks, if you control three or more Dragons, until end
|
||||
// of turn, Nogi becomes a Dragon with base power and toughness 5/5 and gains flying.
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ public final class NorwoodRiders extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Norwood Riders can't be blocked by more than one creature.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByMoreThanOneSourceEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new CantBeBlockedByMoreThanOneSourceEffect()));
|
||||
}
|
||||
|
||||
private NorwoodRiders(final NorwoodRiders card) {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class NotionThief extends CardImpl {
|
|||
// Flash
|
||||
this.addAbility(FlashAbility.getInstance());
|
||||
// If an opponent would draw a card except the first one they draw in each of their draw steps, instead that player skips that draw and you draw a card.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NotionThiefReplacementEffect()), new CardsDrawnDuringDrawStepWatcher());
|
||||
this.addAbility(new SimpleStaticAbility(new NotionThiefReplacementEffect()), new CardsDrawnDuringDrawStepWatcher());
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public final class NoviceKnight extends CardImpl {
|
|||
new CanAttackAsThoughItDidntHaveDefenderSourceEffect(Duration.WhileOnBattlefield),
|
||||
EnchantedOrEquippedSourceCondition.instance);
|
||||
effect.setText("As long as {this} is enchanted or equipped, it can attack as though it didn't have defender");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private NoviceKnight(final NoviceKnight card) {
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class NoxiousField extends CardImpl {
|
|||
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEverythingEffect(1), new TapSourceCost());
|
||||
Effect effect = new GainAbilityAttachedEffect(ability, AttachmentType.AURA);
|
||||
effect.setText("Enchanted land has \"{T}: This land deals 1 damage to each creature and each player.\"");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private NoxiousField(final NoxiousField card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class NullChamber extends CardImpl {
|
|||
// As Null Chamber enters the battlefield, you and an opponent each name a card other than a basic land card.
|
||||
// The named cards can't be played.
|
||||
this.addAbility(new AsEntersBattlefieldAbility(new NullChamberChooseEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NullChamberReplacementEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NullChamberReplacementEffect()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public final class NullProfusion extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{4}{B}{B}");
|
||||
|
||||
// Skip your draw step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipDrawStepEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new SkipDrawStepEffect()));
|
||||
|
||||
// Whenever you play a card, draw a card.
|
||||
this.addAbility(new PlayCardTriggeredAbility(TargetController.YOU, Zone.BATTLEFIELD,
|
||||
|
|
@ -51,4 +51,4 @@ public final class NullProfusion extends CardImpl {
|
|||
public NullProfusion copy() {
|
||||
return new NullProfusion(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public final class NullRod extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
|
||||
|
||||
// Activated abilities of artifacts can't be activated.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new NullRodCantActivateEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new NullRodCantActivateEffect()));
|
||||
}
|
||||
|
||||
private NullRod(final NullRod card) {
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class NumbingDose extends CardImpl {
|
|||
this.addAbility(new EnchantAbility(auraTarget));
|
||||
|
||||
// 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")));
|
||||
|
||||
// At the beginning of the upkeep of enchanted permanent's controller, that player loses 1 life.
|
||||
this.addAbility(new NumbingDoseTriggeredAbility());
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class NyleasEmissary extends CardImpl {
|
|||
// Trample
|
||||
this.addAbility(TrampleAbility.getInstance());
|
||||
// Enchanted creature gets +3/+3 and has trample.
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(3,3, Duration.WhileOnBattlefield));
|
||||
Ability ability = new SimpleStaticAbility(new BoostEnchantedEffect(3,3, Duration.WhileOnBattlefield));
|
||||
ability.addEffect(new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA, Duration.WhileOnBattlefield,"and has trample"));
|
||||
this.addAbility(ability);
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public final class NyxInfusion extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature gets +2/+2 as long as it's an enchantment. Otherwise, it gets -2/-2.
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
ability = new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostEnchantedEffect(2,2,Duration.WhileOnBattlefield),
|
||||
new BoostEnchantedEffect(-2,-2,Duration.WhileOnBattlefield),
|
||||
new AttachedToMatchesFilterCondition(filter),
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class Nyxathid extends CardImpl {
|
|||
|
||||
// Nyxathid gets -1/-1 for each card in the chosen player's hand.
|
||||
DynamicValue chosenPlayerHand = new SignInversionDynamicValue(new CardsInChosenPlayerHandCount());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(chosenPlayerHand, chosenPlayerHand, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(chosenPlayerHand, chosenPlayerHand, Duration.WhileOnBattlefield)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class NyxbornEidolon extends CardImpl {
|
|||
// Bestow {4}{B}
|
||||
this.addAbility(new BestowAbility(this, "{4}{B}"));
|
||||
// Enchanted creature gets +2/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 1, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(2, 1, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private NyxbornEidolon(final NyxbornEidolon card) {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class NyxbornRollicker extends CardImpl {
|
|||
// Bestow {1}{R}
|
||||
this.addAbility(new BestowAbility(this, "{1}{R}"));
|
||||
// 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 )));
|
||||
}
|
||||
|
||||
private NyxbornRollicker(final NyxbornRollicker card) {
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class NyxbornShieldmate extends CardImpl {
|
|||
// Bestow {2}{W}
|
||||
this.addAbility(new BestowAbility(this, "{2}{W}"));
|
||||
// Enchanted creature gets +1/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1,2, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(1,2, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private NyxbornShieldmate(final NyxbornShieldmate card) {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class NyxbornTriton extends CardImpl {
|
|||
// Bestow {4}{U}
|
||||
this.addAbility(new BestowAbility(this, "{4}{U}"));
|
||||
// Enchanted creature gets +2/+3.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2,3, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(2,3, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private NyxbornTriton(final NyxbornTriton card) {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class NyxbornWolf extends CardImpl {
|
|||
// Bestow {4}{G}
|
||||
this.addAbility(new BestowAbility(this, "{4}{G}"));
|
||||
// Enchanted creature gets +3/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(3,1, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(3,1, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private NyxbornWolf(final NyxbornWolf card) {
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public final class ONaginata extends CardImpl {
|
|||
// Equipped creature gets +3/+0 and has trample.
|
||||
Effect effect = new BoostEquippedEffect(3, 0);
|
||||
effect.setText("Equipped creature gets +3/+0");
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
Ability ability = new SimpleStaticAbility(effect);
|
||||
effect = new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.EQUIPMENT);
|
||||
effect.setText("and has trample");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class OakStreetInnkeeper extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// As long as it's not your turn, tapped creatures you control have hexproof.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.WhileOnBattlefield, filter),
|
||||
NotMyTurnCondition.instance,
|
||||
"During turns other than yours, tapped creatures you control have hexproof"))
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class Oakenform extends CardImpl {
|
|||
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
|
||||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OakenformEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OakenformEffect()));
|
||||
}
|
||||
|
||||
private Oakenform(final Oakenform card) {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class OathOfAjani extends CardImpl {
|
|||
this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersAllEffect(CounterType.P1P1.createInstance(), StaticFilters.FILTER_CONTROLLED_CREATURE)));
|
||||
|
||||
// Planeswalker spells you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(new FilterPlaneswalkerCard("Planeswalker spells"), 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(new FilterPlaneswalkerCard("Planeswalker spells"), 1)));
|
||||
}
|
||||
|
||||
private OathOfAjani(final OathOfAjani card) {
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class OathOfNissa extends CardImpl {
|
|||
3, 1, filter, PutCards.HAND, PutCards.BOTTOM_ANY)));
|
||||
|
||||
// You may spend mana as though it were mana of any color to cast planeswalker spells.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OathOfNissaSpendAnyManaEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OathOfNissaSpendAnyManaEffect()));
|
||||
}
|
||||
|
||||
private OathOfNissa(final OathOfNissa card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class OathOfTeferi extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// You may activate the loyalty abilities of planeswalkers you control twice each turn rather than only once.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OathOfTeferiLoyaltyEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OathOfTeferiLoyaltyEffect()));
|
||||
}
|
||||
|
||||
private OathOfTeferi(final OathOfTeferi card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class OathkeeperTakenosDaisho extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature gets +3/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(3, 1, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(3, 1, Duration.WhileOnBattlefield)));
|
||||
|
||||
// Whenever equipped creature dies, return that card to the battlefield under your control if it's a Samurai card.
|
||||
this.addAbility(new DiesAttachedTriggeredAbility(new ConditionalOneShotEffect(
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class OathswornGiant extends CardImpl {
|
|||
|
||||
this.addAbility(VigilanceAbility.getInstance());
|
||||
// Other creatures you control get +0/+2 and have vigilance.
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(0, 2, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, true));
|
||||
Ability ability = new SimpleStaticAbility(new BoostControlledEffect(0, 2, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, true));
|
||||
ability.addEffect(new GainAbilityControlledEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, true).setText("and have vigilance"));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class ObeliskOfUrd extends CardImpl {
|
|||
this.addAbility(new AsEntersBattlefieldAbility(new ChooseCreatureTypeEffect(Outcome.BoostCreature)));
|
||||
|
||||
// Creatures you control of the chosen type get +2/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ObeliskOfUrdBoostEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new ObeliskOfUrdBoostEffect()));
|
||||
}
|
||||
|
||||
private ObeliskOfUrd(final ObeliskOfUrd card) {
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class OblivionCrown extends CardImpl {
|
|||
this.addAbility(new EnchantAbility(auraTarget));
|
||||
|
||||
// Enchanted creature has "Discard a card: This creature gets +1/+1 until end of turn."
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn),new DiscardCardCost()), AttachmentType.AURA)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn),new DiscardCardCost()), AttachmentType.AURA)));
|
||||
}
|
||||
|
||||
private OblivionCrown(final OblivionCrown card) {
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ public final class ObscuringAether extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{G}");
|
||||
|
||||
// Face-down creature spells you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new FaceDownSpellsCostReductionControllerEffect(1)));
|
||||
this.addAbility(new SimpleStaticAbility(new FaceDownSpellsCostReductionControllerEffect(1)));
|
||||
|
||||
// {1}{G}: Turn Obscuring Aether face down.
|
||||
Effect effect = new BecomesFaceDownCreatureEffect(Duration.Custom, BecomesFaceDownCreatureEffect.FaceDownType.MANUAL);
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class ObservantAlseid extends CardImpl {
|
|||
// Enchanted creature gets +2/+2 and has vigilance.
|
||||
Effect effect = new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield);
|
||||
effect.setText("Enchanted creature gets +2/+2");
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
Ability ability = new SimpleStaticAbility(effect);
|
||||
effect = new GainAbilityAttachedEffect(VigilanceAbility.getInstance(), AttachmentType.AURA);
|
||||
effect.setText("and has vigilance");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class ObsidianBattleAxe extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature gets +2/+1 and has haste.
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 1));
|
||||
Ability ability = new SimpleStaticAbility(new BoostEquippedEffect(2, 1));
|
||||
ability.addEffect(new GainAbilityAttachedEffect(HasteAbility.getInstance(), AttachmentType.EQUIPMENT).setText("and has haste"));
|
||||
this.addAbility(ability);
|
||||
// Whenever a Warrior creature enters the battlefield, you may attach Obsidian Battle-Axe to it.
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ class ObsidianFireheartOneShotEffect extends OneShotEffect {
|
|||
Duration.Custom, "");
|
||||
|
||||
// add a new independent ability that is not reliant on the source ability
|
||||
SimpleStaticAbility gainAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
SimpleStaticAbility gainAbility = new SimpleStaticAbility(effect);
|
||||
|
||||
// set sourcecard of the independent ability to the targeted permanent of the source ability
|
||||
gainAbility.setSourceId(targetLand.getId());
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class ObstinateFamiliar extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// If you would draw a card, you may skip that draw instead.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ObstinateFamiliarReplacementEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new ObstinateFamiliarReplacementEffect()));
|
||||
}
|
||||
|
||||
private ObstinateFamiliar(final ObstinateFamiliar card) {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class Occupation extends CardImpl {
|
|||
|
||||
|
||||
// Creatures your opponents control enter the battlefield tapped.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OccupationTapEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OccupationTapEffect()));
|
||||
|
||||
// {W}{B}: Target creature can't attack or block this turn, and its activated abilities can't be activated until end of turn.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public final class OcularHalo extends CardImpl {
|
|||
|
||||
// Enchanted creature has "{tap}: Draw a card."
|
||||
Ability gainAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new TapSourceCost());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(gainAbility, AttachmentType.AURA)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(gainAbility, AttachmentType.AURA)));
|
||||
|
||||
// {W}: Enchanted creature gains vigilance until end of turn.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(VigilanceAbility.getInstance(),
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class OgreJailbreaker extends CardImpl {
|
|||
new CanAttackAsThoughItDidntHaveDefenderSourceEffect(Duration.WhileOnBattlefield),
|
||||
new PermanentsOnTheBattlefieldCondition(filter));
|
||||
effect.setText("{this} can attack as though it didn't have defender as long as you control a Gate");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public final class OgreSlumlord extends CardImpl {
|
|||
this.addAbility(new DiesCreatureTriggeredAbility(new CreateTokenEffect(new RatToken()), true, filter));
|
||||
|
||||
// Rats you control have deathtouch.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(DeathtouchAbility.getInstance(), Duration.WhileOnBattlefield, filter2)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAllEffect(DeathtouchAbility.getInstance(), Duration.WhileOnBattlefield, filter2)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public final class OgresCleaver extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature gets +5/+0.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(5, 0)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(5, 0)));
|
||||
|
||||
// Equip {5}
|
||||
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(5), new TargetControlledCreaturePermanent(), false));
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class OhabiCaleria extends CardImpl {
|
|||
this.addAbility(ReachAbility.getInstance());
|
||||
|
||||
// Untap all Archers you control during each other player's untap step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new UntapAllDuringEachOtherPlayersUntapStepEffect(filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new UntapAllDuringEachOtherPlayersUntapStepEffect(filter)));
|
||||
|
||||
// Whenever an Archer you control deals damage to a creature, you may pay {2}. If you do, draw a card.
|
||||
this.addAbility(new DealsDamageToACreatureAllTriggeredAbility(new DoIfCostPaid(
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class OketraTheTrue extends CardImpl {
|
|||
this.addAbility(IndestructibleAbility.getInstance());
|
||||
|
||||
// Oketra the True can't attack or block unless you control three or more creatures.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OketraTheTrueRestrictionEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OketraTheTrueRestrictionEffect()));
|
||||
|
||||
// {3}{W}: Create a 1/1 white Warrior creature token with vigilance.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new WarriorVigilantToken()), new ManaCostsImpl<>("{3}{W}")));
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public final class OketrasMonument extends CardImpl {
|
|||
this.supertype.add(SuperType.LEGENDARY);
|
||||
|
||||
// White creature spells you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
|
||||
// Whenever you cast a creature spell, create a 1/1 white Warrior creature token with vigilance.
|
||||
this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new WarriorVigilantToken()), filter2, false));
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class OkinaNightwatch extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// As long as you have more cards in hand than each opponent, Okina Nightwatch gets +3/+3.
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
Ability ability = new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostSourceEffect(3,3, Duration.WhileOnBattlefield),
|
||||
MoreCardsInHandThanOpponentsCondition.instance,
|
||||
"As long as you have more cards in hand than each opponent, Okina Nightwatch gets +3/+3"));
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@ public final class Okk extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Okk can't attack unless a creature with greater power also attacks.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OkkAttackEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OkkAttackEffect()));
|
||||
|
||||
// Okk can't block unless a creature with greater power also blocks.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OkkBlockEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OkkBlockEffect()));
|
||||
}
|
||||
|
||||
private Okk(final Okk card) {
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class OmenMachine extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{6}");
|
||||
|
||||
// Players can't draw cards.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OmenMachineEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OmenMachineEffect()));
|
||||
|
||||
// At the beginning of each player's draw step, that player exiles the top card of their library. If it's a land card, the player puts it onto the battlefield. Otherwise, the player casts it without paying its mana cost if able.
|
||||
this.addAbility(new BeginningOfDrawTriggeredAbility(TargetController.EACH_PLAYER, new OmenMachineEffect2(), false));
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ public final class Omniscience extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{7}{U}{U}{U}");
|
||||
|
||||
// You may cast nonland cards from your hand without paying their mana costs.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CastFromHandWithoutPayingManaCostEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new CastFromHandWithoutPayingManaCostEffect()));
|
||||
}
|
||||
|
||||
private Omniscience(final Omniscience card) {
|
||||
|
|
@ -31,4 +31,3 @@ public final class Omniscience extends CardImpl {
|
|||
return new Omniscience(this);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public final class OnSerrasWings extends CardImpl {
|
|||
// Enchanted creature is legendary, gets +1/+1, and has flying, vigilance, and lifelink.
|
||||
Effect effect = new AddCardSuperTypeAttachedEffect(SuperType.LEGENDARY, Duration.WhileOnBattlefield, AttachmentType.AURA);
|
||||
effect.setText("Enchanted creature is legendary");
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
ability = new SimpleStaticAbility(effect);
|
||||
effect = new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield);
|
||||
effect.setText(", gets +1/+1");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class OneEyedScarecrow extends CardImpl {
|
|||
|
||||
this.addAbility(DefenderAbility.getInstance());
|
||||
// Creatures with flying your opponents control get -1/-0.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(-1, 0, Duration.WhileOnBattlefield, filter, false)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(-1, 0, Duration.WhileOnBattlefield, filter, false)));
|
||||
}
|
||||
|
||||
private OneEyedScarecrow(final OneEyedScarecrow card) {
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class OneThousandLashes extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature 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()));
|
||||
|
||||
// At the beginning of the upkeep of enchanted creature's controller, that player loses 1 life.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(TargetController.CONTROLLER_ATTACHED_TO, new LoseLifeTargetEffect(1), false));
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class OneWithTheWind extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature gets +2/+2 and has flying.
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
|
||||
ability = new SimpleStaticAbility(new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
|
||||
ability.addEffect(new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA)
|
||||
.setText("and has flying"));
|
||||
this.addAbility(ability);
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ public final class Opalescence extends CardImpl {
|
|||
|
||||
// Each other non-Aura enchantment is a creature with power and
|
||||
// toughness each equal to its converted mana cost. It's still an enchantment.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OpalescenceEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OpalescenceEffect()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class OpalineBracers extends CardImpl {
|
|||
// Sunburst
|
||||
this.addAbility(new SunburstAbility(this));
|
||||
// Equipped creature gets +X/+X, where X is the number of charge counters on Opaline Bracers.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CountersSourceCount(CounterType.CHARGE), new CountersSourceCount(CounterType.CHARGE))));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(new CountersSourceCount(CounterType.CHARGE), new CountersSourceCount(CounterType.CHARGE))));
|
||||
// Equip {2}
|
||||
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public final class OpenSeason extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Creatures your opponent control with bounty counters on them can't activate abilities
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OpenSeasonRestrictionEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OpenSeasonRestrictionEffect()));
|
||||
|
||||
// Bounty - Whenever a creature an opponent controls with a bounty counter on it dies, that creature's controller loses 2 life. Each other player gains 2 life.
|
||||
this.addAbility(new BountyAbility(new OpenSeasonEffect(), false, true));
|
||||
|
|
|
|||
|
|
@ -36,10 +36,10 @@ public final class OppressiveRays extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature can't attack or block unless its controller pays {3}.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackBlockUnlessPaysAttachedEffect(new ManaCostsImpl<>("{3}"), AttachmentType.AURA)));
|
||||
this.addAbility(new SimpleStaticAbility(new CantAttackBlockUnlessPaysAttachedEffect(new ManaCostsImpl<>("{3}"), AttachmentType.AURA)));
|
||||
|
||||
// Activated abilities of enchanted creature cost {3} more to activate.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OppressiveRaysCostModificationEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OppressiveRaysCostModificationEffect()));
|
||||
}
|
||||
|
||||
private OppressiveRays(final OppressiveRays card) {
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class OraclesInsight extends CardImpl {
|
|||
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1, false), new TapSourceCost());
|
||||
Effect effect = new DrawCardSourceControllerEffect(1).concatBy(", then");
|
||||
ability.addEffect(effect);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability, AttachmentType.AURA, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(ability, AttachmentType.AURA, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private OraclesInsight(final OraclesInsight card) {
|
||||
|
|
|
|||
|
|
@ -26,10 +26,10 @@ public final class OrbsOfWarding extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{5}");
|
||||
|
||||
// You have hexproof.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControllerEffect(HexproofAbility.getInstance(), Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityControllerEffect(HexproofAbility.getInstance(), Duration.WhileOnBattlefield)));
|
||||
|
||||
// If a creature would deal damage to you, prevent 1 of that damage.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OrbsOfWardingEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OrbsOfWardingEffect()));
|
||||
}
|
||||
|
||||
private OrbsOfWarding(final OrbsOfWarding card) {
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ public final class OrcishOriflamme extends CardImpl {
|
|||
|
||||
// Attacking creatures you control get +1/+0.
|
||||
BoostControlledEffect boostEffect = new BoostControlledEffect(1, 0, Duration.WhileOnBattlefield, StaticFilters.FILTER_ATTACKING_CREATURES, false);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, boostEffect));
|
||||
this.addAbility(new SimpleStaticAbility(boostEffect));
|
||||
}
|
||||
|
||||
private OrcishOriflamme(final OrcishOriflamme card) {
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class OrcishVeteran extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Orcish Veteran can't block white creatures with power 2 or greater.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBlockCreaturesSourceEffect(filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new CantBlockCreaturesSourceEffect(filter)));
|
||||
|
||||
// {R}: Orcish Veteran gains first strike until end of turn.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class OrderOfTheStars extends CardImpl {
|
|||
this.addAbility(new AsEntersBattlefieldAbility(new ChooseColorEffect(Outcome.Benefit)));
|
||||
|
||||
// Order of the Stars has protection from the chosen color.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ProtectionChosenColorSourceEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new ProtectionChosenColorSourceEffect()));
|
||||
}
|
||||
|
||||
private OrderOfTheStars(final OrderOfTheStars card) {
|
||||
|
|
|
|||
|
|
@ -43,11 +43,11 @@ public final class Orgg extends CardImpl {
|
|||
// Orgg can't attack if defending player controls an untapped creature with power 3 or greater.
|
||||
Effect effect = new CantAttackIfDefenderControlsPermanent(filter);
|
||||
effect.setText("{this} can't attack if defending player controls an untapped creature with power 3 or greater.");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
// Orgg can't block creatures with power 3 or greater.
|
||||
Effect effectBlock = new CantBlockCreaturesSourceEffect(filter2);
|
||||
effectBlock.setText("{this} can't block creatures with power 3 or greater.");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effectBlock));
|
||||
this.addAbility(new SimpleStaticAbility(effectBlock));
|
||||
}
|
||||
|
||||
private Orgg(final Orgg card) {
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class OtepecHuntmaster extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Dinosaur spells you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
|
||||
// {T}: Target Dinosaur gains haste until end of turn.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new TapSourceCost());
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class OutlandColossus extends CardImpl {
|
|||
this.addAbility(new RenownAbility(6));
|
||||
|
||||
// Outland Colossus can't be blocked by more than one creature.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByMoreThanOneSourceEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new CantBeBlockedByMoreThanOneSourceEffect()));
|
||||
}
|
||||
|
||||
private OutlandColossus(final OutlandColossus card) {
|
||||
|
|
|
|||
|
|
@ -39,10 +39,10 @@ public final class OverwhelmingSplendor extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Creatures enchanted player controls lose all abilities and have base power and toughness 1/1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OverwhelmingSplendorLoseAbilitiesEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OverwhelmingSplendorLoseAbilitiesEffect()));
|
||||
|
||||
// Enchanted player can't activate abilities that aren't mana abilities or loyalty abilities.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new OverwhelmingSplendorCantActivateEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new OverwhelmingSplendorCantActivateEffect()));
|
||||
}
|
||||
|
||||
private OverwhelmingSplendor(final OverwhelmingSplendor card) {
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class Pacifism 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)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue