forked from External/mage
updated some fight effect text
This commit is contained in:
parent
c355834a4e
commit
b625aa05c5
19 changed files with 52 additions and 78 deletions
|
|
@ -30,7 +30,7 @@ public final class AcklayOfTheArena extends CardImpl {
|
|||
this.addAbility(new MonstrosityAbility("{2}{R}{G}{W}", 1));
|
||||
|
||||
// Whenever a creature you control becomes monstrous, it fights target creature an opponent controls.
|
||||
Ability ability = new BecomesMonstrousTriggeredAbility(new FightTargetsEffect("it fights target creature an opponent controls"));
|
||||
Ability ability = new BecomesMonstrousTriggeredAbility(new FightTargetsEffect().setText("it fights target creature an opponent controls"));
|
||||
ability.addTarget(new TargetOpponentsCreaturePermanent());
|
||||
this.addAbility(ability);
|
||||
|
||||
|
|
|
|||
|
|
@ -7,9 +7,8 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
import mage.target.common.TargetOpponentsCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
|
@ -28,7 +27,7 @@ public final class Ambuscade extends CardImpl {
|
|||
|
||||
// It deals damage equal to its power to target creature you don't control.
|
||||
this.getSpellAbility().addEffect(new DamageWithPowerFromOneToAnotherTargetEffect("It"));
|
||||
this.getSpellAbility().addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_CREATURE_YOU_DONT_CONTROL)); // second target for effect
|
||||
this.getSpellAbility().addTarget(new TargetOpponentsCreaturePermanent()); // second target for effect
|
||||
}
|
||||
|
||||
private Ambuscade(final Ambuscade card) {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class ArniSlaysTheTroll extends CardImpl {
|
|||
|
||||
// I — Target creature you control fights up to one target creature you don't control.
|
||||
sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_I, SagaChapter.CHAPTER_I,
|
||||
new Effects(new FightTargetsEffect(
|
||||
new Effects(new FightTargetsEffect().setText(
|
||||
"Target creature you control fights up to one target creature you don't control"
|
||||
)), new Targets(
|
||||
new TargetControlledCreaturePermanent(),
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class AyulaQueenAmongBears extends CardImpl {
|
|||
|
||||
private static final FilterPermanent filter = new FilterPermanent(SubType.BEAR, "another Bear");
|
||||
private static final FilterPermanent filter2 = new FilterPermanent(SubType.BEAR, "Bear");
|
||||
private static final FilterControlledPermanent filter3 = new FilterControlledPermanent("Bear you controls");
|
||||
private static final FilterControlledPermanent filter3 = new FilterControlledPermanent("Bear you control");
|
||||
|
||||
static {
|
||||
filter.add(AnotherPredicate.instance);
|
||||
|
|
|
|||
|
|
@ -1,23 +1,21 @@
|
|||
|
||||
package mage.cards.b;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.effects.common.FightTargetsEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.other.AnotherTargetPredicate;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author intimidatingant
|
||||
*/
|
||||
public final class BloodFeud extends CardImpl {
|
||||
|
||||
public BloodFeud(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{4}{R}{R}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{R}{R}");
|
||||
|
||||
// Target creature fights another target creature.
|
||||
this.getSpellAbility().addEffect(new FightTargetsEffect());
|
||||
|
|
@ -25,9 +23,7 @@ public final class BloodFeud extends CardImpl {
|
|||
target.setTargetTag(1);
|
||||
this.getSpellAbility().addTarget(target);
|
||||
|
||||
FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
filter.add(new AnotherTargetPredicate(2));
|
||||
TargetCreaturePermanent target2 = new TargetCreaturePermanent(filter);
|
||||
TargetCreaturePermanent target2 = new TargetCreaturePermanent(StaticFilters.FILTER_ANOTHER_CREATURE_TARGET_2);
|
||||
target2.setTargetTag(2);
|
||||
this.getSpellAbility().addTarget(target2);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@ import mage.abilities.effects.common.FightTargetsEffect;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.other.AnotherTargetPredicate;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.Target;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
|
@ -16,12 +15,6 @@ import java.util.UUID;
|
|||
*/
|
||||
public final class ClashOfTitans extends CardImpl {
|
||||
|
||||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
|
||||
static {
|
||||
filter.add(new AnotherTargetPredicate(2));
|
||||
}
|
||||
|
||||
public ClashOfTitans(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{3}{R}{R}");
|
||||
|
||||
|
|
@ -31,7 +24,7 @@ public final class ClashOfTitans extends CardImpl {
|
|||
target.setTargetTag(1);
|
||||
this.getSpellAbility().addTarget(target);
|
||||
|
||||
target = new TargetCreaturePermanent(filter);
|
||||
target = new TargetCreaturePermanent(StaticFilters.FILTER_ANOTHER_CREATURE_TARGET_2);
|
||||
target.setTargetTag(2);
|
||||
this.getSpellAbility().addTarget(target);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,7 +40,6 @@ public final class ContestedCliffs extends CardImpl {
|
|||
this.addAbility(new ColorlessManaAbility());
|
||||
// {R}{G}, {tap}: Choose target Beast creature you control and target creature an opponent controls. Those creatures fight each other.
|
||||
Effect effect = new FightTargetsEffect();
|
||||
effect.setText("Choose target Beast creature you control and target creature an opponent controls. Those creatures fight each other");
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{R}{G}"));
|
||||
ability.addCost(new TapSourceCost());
|
||||
Target target1 = new TargetCreaturePermanent(filter1);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
|
||||
package mage.cards.d;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageObject;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.LoyaltyAbility;
|
||||
|
|
@ -13,21 +11,17 @@ import mage.cards.Card;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.cards.CardsImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.Outcome;
|
||||
import mage.constants.SuperType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.other.AnotherTargetPredicate;
|
||||
import mage.constants.*;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.game.Game;
|
||||
import mage.game.command.emblems.DomriRadeEmblem;
|
||||
import mage.players.Player;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author LevelX2
|
||||
*/
|
||||
public final class DomriRade extends CardImpl {
|
||||
|
|
@ -48,16 +42,13 @@ public final class DomriRade extends CardImpl {
|
|||
target.setTargetTag(1);
|
||||
ability2.addTarget(target);
|
||||
|
||||
FilterCreaturePermanent filter = new FilterCreaturePermanent("another creature to fight");
|
||||
filter.add(new AnotherTargetPredicate(2));
|
||||
TargetCreaturePermanent target2 = new TargetCreaturePermanent(filter);
|
||||
TargetCreaturePermanent target2 = new TargetCreaturePermanent(StaticFilters.FILTER_ANOTHER_CREATURE_TARGET_2);
|
||||
target2.setTargetTag(2);
|
||||
ability2.addTarget(target2);
|
||||
this.addAbility(ability2);
|
||||
|
||||
// -7: You get an emblem with "Creatures you control have double strike, trample, hexproof and haste."
|
||||
this.addAbility(new LoyaltyAbility(new GetEmblemEffect(new DomriRadeEmblem()), -7));
|
||||
|
||||
}
|
||||
|
||||
private DomriRade(final DomriRade card) {
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ public final class HuntTheWeak extends CardImpl {
|
|||
// Put a +1/+1 counter on target creature you control. Then that creature fights target creature you don't control.
|
||||
this.getSpellAbility().addEffect(new AddCountersTargetEffect(CounterType.P1P1.createInstance()));
|
||||
this.getSpellAbility().addEffect(new FightTargetsEffect().setText(
|
||||
"Then that creature fights up to one target creature you don't control"
|
||||
"Then that creature fights target creature you don't control"
|
||||
));
|
||||
this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent());
|
||||
this.getSpellAbility().addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_CREATURE_YOU_DONT_CONTROL));
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class OuterRimSlaver extends CardImpl {
|
|||
// When Outer Rim Slaver enters the battlefield, you may put a bounty counter on target creature. If you do, another target creature fights that creature
|
||||
Ability ability = new EntersBattlefieldTriggeredAbility(new AddCountersTargetEffect(CounterType.BOUNTY.createInstance())
|
||||
.setText("you may put a bounty counter on target creature"), true);
|
||||
ability.addEffect(new FightTargetsEffect("If you do, another target creature fights that creature"));
|
||||
ability.addEffect(new FightTargetsEffect().setText("If you do, another target creature fights that creature"));
|
||||
TargetCreaturePermanent target = new TargetCreaturePermanent(new FilterCreaturePermanent("creature to put a bounty counter on it"));
|
||||
target.setTargetTag(1);
|
||||
ability.addTarget(target);
|
||||
|
|
|
|||
|
|
@ -1,24 +1,22 @@
|
|||
|
||||
package mage.cards.p;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.effects.common.FightTargetsEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.other.AnotherTargetPredicate;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author LevelX2
|
||||
*/
|
||||
public final class PitFight extends CardImpl {
|
||||
|
||||
public PitFight(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{R/G}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{R/G}");
|
||||
|
||||
// Target creature you control fights another target creature.
|
||||
this.getSpellAbility().addEffect(new FightTargetsEffect());
|
||||
|
|
@ -26,9 +24,7 @@ public final class PitFight extends CardImpl {
|
|||
target.setTargetTag(1);
|
||||
this.getSpellAbility().addTarget(target);
|
||||
|
||||
FilterCreaturePermanent filter = new FilterCreaturePermanent("another creature to fight");
|
||||
filter.add(new AnotherTargetPredicate(2));
|
||||
TargetCreaturePermanent target2 = new TargetCreaturePermanent(filter);
|
||||
TargetCreaturePermanent target2 = new TargetCreaturePermanent(StaticFilters.FILTER_ANOTHER_CREATURE_TARGET_2);
|
||||
target2.setTargetTag(2);
|
||||
this.getSpellAbility().addTarget(target2);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,9 +12,9 @@ import mage.cards.SplitCard;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.SpellAbilityType;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
import mage.target.common.TargetOpponentsCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
|
@ -45,7 +45,7 @@ public final class PrepareFight extends SplitCard {
|
|||
getRightHalfCard().addAbility(new AftermathAbility().setRuleAtTheTop(true));
|
||||
getRightHalfCard().getSpellAbility().addEffect(new FightTargetsEffect());
|
||||
getRightHalfCard().getSpellAbility().addTarget(new TargetControlledCreaturePermanent());
|
||||
getRightHalfCard().getSpellAbility().addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_CREATURE_YOU_DONT_CONTROL));
|
||||
getRightHalfCard().getSpellAbility().addTarget(new TargetOpponentsCreaturePermanent());
|
||||
}
|
||||
|
||||
private PrepareFight(final PrepareFight card) {
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public final class SmellFear extends CardImpl {
|
|||
this.getSpellAbility().addEffect(new ProliferateEffect());
|
||||
|
||||
// Target creature you control fights up to one target creature you don't control.
|
||||
this.getSpellAbility().addEffect(new FightTargetsEffect(
|
||||
this.getSpellAbility().addEffect(new FightTargetsEffect().setText(
|
||||
"<br>Target creature you control fights up to one target creature you don't control"
|
||||
));
|
||||
this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent());
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ public final class TheTriumphOfAnax extends CardImpl {
|
|||
// IV — Target creature you control fights up to one target creature you don't control.
|
||||
sagaAbility.addChapterEffect(
|
||||
this, SagaChapter.CHAPTER_IV, SagaChapter.CHAPTER_IV,
|
||||
new Effects(new FightTargetsEffect(
|
||||
new Effects(new FightTargetsEffect().setText(
|
||||
"Target creature you control fights up to one target creature you don't control"
|
||||
)), new Targets(
|
||||
new TargetControlledCreaturePermanent(),
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public final class TovolarsPackleader extends CardImpl {
|
|||
));
|
||||
|
||||
// {2}{G}{G}: Another target Wolf or Werewolf you control fights target creature you don't control.
|
||||
Ability ability = new SimpleActivatedAbility(new FightTargetsEffect(
|
||||
Ability ability = new SimpleActivatedAbility(new FightTargetsEffect().setText(
|
||||
"another target Wolf or Werewolf you control fights target creature you don't control"
|
||||
), new ManaCostsImpl<>("{2}{G}{G}"));
|
||||
ability.addTarget(new TargetPermanent(filter));
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
|
||||
package mage.cards.u;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
|
|
@ -12,15 +10,14 @@ import mage.cards.CardImpl;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.other.AnotherTargetPredicate;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.Target;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author North
|
||||
*/
|
||||
public final class UlvenwaldTracker extends CardImpl {
|
||||
|
|
@ -34,14 +31,12 @@ public final class UlvenwaldTracker extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// {1}{G}, {tap}: Target creature you control fights another target creature.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new FightTargetsEffect(), new ManaCostsImpl("{1}{G}"));
|
||||
Ability ability = new SimpleActivatedAbility(new FightTargetsEffect(), new ManaCostsImpl<>("{1}{G}"));
|
||||
ability.addCost(new TapSourceCost());
|
||||
Target controlledTarget = new TargetControlledCreaturePermanent();
|
||||
controlledTarget.setTargetTag(1);
|
||||
ability.addTarget(controlledTarget);
|
||||
FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
filter.add(new AnotherTargetPredicate(2));
|
||||
Target secondTarget = new TargetCreaturePermanent(filter);
|
||||
Target secondTarget = new TargetCreaturePermanent(StaticFilters.FILTER_ANOTHER_CREATURE_TARGET_2);
|
||||
secondTarget.setTargetTag(2);
|
||||
ability.addTarget(secondTarget);
|
||||
this.addAbility(ability);
|
||||
|
|
|
|||
|
|
@ -64,10 +64,10 @@ public class DamageWithPowerFromOneToAnotherTargetEffect extends OneShotEffect {
|
|||
throw new IllegalStateException("It must have two targets, but found " + mode.getTargets().size());
|
||||
}
|
||||
|
||||
String targetName = mode.getTargets().get(1).getTargetName();
|
||||
// Target creature you control deals damage equal to its power to target creature you don't control
|
||||
String sb = (this.firstTargetName != null ? this.firstTargetName : "Target " + mode.getTargets().get(0).getTargetName()) +
|
||||
" deals damage equal to its power to target " +
|
||||
mode.getTargets().get(1).getTargetName();
|
||||
" deals damage equal to its power to " + (targetName.contains("other") ? "" : "target ") + targetName;
|
||||
return sb;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import mage.cards.Card;
|
|||
import mage.constants.Outcome;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.Target;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
|
@ -19,11 +20,6 @@ public class FightTargetsEffect extends OneShotEffect {
|
|||
super(Outcome.Damage);
|
||||
}
|
||||
|
||||
public FightTargetsEffect(String effectText) {
|
||||
this();
|
||||
this.staticText = effectText;
|
||||
}
|
||||
|
||||
public FightTargetsEffect(final FightTargetsEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
|
@ -70,18 +66,20 @@ public class FightTargetsEffect extends OneShotEffect {
|
|||
@Override
|
||||
public FightTargetsEffect copy() {
|
||||
return new FightTargetsEffect(this);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Mode mode) {
|
||||
if (staticText != null && !staticText.isEmpty()) {
|
||||
return staticText;
|
||||
|
||||
}
|
||||
return "target " + mode
|
||||
.getTargets().get(0).getTargetName() + " fights another target " + mode
|
||||
.getTargets().get(1).getTargetName();
|
||||
Target target=mode.getTargets().get(1);
|
||||
StringBuilder sb=new StringBuilder("target ");
|
||||
sb.append(mode.getTargets().get(0).getTargetName());
|
||||
sb.append(" fights ");
|
||||
if(!target.getTargetName().contains("other")){
|
||||
sb.append("target ");
|
||||
}
|
||||
sb.append(target.getTargetName());return sb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -9,6 +9,7 @@ import mage.filter.predicate.Predicates;
|
|||
import mage.filter.predicate.mageobject.AnotherPredicate;
|
||||
import mage.filter.predicate.mageobject.KickedSpellPredicate;
|
||||
import mage.filter.predicate.mageobject.MulticoloredPredicate;
|
||||
import mage.filter.predicate.other.AnotherTargetPredicate;
|
||||
import mage.filter.predicate.permanent.AttackingPredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.filter.predicate.permanent.TokenPredicate;
|
||||
|
|
@ -415,6 +416,12 @@ public final class StaticFilters {
|
|||
FILTER_OPPONENTS_PERMANENT_ARTIFACT_OR_CREATURE.setLockedFilter(true);
|
||||
}
|
||||
|
||||
public static final FilterCreaturePermanent FILTER_ANOTHER_CREATURE_TARGET_2 = new FilterCreaturePermanent("another target creature");
|
||||
|
||||
static {
|
||||
FILTER_ANOTHER_CREATURE_TARGET_2.add(new AnotherTargetPredicate(2));
|
||||
}
|
||||
|
||||
public static final FilterCreaturePermanent FILTER_CREATURE_YOU_DONT_CONTROL = new FilterCreaturePermanent("creature you don't control");
|
||||
|
||||
static {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue