mirror of
https://github.com/magefree/mage.git
synced 2026-01-22 19:29:59 -08:00
* Arachnuns Web - Fixed condition handling. Some renaming.
This commit is contained in:
parent
105ef6e571
commit
1b2636d0cd
26 changed files with 95 additions and 113 deletions
|
|
@ -28,21 +28,23 @@
|
|||
package mage.cards.a;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Outcome;
|
||||
import mage.constants.Zone;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.OnEventTriggeredAbility;
|
||||
import mage.abilities.common.BeginningOfEndStepTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroySourceEffect;
|
||||
import mage.abilities.effects.common.combat.CantBlockAttackActivateAttachedEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent.EventType;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Outcome;
|
||||
import mage.constants.TargetController;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.Filter;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.mageobject.PowerPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
|
@ -53,10 +55,9 @@ import mage.target.common.TargetCreaturePermanent;
|
|||
public class ArachnusWeb extends CardImpl {
|
||||
|
||||
public ArachnusWeb(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{G}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{G}");
|
||||
this.subtype.add("Aura");
|
||||
|
||||
|
||||
// Enchant creature
|
||||
TargetPermanent auraTarget = new TargetCreaturePermanent();
|
||||
this.getSpellAbility().addTarget(auraTarget);
|
||||
|
|
@ -67,7 +68,11 @@ public class ArachnusWeb extends CardImpl {
|
|||
// Enchanted creature can't attack or block, and its activated abilities can't be activated.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBlockAttackActivateAttachedEffect()));
|
||||
// At the beginning of the end step, if enchanted creature's power is 4 or greater, destroy Arachnus Web.
|
||||
this.addAbility(new OnEventTriggeredAbility(EventType.END_TURN_STEP_PRE, "beginning of the end step", true, new ArachnusWebEffect2()));
|
||||
FilterPermanent filter = new FilterPermanent("if enchanted creature's power is 4 or greater");
|
||||
filter.add(new PowerPredicate(Filter.ComparisonType.GreaterThan, 3));
|
||||
this.addAbility(new BeginningOfEndStepTriggeredAbility(Zone.BATTLEFIELD,
|
||||
new DestroySourceEffect(), TargetController.ANY,
|
||||
new AttachedToMatchesFilterCondition(filter), false));
|
||||
}
|
||||
|
||||
public ArachnusWeb(final ArachnusWeb card) {
|
||||
|
|
@ -79,33 +84,3 @@ public class ArachnusWeb extends CardImpl {
|
|||
return new ArachnusWeb(this);
|
||||
}
|
||||
}
|
||||
|
||||
class ArachnusWebEffect2 extends OneShotEffect {
|
||||
|
||||
public ArachnusWebEffect2() {
|
||||
super(Outcome.Benefit);
|
||||
staticText = "if enchanted creature's power is 4 or greater, destroy {this}";
|
||||
}
|
||||
|
||||
public ArachnusWebEffect2(final ArachnusWebEffect2 effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ArachnusWebEffect2 copy() {
|
||||
return new ArachnusWebEffect2(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
Permanent enchantment = game.getPermanent(source.getSourceId());
|
||||
if (enchantment != null && enchantment.getAttachedTo() != null) {
|
||||
Permanent permanent = game.getPermanent(enchantment.getAttachedTo());
|
||||
if (permanent != null && permanent.getPower().getValue() >= 4) {
|
||||
enchantment.destroy(source.getSourceId(), game, false);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.Condition;
|
||||
import mage.abilities.condition.InvertCondition;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.decorator.ConditionalReplacementEffect;
|
||||
import mage.abilities.effects.ReplacementEffect;
|
||||
|
|
@ -76,7 +76,7 @@ public class ArmamentOfNyx extends CardImpl {
|
|||
this.getSpellAbility().addEffect(new AttachEffect(Outcome.Detriment));
|
||||
Ability ability = new EnchantAbility(auraTarget.getTargetName());
|
||||
this.addAbility(ability);
|
||||
Condition condition = new EquippedMatchesFilterCondition(filter);
|
||||
Condition condition = new AttachedToMatchesFilterCondition(filter);
|
||||
// Enchanted creature has double strike as long as it's an enchantment. Otherwise, prevent all damage that would be dealt by enchanted creature
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
new GainAbilityAttachedEffect(DoubleStrikeAbility.getInstance(), AttachmentType.AURA, Duration.WhileOnBattlefield),
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.BecomesTappedAttachedTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -59,7 +59,7 @@ public class Blight extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// When enchanted land becomes tapped, destroy it.
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedEffect("it"), "enchanted land"));
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), "enchanted land"));
|
||||
}
|
||||
|
||||
public Blight(final Blight card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.BecomesTappedAttachedTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -69,7 +69,7 @@ public class BrinkOfDisaster extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// When enchanted permanent becomes tapped, destroy it.
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedEffect("it"), "enchanted permanent"));
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), "enchanted permanent"));
|
||||
}
|
||||
|
||||
public BrinkOfDisaster(final BrinkOfDisaster card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -62,7 +62,7 @@ public class FatalMutation extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget.getTargetName());
|
||||
this.addAbility(ability);
|
||||
// When enchanted creature is turned face up, destroy it. It can't be regenerated.
|
||||
this.addAbility(new FatalMutationAbility(new DestroyAttachedEffect("it", true)));
|
||||
this.addAbility(new FatalMutationAbility(new DestroyAttachedToEffect("it", true)));
|
||||
}
|
||||
|
||||
public FatalMutation(final FatalMutation card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.DealtDamageAttachedTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.effects.common.DontUntapInControllersUntapStepEnchantedEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -62,7 +62,7 @@ public class FrozenSolid extends CardImpl {
|
|||
// Enchanted creature doesn't untap during its controller's untap step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect()));
|
||||
// When enchanted creature is dealt damage, destroy it.
|
||||
this.addAbility(new DealtDamageAttachedTriggeredAbility(new DestroyAttachedEffect("it"), false));
|
||||
this.addAbility(new DealtDamageAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), false));
|
||||
}
|
||||
|
||||
public FrozenSolid(final FrozenSolid card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DealtDamageAttachedTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -58,7 +58,7 @@ public class MireBlight extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget.getTargetName());
|
||||
this.addAbility(ability);
|
||||
// When enchanted creature is dealt damage, destroy it.
|
||||
this.addAbility(new DealtDamageAttachedTriggeredAbility(new DestroyAttachedEffect("it"), false));
|
||||
this.addAbility(new DealtDamageAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), false));
|
||||
}
|
||||
|
||||
public MireBlight(final MireBlight card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DealtDamageAttachedTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -57,7 +57,7 @@ public class MortalWound extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget.getTargetName());
|
||||
this.addAbility(ability);
|
||||
// When enchanted creature is dealt damage, destroy it.
|
||||
this.addAbility(new DealtDamageAttachedTriggeredAbility(new DestroyAttachedEffect("it"), false));
|
||||
this.addAbility(new DealtDamageAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), false));
|
||||
}
|
||||
|
||||
public MortalWound(final MortalWound card) {
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ package mage.cards.n;
|
|||
import java.util.UUID;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostEnchantedEffect;
|
||||
|
|
@ -75,7 +75,7 @@ public class NyxInfusion extends CardImpl {
|
|||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
new BoostEnchantedEffect(2,2,Duration.WhileOnBattlefield),
|
||||
new BoostEnchantedEffect(-2,-2,Duration.WhileOnBattlefield),
|
||||
new EquippedMatchesFilterCondition(filter),
|
||||
new AttachedToMatchesFilterCondition(filter),
|
||||
"Enchanted creature gets +2/+2 as long as it's an enchantment. Otherwise, it gets -2/-2"));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.LeavesBattlefieldTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostEnchantedEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.abilities.keyword.FadingAbility;
|
||||
|
|
@ -66,7 +66,7 @@ public class ParallaxDementia extends CardImpl {
|
|||
// Enchanted creature gets +3/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(3, 2, Duration.WhileOnBattlefield)));
|
||||
// When Parallax Dementia leaves the battlefield, destroy enchanted creature. That creature can't be regenerated.
|
||||
this.addAbility(new LeavesBattlefieldTriggeredAbility(new DestroyAttachedEffect("enchanted creature", true), false));
|
||||
this.addAbility(new LeavesBattlefieldTriggeredAbility(new DestroyAttachedToEffect("enchanted creature", true), false));
|
||||
}
|
||||
|
||||
public ParallaxDementia(final ParallaxDementia card) {
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ import mage.abilities.common.BecomesTappedAttachedTriggeredAbility;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.effects.common.LoseLifeControllerAttachedEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -63,7 +63,7 @@ public class PoolingVenom extends CardImpl {
|
|||
// Whenever enchanted land becomes tapped, its controller loses 2 life.
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new LoseLifeControllerAttachedEffect(2), "enchanted land"));
|
||||
// {3}{B}: Destroy enchanted land.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyAttachedEffect("enchanted land"), new ManaCostsImpl("{3}{B}")));
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyAttachedToEffect("enchanted land"), new ManaCostsImpl("{3}{B}")));
|
||||
}
|
||||
|
||||
public PoolingVenom(final PoolingVenom card) {
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.Mode;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.effects.common.GainLifeEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -63,7 +63,7 @@ public class QuietDisrepair extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// At the beginning of your upkeep, choose one - Destroy enchanted permanent; or you gain 2 life.
|
||||
ability = new BeginningOfUpkeepTriggeredAbility(new DestroyAttachedEffect("enchanted permanent"), TargetController.YOU, false);
|
||||
ability = new BeginningOfUpkeepTriggeredAbility(new DestroyAttachedToEffect("enchanted permanent"), TargetController.YOU, false);
|
||||
Mode mode = new Mode();
|
||||
mode.getEffects().add(new GainLifeEffect(2));
|
||||
ability.addMode(mode);
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ import mage.ObjectColor;
|
|||
import mage.abilities.TriggeredAbility;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
|
||||
|
|
@ -71,7 +71,7 @@ public class RingOfEvosIsle extends CardImpl {
|
|||
|
||||
// At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's blue.
|
||||
TriggeredAbility triggeredAbility = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new AddPlusOneCountersAttachedEffect(1), TargetController.YOU, false);
|
||||
ConditionalTriggeredAbility ability2 = new ConditionalTriggeredAbility(triggeredAbility, new EquippedMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's blue.");
|
||||
ConditionalTriggeredAbility ability2 = new ConditionalTriggeredAbility(triggeredAbility, new AttachedToMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's blue.");
|
||||
this.addAbility(ability2);
|
||||
|
||||
// Equip {1}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ import mage.ObjectColor;
|
|||
import mage.abilities.TriggeredAbility;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
|
||||
|
|
@ -67,7 +67,7 @@ public class RingOfKalonia extends CardImpl {
|
|||
|
||||
// At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's green.
|
||||
TriggeredAbility triggeredAbility = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new AddPlusOneCountersAttachedEffect(1), TargetController.YOU, false);
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new EquippedMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's green");
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new AttachedToMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's green");
|
||||
this.addAbility(ability);
|
||||
|
||||
// Equip {1}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ import mage.ObjectColor;
|
|||
import mage.abilities.TriggeredAbility;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
|
||||
|
|
@ -67,7 +67,7 @@ public class RingOfThune extends CardImpl {
|
|||
|
||||
// At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's white.
|
||||
TriggeredAbility triggeredAbility = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new AddPlusOneCountersAttachedEffect(1), TargetController.YOU, false);
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new EquippedMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's white.");
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new AttachedToMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's white.");
|
||||
this.addAbility(ability);
|
||||
|
||||
// Equip {1}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ import mage.ObjectColor;
|
|||
import mage.abilities.TriggeredAbility;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
|
||||
|
|
@ -67,7 +67,7 @@ public class RingOfValkas extends CardImpl {
|
|||
|
||||
// At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's red.
|
||||
TriggeredAbility triggeredAbility = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new AddPlusOneCountersAttachedEffect(1), TargetController.YOU, false);
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new EquippedMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's red");
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new AttachedToMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's red");
|
||||
this.addAbility(ability);
|
||||
|
||||
// Equip {1}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ import mage.ObjectColor;
|
|||
import mage.abilities.TriggeredAbility;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.RegenerateAttachedEffect;
|
||||
|
|
@ -66,7 +66,7 @@ public class RingOfXathrid extends CardImpl {
|
|||
|
||||
// At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's black.
|
||||
TriggeredAbility triggeredAbility = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new AddPlusOneCountersAttachedEffect(1), TargetController.YOU, false);
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new EquippedMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's black");
|
||||
ConditionalTriggeredAbility ability = new ConditionalTriggeredAbility(triggeredAbility, new AttachedToMatchesFilterCondition(filter), "At the beginning of your upkeep, put a +1/+1 counter on equipped creature if it's black");
|
||||
this.addAbility(ability);
|
||||
|
||||
// Equip {1}
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.ObjectColor;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostEnchantedEffect;
|
||||
|
|
@ -74,7 +74,7 @@ public class SerrasBoon extends CardImpl {
|
|||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
new BoostEnchantedEffect(1, 2, Duration.WhileOnBattlefield),
|
||||
new BoostEnchantedEffect(-2, -1, Duration.WhileOnBattlefield),
|
||||
new EquippedMatchesFilterCondition(filter),
|
||||
new AttachedToMatchesFilterCondition(filter),
|
||||
"Enchanted creature gets +1/+2 as long as it's white. Otherwise, it gets -2/-1"));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.BecomesTappedAttachedTriggeredAbility;
|
||||
import mage.abilities.common.PutIntoGraveFromBattlefieldSourceTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.effects.common.ReturnToHandSourceEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -66,7 +66,7 @@ public class SpreadingAlgae extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget.getTargetName());
|
||||
this.addAbility(ability);
|
||||
// When enchanted land becomes tapped, destroy it.
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedEffect("it"), "enchanted land"));
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), "enchanted land"));
|
||||
|
||||
// When Spreading Algae is put into a graveyard from the battlefield, return Spreading Algae to its owner's hand.
|
||||
this.addAbility(new PutIntoGraveFromBattlefieldSourceTriggeredAbility(new ReturnToHandSourceEffect()));
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ import mage.constants.CardType;
|
|||
import mage.constants.Zone;
|
||||
import mage.ObjectColor;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.EquippedMatchesFilterCondition;
|
||||
import mage.abilities.condition.common.AttachedToMatchesFilterCondition;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostEquippedEffect;
|
||||
|
|
@ -79,11 +79,11 @@ public class TenzaGodosMaul extends CardImpl {
|
|||
// As long as it's legendary, it gets an additional +2/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
new BoostEquippedEffect(2, 2),
|
||||
new EquippedMatchesFilterCondition(legendaryFilter), rule1)));
|
||||
new AttachedToMatchesFilterCondition(legendaryFilter), rule1)));
|
||||
// As long as it's red, it has trample.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.EQUIPMENT),
|
||||
new EquippedMatchesFilterCondition(redFilter), rule2)));
|
||||
new AttachedToMatchesFilterCondition(redFilter), rule2)));
|
||||
// Equip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.)
|
||||
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), new TargetControlledCreaturePermanent()));
|
||||
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.BecomesTappedAttachedTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -56,7 +56,7 @@ public class UncontrolledInfestation extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget.getTargetName());
|
||||
this.addAbility(ability);
|
||||
// When enchanted land becomes tapped, destroy it.
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedEffect("it"), "enchanted land"));
|
||||
this.addAbility(new BecomesTappedAttachedTriggeredAbility(new DestroyAttachedToEffect("it"), "enchanted land"));
|
||||
}
|
||||
|
||||
public UncontrolledInfestation(final UncontrolledInfestation card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DiesCreatureTriggeredAbility;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedEffect;
|
||||
import mage.abilities.effects.common.DestroyAttachedToEffect;
|
||||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -62,7 +62,7 @@ public class YokeOfTheDamned extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// When a creature dies, destroy enchanted creature.
|
||||
this.addAbility(new DiesCreatureTriggeredAbility(new DestroyAttachedEffect("enchanted creature"), false, filter));
|
||||
this.addAbility(new DiesCreatureTriggeredAbility(new DestroyAttachedToEffect("enchanted creature"), false, filter));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue