diff --git a/Mage.Sets/src/mage/sets/darksteel/AuriokGlaivemaster.java b/Mage.Sets/src/mage/sets/darksteel/AuriokGlaivemaster.java index 0ffacee69d4..96000c67e3e 100644 --- a/Mage.Sets/src/mage/sets/darksteel/AuriokGlaivemaster.java +++ b/Mage.Sets/src/mage/sets/darksteel/AuriokGlaivemaster.java @@ -30,7 +30,7 @@ package mage.sets.darksteel; import java.util.UUID; import mage.MageInt; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EquippedCondition; +import mage.abilities.condition.common.EquippedSourceCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; @@ -58,9 +58,9 @@ public class AuriokGlaivemaster extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); - ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), EquippedCondition.getInstance(), rule1); + ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), EquippedSourceCondition.getInstance(), rule1); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect1)); - ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new GainAbilitySourceEffect(FirstStrikeAbility.getInstance()), EquippedCondition.getInstance(), rule2); + ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new GainAbilitySourceEffect(FirstStrikeAbility.getInstance()), EquippedSourceCondition.getInstance(), rule2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect2)); } diff --git a/Mage.Sets/src/mage/sets/dissension/FlaringFlameKin.java b/Mage.Sets/src/mage/sets/dissension/FlaringFlameKin.java index 1cfe02e7dc6..758f4d792bc 100644 --- a/Mage.Sets/src/mage/sets/dissension/FlaringFlameKin.java +++ b/Mage.Sets/src/mage/sets/dissension/FlaringFlameKin.java @@ -32,7 +32,7 @@ import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect; @@ -60,7 +60,7 @@ public class FlaringFlameKin extends CardImpl { this.toughness = new MageInt(2); // As long as Flaring Flame-Kin is enchanted, it gets +2/+2, has trample, and has "{R}: Flaring Flame-Kin gets +1/+0 until end of turn." - EnchantedCondition enchanted = new EnchantedCondition(); + EnchantedSourceCondition enchanted = new EnchantedSourceCondition(); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield), enchanted, "As long as {this} is enchanted, it gets +2/+2")); diff --git a/Mage.Sets/src/mage/sets/dissension/FreewindEquenaut.java b/Mage.Sets/src/mage/sets/dissension/FreewindEquenaut.java index 2bf6f553e7b..c4774c37783 100644 --- a/Mage.Sets/src/mage/sets/dissension/FreewindEquenaut.java +++ b/Mage.Sets/src/mage/sets/dissension/FreewindEquenaut.java @@ -35,7 +35,7 @@ import mage.constants.Zone; import mage.MageInt; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.DamageTargetEffect; @@ -68,7 +68,7 @@ public class FreewindEquenaut extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilitySourceEffect(ability, Duration.WhileOnBattlefield), - new EnchantedCondition(), + new EnchantedSourceCondition(), "As long as {this} is enchanted, it has \"{T}: {this} deals 2 damage to target attacking or blocking creature\""))); } diff --git a/Mage.Sets/src/mage/sets/magic2012/ThranGolem.java b/Mage.Sets/src/mage/sets/magic2012/ThranGolem.java index b8e679ff356..4521ba79604 100644 --- a/Mage.Sets/src/mage/sets/magic2012/ThranGolem.java +++ b/Mage.Sets/src/mage/sets/magic2012/ThranGolem.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; @@ -59,7 +59,7 @@ public class ThranGolem extends CardImpl { this.toughness = new MageInt(3); // As long as Thran Golem is enchanted, it gets +2/+2 and has flying, first strike, and trample. - EnchantedCondition enchanted = new EnchantedCondition(); + EnchantedSourceCondition enchanted = new EnchantedSourceCondition(); Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield), enchanted, "As long as {this} is enchanted, it gets +2/+2")); diff --git a/Mage.Sets/src/mage/sets/mirrodin/AuriokSteelshaper.java b/Mage.Sets/src/mage/sets/mirrodin/AuriokSteelshaper.java index fdd7ffdd470..ae5b61646a3 100644 --- a/Mage.Sets/src/mage/sets/mirrodin/AuriokSteelshaper.java +++ b/Mage.Sets/src/mage/sets/mirrodin/AuriokSteelshaper.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EquippedCondition; +import mage.abilities.condition.common.EquippedSourceCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostControlledEffect; import mage.abilities.effects.common.cost.CostModificationEffectImpl; @@ -73,7 +73,7 @@ public class AuriokSteelshaper extends CardImpl { // As long as Auriok Steelshaper is equipped, each creature you control that's a Soldier or a Knight gets +1/+1. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, soldiersOrKnights, false), - EquippedCondition.getInstance(), + EquippedSourceCondition.getInstance(), "As long as {this} is equipped, each creature you control that's a Soldier or a Knight gets +1/+1" ))); } diff --git a/Mage.Sets/src/mage/sets/mirrodin/LeoninDenGuard.java b/Mage.Sets/src/mage/sets/mirrodin/LeoninDenGuard.java index 075c2178133..88baee81a38 100644 --- a/Mage.Sets/src/mage/sets/mirrodin/LeoninDenGuard.java +++ b/Mage.Sets/src/mage/sets/mirrodin/LeoninDenGuard.java @@ -33,7 +33,7 @@ import mage.constants.CardType; import mage.constants.Rarity; import mage.MageInt; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EquippedCondition; +import mage.abilities.condition.common.EquippedSourceCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; @@ -62,9 +62,9 @@ public class LeoninDenGuard extends CardImpl { this.toughness = new MageInt(3); // As long as Leonin Den-Guard is equipped, it gets +1/+1 and has vigilance. - ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), EquippedCondition.getInstance(), rule1); + ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), EquippedSourceCondition.getInstance(), rule1); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect1)); - ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new GainAbilitySourceEffect(VigilanceAbility.getInstance()), EquippedCondition.getInstance(), rule2); + ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new GainAbilitySourceEffect(VigilanceAbility.getInstance()), EquippedSourceCondition.getInstance(), rule2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect2)); } diff --git a/Mage.Sets/src/mage/sets/planechase2012/DreampodDruid.java b/Mage.Sets/src/mage/sets/planechase2012/DreampodDruid.java index 000d9c2c08b..2aaf42b2c2b 100644 --- a/Mage.Sets/src/mage/sets/planechase2012/DreampodDruid.java +++ b/Mage.Sets/src/mage/sets/planechase2012/DreampodDruid.java @@ -33,7 +33,7 @@ import mage.constants.CardType; import mage.constants.Rarity; import mage.MageInt; import mage.abilities.common.BeginningOfUpkeepTriggeredAbility; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; import mage.abilities.effects.common.CreateTokenEffect; import mage.cards.CardImpl; @@ -59,7 +59,7 @@ public class DreampodDruid extends CardImpl { // At the beginning of each upkeep, if Dreampod Druid is enchanted, put a 1/1 green Saproling creature token onto the battlefield. this.addAbility(new ConditionalTriggeredAbility( new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SaprolingToken(),1), TargetController.ANY, false, false), - new EnchantedCondition(), + new EnchantedSourceCondition(), "At the beginning of each upkeep, if Dreampod Druid is enchanted, put a 1/1 green Saproling creature token onto the battlefield.")); } diff --git a/Mage.Sets/src/mage/sets/planechase2012/KrondTheDawnClad.java b/Mage.Sets/src/mage/sets/planechase2012/KrondTheDawnClad.java index 75c25f891d0..03c609cde39 100644 --- a/Mage.Sets/src/mage/sets/planechase2012/KrondTheDawnClad.java +++ b/Mage.Sets/src/mage/sets/planechase2012/KrondTheDawnClad.java @@ -31,7 +31,7 @@ import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.AttacksTriggeredAbility; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.decorator.ConditionalTriggeredAbility; import mage.abilities.effects.common.ExileTargetEffect; import mage.abilities.keyword.FlyingAbility; @@ -63,7 +63,7 @@ public class KrondTheDawnClad extends CardImpl { // Whenever Krond the Dawn-Clad attacks, if it's enchanted, exile target permanent. Ability ability = new ConditionalTriggeredAbility( new AttacksTriggeredAbility(new ExileTargetEffect(), false), - new EnchantedCondition(), + new EnchantedSourceCondition(), "Whenever {this} attacks, if it's enchanted, exile target permanent."); ability.addTarget(new TargetPermanent()); this.addAbility(ability); diff --git a/Mage.Sets/src/mage/sets/ravnica/GateHound.java b/Mage.Sets/src/mage/sets/ravnica/GateHound.java index 27c622cdf80..984b9890203 100644 --- a/Mage.Sets/src/mage/sets/ravnica/GateHound.java +++ b/Mage.Sets/src/mage/sets/ravnica/GateHound.java @@ -34,7 +34,7 @@ import mage.constants.Rarity; import mage.constants.Zone; import mage.MageInt; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; import mage.abilities.keyword.VigilanceAbility; @@ -58,7 +58,7 @@ public class GateHound extends CardImpl { this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect( new GainAbilityControlledEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, new FilterCreaturePermanent()), - new EnchantedCondition(), + new EnchantedSourceCondition(), "Creatures you control have vigilance as long as {this} is enchanted"))); } diff --git a/Mage.Sets/src/mage/sets/urzasdestiny/RayneAcademyChancellor.java b/Mage.Sets/src/mage/sets/urzasdestiny/RayneAcademyChancellor.java index 1edf03ea2da..235f1ae6edb 100644 --- a/Mage.Sets/src/mage/sets/urzasdestiny/RayneAcademyChancellor.java +++ b/Mage.Sets/src/mage/sets/urzasdestiny/RayneAcademyChancellor.java @@ -30,7 +30,7 @@ package mage.sets.urzasdestiny; import java.util.UUID; import mage.MageInt; import mage.abilities.TriggeredAbilityImpl; -import mage.abilities.condition.common.EnchantedCondition; +import mage.abilities.condition.common.EnchantedSourceCondition; import mage.abilities.decorator.ConditionalOneShotEffect; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; @@ -76,7 +76,7 @@ public class RayneAcademyChancellor extends CardImpl { class RayneAcademyChancellorTriggeredAbility extends TriggeredAbilityImpl { RayneAcademyChancellorTriggeredAbility() { - super(Zone.BATTLEFIELD, new ConditionalOneShotEffect(new DrawCardSourceControllerEffect(2), new DrawCardSourceControllerEffect(1), new EnchantedCondition(), "you may draw a card. You may draw an additional card if {this} is enchanted."), true); + super(Zone.BATTLEFIELD, new ConditionalOneShotEffect(new DrawCardSourceControllerEffect(2), new DrawCardSourceControllerEffect(1), new EnchantedSourceCondition(), "you may draw a card. You may draw an additional card if {this} is enchanted."), true); } RayneAcademyChancellorTriggeredAbility(final RayneAcademyChancellorTriggeredAbility ability) { diff --git a/Mage.Sets/src/mage/sets/worldwake/KitesailApprentice.java b/Mage.Sets/src/mage/sets/worldwake/KitesailApprentice.java index a81ad0a4a19..4877b213aaa 100644 --- a/Mage.Sets/src/mage/sets/worldwake/KitesailApprentice.java +++ b/Mage.Sets/src/mage/sets/worldwake/KitesailApprentice.java @@ -33,7 +33,7 @@ import mage.constants.CardType; import mage.constants.Rarity; import mage.MageInt; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.EquippedCondition; +import mage.abilities.condition.common.EquippedSourceCondition; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; @@ -61,9 +61,9 @@ public class KitesailApprentice extends CardImpl { this.power = new MageInt(1); this.toughness = new MageInt(1); - ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), EquippedCondition.getInstance(), rule1); + ConditionalContinuousEffect effect1 = new ConditionalContinuousEffect(new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield), EquippedSourceCondition.getInstance(), rule1); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect1)); - ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new GainAbilitySourceEffect(FlyingAbility.getInstance()), EquippedCondition.getInstance(), rule2); + ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(new GainAbilitySourceEffect(FlyingAbility.getInstance()), EquippedSourceCondition.getInstance(), rule2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect2)); } diff --git a/Mage/src/main/java/mage/abilities/common/BeginningOfEndStepTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/BeginningOfEndStepTriggeredAbility.java index b406ac4ebfb..f0e49882ae7 100644 --- a/Mage/src/main/java/mage/abilities/common/BeginningOfEndStepTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/BeginningOfEndStepTriggeredAbility.java @@ -156,7 +156,7 @@ public class BeginningOfEndStepTriggeredAbility extends TriggeredAbilityImpl { private String generateConditionString() { if (interveningIfClauseCondition != null) { - return new StringBuilder(interveningIfClauseCondition.toString()).append(", ").toString(); + return "if {this} is " + interveningIfClauseCondition.toString() + ", "; } switch (getZone()) { case GRAVEYARD: diff --git a/Mage/src/main/java/mage/abilities/condition/common/EnchantedCondition.java b/Mage/src/main/java/mage/abilities/condition/common/EnchantedSourceCondition.java similarity index 89% rename from Mage/src/main/java/mage/abilities/condition/common/EnchantedCondition.java rename to Mage/src/main/java/mage/abilities/condition/common/EnchantedSourceCondition.java index 19d33148ede..133fb9c3b0c 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/EnchantedCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/EnchantedSourceCondition.java @@ -28,9 +28,9 @@ package mage.abilities.condition.common; import java.util.UUID; -import mage.constants.CardType; import mage.abilities.Ability; import mage.abilities.condition.Condition; +import mage.constants.CardType; import mage.game.Game; import mage.game.permanent.Permanent; @@ -38,15 +38,15 @@ import mage.game.permanent.Permanent; * * @author North */ -public class EnchantedCondition implements Condition { +public class EnchantedSourceCondition implements Condition { private int numberOfEnchantments; - public EnchantedCondition() { + public EnchantedSourceCondition() { this(1); } - public EnchantedCondition(int numberOfEnchantments) { + public EnchantedSourceCondition(int numberOfEnchantments) { this.numberOfEnchantments = numberOfEnchantments; } @@ -58,7 +58,7 @@ public class EnchantedCondition implements Condition { for (UUID uuid : permanent.getAttachments()) { Permanent attached = game.getBattlefield().getPermanent(uuid); if (attached != null && attached.getCardType().contains(CardType.ENCHANTMENT)) { - if (++numberOfFoundEnchantments >= numberOfEnchantments) { + if (++numberOfFoundEnchantments >= numberOfEnchantments) { return true; } } @@ -66,4 +66,9 @@ public class EnchantedCondition implements Condition { } return (numberOfFoundEnchantments >= numberOfEnchantments); } + + @Override + public String toString() { + return "enchanted"; + } } diff --git a/Mage/src/main/java/mage/abilities/condition/common/EquippedCondition.java b/Mage/src/main/java/mage/abilities/condition/common/EquippedSourceCondition.java similarity index 89% rename from Mage/src/main/java/mage/abilities/condition/common/EquippedCondition.java rename to Mage/src/main/java/mage/abilities/condition/common/EquippedSourceCondition.java index 53d25c429f7..20fa0bb2ab1 100644 --- a/Mage/src/main/java/mage/abilities/condition/common/EquippedCondition.java +++ b/Mage/src/main/java/mage/abilities/condition/common/EquippedSourceCondition.java @@ -38,9 +38,9 @@ import mage.game.permanent.Permanent; * * @author nantuko */ -public class EquippedCondition implements Condition { +public class EquippedSourceCondition implements Condition { - private static final EquippedCondition fInstance = new EquippedCondition(); + private static final EquippedSourceCondition fInstance = new EquippedSourceCondition(); public static Condition getInstance() { return fInstance; @@ -59,4 +59,10 @@ public class EquippedCondition implements Condition { } return false; } + + @Override + public String toString() { + return "equipped"; + } + }