Intimidate text fixes

This commit is contained in:
Alex W. Jackson 2022-02-22 19:47:53 -05:00
parent 83e18393f7
commit 7cddea8c63
8 changed files with 43 additions and 28 deletions

View file

@ -1,10 +1,10 @@
package mage.cards.d; package mage.cards.d;
import java.util.UUID; import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.abilityword.ConstellationAbility; import mage.abilities.abilityword.ConstellationAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.keyword.IntimidateAbility; import mage.abilities.keyword.IntimidateAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
@ -28,7 +28,9 @@ public final class DreadbringerLampads extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// Constellation - Whenever Dreadbringer Lampads or another enchantment enters the battlefield under your control, target creature gains intimidate until end of turn. // Constellation - Whenever Dreadbringer Lampads or another enchantment enters the battlefield under your control, target creature gains intimidate until end of turn.
Ability ability = new ConstellationAbility(new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn), false); Effect effect = new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn);
effect.setText("target creature gains intimidate until end of turn. <i>(It can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>");
Ability ability = new ConstellationAbility(effect);
ability.addTarget(new TargetCreaturePermanent()); ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -8,7 +8,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.StaticFilters;
/** /**
* *
@ -16,11 +16,17 @@ import mage.filter.common.FilterControlledCreaturePermanent;
*/ */
public final class HideousVisage extends CardImpl { public final class HideousVisage extends CardImpl {
private static final String rule = "creatures you control gain intimidate until end of turn. " +
"<i>(Each of those creatures can't be blocked except by artifact creatures and/or " +
"creatures that share a color with it.)</i>";
public HideousVisage(UUID ownerId, CardSetInfo setInfo) { public HideousVisage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{B}"); super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{B}");
this.getSpellAbility().addEffect(new GainAbilityControlledEffect(
this.getSpellAbility().addEffect(new GainAbilityControlledEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn, new FilterControlledCreaturePermanent("Creatures"))); IntimidateAbility.getInstance(),
Duration.EndOfTurn,
StaticFilters.FILTER_PERMANENT_CREATURES).setText(rule));
} }
private HideousVisage(final HideousVisage card) { private HideousVisage(final HideousVisage card) {

View file

@ -1,4 +1,3 @@
package mage.cards.k; package mage.cards.k;
import java.util.UUID; import java.util.UUID;
@ -8,6 +7,7 @@ import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.common.SacrificeTargetCost; import mage.abilities.costs.common.SacrificeTargetCost;
import mage.abilities.costs.mana.ManaCostsImpl; import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.dynamicvalue.common.SacrificeCostCreaturesToughness; import mage.abilities.dynamicvalue.common.SacrificeCostCreaturesToughness;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.CreateTokenEffect; import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.continuous.BoostTargetEffect; import mage.abilities.effects.common.continuous.BoostTargetEffect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
@ -17,7 +17,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.Zone;
import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.permanent.TokenPredicate; import mage.filter.predicate.permanent.TokenPredicate;
import mage.game.permanent.token.SaprolingToken; import mage.game.permanent.token.SaprolingToken;
@ -46,13 +45,17 @@ public final class KorozdaGuildmage extends CardImpl {
this.toughness = new MageInt(2); this.toughness = new MageInt(2);
// {1}{B}{G}: Target creature gets +1/+1 and gains intimidate until end of turn. // {1}{B}{G}: Target creature gets +1/+1 and gains intimidate until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1,1, Duration.EndOfTurn),new ManaCostsImpl("{1}{B}{G}")); Effect effect = new BoostTargetEffect(1, 1, Duration.EndOfTurn);
ability.addEffect(new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn)); effect.setText("target creature gets +1/+1");
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl("{1}{B}{G}"));
effect = new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn);
effect.setText("and gains intimidate until end of turn. <i>(It can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>");
ability.addEffect(effect);
ability.addTarget(new TargetCreaturePermanent()); ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
// {2}{B}{G}, Sacrifice a nontoken creature: create X 1/1 green Saproling creature tokens, where X is the sacrificed creature's toughness. // {2}{B}{G}, Sacrifice a nontoken creature: create X 1/1 green Saproling creature tokens, where X is the sacrificed creature's toughness.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SaprolingToken(),SacrificeCostCreaturesToughness.instance),new ManaCostsImpl("{2}{B}{G}")); ability = new SimpleActivatedAbility(new CreateTokenEffect(new SaprolingToken(),SacrificeCostCreaturesToughness.instance),new ManaCostsImpl("{2}{B}{G}"));
ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(1,1,filter, true))); ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(1,1,filter, true)));
this.addAbility(ability); this.addAbility(ability);
@ -66,4 +69,4 @@ public final class KorozdaGuildmage extends CardImpl {
public KorozdaGuildmage copy() { public KorozdaGuildmage copy() {
return new KorozdaGuildmage(this); return new KorozdaGuildmage(this);
} }
} }

View file

