From 9dc0bf97fb9031267e56bf2034e8f9563acda38b Mon Sep 17 00:00:00 2001 From: klayhamn Date: Fri, 31 Jul 2015 01:32:59 +0300 Subject: [PATCH 1/2] Add missing trample ability to foriysian --- Mage.Sets/src/mage/sets/timespiral/ForiysianTotem.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Mage.Sets/src/mage/sets/timespiral/ForiysianTotem.java b/Mage.Sets/src/mage/sets/timespiral/ForiysianTotem.java index b8a107eac5b..f5c35e200ed 100644 --- a/Mage.Sets/src/mage/sets/timespiral/ForiysianTotem.java +++ b/Mage.Sets/src/mage/sets/timespiral/ForiysianTotem.java @@ -30,17 +30,19 @@ package mage.sets.timespiral; import mage.MageInt; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.condition.common.SourceIsCreatureCondition; +import mage.abilities.condition.common.SourceMatchesFilterCondition; import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.effects.common.combat.CanBlockAdditionalCreatureEffect; import mage.abilities.effects.common.continuous.BecomesCreatureSourceEffect; +import mage.abilities.keyword.TrampleAbility; import mage.abilities.mana.RedManaAbility; import mage.cards.CardImpl; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Rarity; import mage.constants.Zone; +import mage.filter.common.FilterCreaturePermanent; import mage.game.permanent.token.Token; import java.util.UUID; @@ -51,7 +53,7 @@ import java.util.UUID; */ public class ForiysianTotem extends CardImpl { - private final static String ruleText = "As long as Foriysian Totem is a creature, it can block an additional creature."; + private final static String ruleText = "As long as {this} is a creature, it can block an additional creature."; public ForiysianTotem(UUID ownerId) { super(ownerId, 254, "Foriysian Totem", Rarity.UNCOMMON, new CardType[]{CardType.ARTIFACT}, "{3}"); @@ -64,7 +66,7 @@ public class ForiysianTotem extends CardImpl { this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new ForiysianTotemToken(), "", Duration.EndOfTurn), new ManaCostsImpl<>("{4}{R}"))); // As long as Foriysian Totem is a creature, it can block an additional creature. - this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new CanBlockAdditionalCreatureEffect(1), SourceIsCreatureCondition.getInstance() , ruleText))); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new CanBlockAdditionalCreatureEffect(1), new SourceMatchesFilterCondition(new FilterCreaturePermanent()), ruleText))); } public ForiysianTotem(final ForiysianTotem card) { @@ -88,5 +90,6 @@ class ForiysianTotemToken extends Token { color.setRed(true); power = new MageInt(4); toughness = new MageInt(4); + this.addAbility(TrampleAbility.getInstance()); } } \ No newline at end of file From 5444b2a53beca160db2dfdda0fad50e03a7f5b12 Mon Sep 17 00:00:00 2001 From: klayhamn Date: Tue, 4 Aug 2015 23:25:16 +0300 Subject: [PATCH 2/2] removing the no-longer-necessary SourceIsCreature condition --- .../common/SourceIsCreatureCondition.java | 25 ------------------- 1 file changed, 25 deletions(-) delete mode 100644 Mage/src/mage/abilities/condition/common/SourceIsCreatureCondition.java diff --git a/Mage/src/mage/abilities/condition/common/SourceIsCreatureCondition.java b/Mage/src/mage/abilities/condition/common/SourceIsCreatureCondition.java deleted file mode 100644 index 0a877da1621..00000000000 --- a/Mage/src/mage/abilities/condition/common/SourceIsCreatureCondition.java +++ /dev/null @@ -1,25 +0,0 @@ -package mage.abilities.condition.common; - -import mage.MageObject; -import mage.abilities.Ability; -import mage.abilities.condition.Condition; -import mage.constants.CardType; -import mage.game.Game; - -/** - * @author klayhamn - */ -public class SourceIsCreatureCondition implements Condition { - - private static final SourceIsCreatureCondition fInstance = new SourceIsCreatureCondition(); - - public static Condition getInstance() { - return fInstance; - } - - @Override - public boolean apply(Game game, Ability source) { - MageObject object = game.getObject(source.getSourceId()); - return object != null && object.getCardType().contains(CardType.CREATURE); - } -}