@ -1,4 +1,3 @@
package mage.cards.p; package mage.cards.p;
import java.util.UUID; import java.util.UUID;
@ -6,7 +5,6 @@ import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility; import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.CreatureCountCondition; import mage.abilities.condition.common.CreatureCountCondition;
import mage.abilities.decorator.ConditionalContinuousEffect; import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.ContinuousEffect;
import mage.abilities.effects.common.AttachEffect; import mage.abilities.effects.common.AttachEffect;
import mage.abilities.effects.common.continuous.BoostEnchantedEffect; import mage.abilities.effects.common.continuous.BoostEnchantedEffect;
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect; import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
@ -23,7 +21,8 @@ import mage.target.common.TargetCreaturePermanent;
*/ */
public final class PredatorsGambit extends CardImpl { public final class PredatorsGambit extends CardImpl {
private static final String rule = "Enchanted creature has intimidate as long as its controller controls no other creatures"; private static final String rule = "Enchanted creature has intimidate as long as its controller controls no other creatures. " +
"<i>(It can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>";
public PredatorsGambit(UUID ownerId, CardSetInfo setInfo) { public PredatorsGambit(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{B}"); super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{B}");
@ -38,12 +37,14 @@ public final class PredatorsGambit extends CardImpl {
this.addAbility(ability); this.addAbility(ability);
// Enchanted creature gets +2/+1. // 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)));
// Enchanted creature has intimidate as long as its controller controls no other creatures. // Enchanted creature has intimidate as long as its controller controls no other creatures.
ContinuousEffect effect = new GainAbilityAttachedEffect(IntimidateAbility.getInstance(), AttachmentType.AURA); this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
ConditionalContinuousEffect intimidate = new ConditionalContinuousEffect(effect, new CreatureCountCondition(1, TargetController.YOU), rule); new GainAbilityAttachedEffect(IntimidateAbility.getInstance(), AttachmentType.AURA),
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, intimidate)); new CreatureCountCondition(1, TargetController.YOU),
rule
)));
} }

View file

@ -5,6 +5,7 @@ import mage.MageInt;
import mage.ObjectColor; import mage.ObjectColor;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; import mage.abilities.common.EntersBattlefieldAllTriggeredAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.keyword.IntimidateAbility; import mage.abilities.keyword.IntimidateAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
@ -39,12 +40,10 @@ public final class ShadowAlleyDenizen extends CardImpl {
this.power = new MageInt(1); this.power = new MageInt(1);
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
// Whenever another black creature enters the battlefield under your control, target creature gains intimidate until end of turn. // Whenever another black creature enters the battlefield under your control, target creature gains intimidate until end of turn.
Ability ability = new EntersBattlefieldAllTriggeredAbility( Effect effect = new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn);
Zone.BATTLEFIELD, effect.setText("target creature gains intimidate until end of turn. <i>(It can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>");
new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn), Ability ability = new EntersBattlefieldAllTriggeredAbility(Zone.BATTLEFIELD, effect, filter, false, null, true);
filter, false, null, true);
ability.addTarget(new TargetCreaturePermanent()); ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -1,9 +1,9 @@
package mage.cards.s; package mage.cards.s;
import java.util.UUID; import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.abilities.common.LandfallAbility; import mage.abilities.common.LandfallAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.keyword.IntimidateAbility; import mage.abilities.keyword.IntimidateAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
@ -27,7 +27,9 @@ public final class SurrakarMarauder extends CardImpl {
// Landfall - Whenever a land enters the battlefield under your control, Surrakar Marauder gains intimidate until end of turn. // Landfall - Whenever a land enters the battlefield under your control, Surrakar Marauder gains intimidate until end of turn.
// (It can't be blocked except by artifact creatures and/or creatures that share a color with it.) // (It can't be blocked except by artifact creatures and/or creatures that share a color with it.)
this.addAbility(new LandfallAbility(new GainAbilitySourceEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn), false)); Effect effect = new GainAbilitySourceEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn);
effect.setText("{this} gains intimidate until end of turn. <i>(It can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>");
this.addAbility(new LandfallAbility(effect));
} }
private SurrakarMarauder(final SurrakarMarauder card) { private SurrakarMarauder(final SurrakarMarauder card) {

View file

@ -1,9 +1,9 @@
package mage.cards.w; package mage.cards.w;
import java.util.UUID; import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.keyword.InspiredAbility; import mage.abilities.keyword.InspiredAbility;
import mage.abilities.keyword.IntimidateAbility; import mage.abilities.keyword.IntimidateAbility;
@ -29,7 +29,9 @@ public final class WarchanterOfMogis extends CardImpl {
this.toughness = new MageInt(3); this.toughness = new MageInt(3);
// <i>Inspired</i> &mdash; Whenever Warchanter of Mogis becomes untapped, target creature you control gains intimidate until end of turn. // <i>Inspired</i> &mdash; Whenever Warchanter of Mogis becomes untapped, target creature you control gains intimidate until end of turn.
Ability ability = new InspiredAbility(new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn), false); Effect effect = new GainAbilityTargetEffect(IntimidateAbility.getInstance(), Duration.EndOfTurn);
effect.setText("target creature you control gains intimidate until end of turn. <i>(A creature with intimidate can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>");
Ability ability = new InspiredAbility(effect);
ability.addTarget(new TargetControlledCreaturePermanent()); ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability); this.addAbility(ability);
} }

View file

@ -33,7 +33,7 @@ public class IntimidateAbility extends EvasionAbility implements MageSingleton {
@Override @Override
public String getRule() { public String getRule() {
return "intimidate <i>(This creature can't be blocked except by artifact creatures and/or creatures that share a color with it.)"; return "intimidate <i>(This creature can't be blocked except by artifact creatures and/or creatures that share a color with it.)</i>";
} }
@Override @Override