Merge branch 'master' into fix_hints_on_ward

# Conflicts:
#	Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java
This commit is contained in:
Alex Vasile 2022-05-12 09:24:22 -06:00
commit b8c9f8eaa8
206 changed files with 356 additions and 234 deletions

View file

@ -36,7 +36,7 @@ public final class ArgentumArmor extends CardImpl {
this.addAbility(ability);
// Equip {6}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(6)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(6), false));
}
private ArgentumArmor(final ArgentumArmor card) {

View file

@ -37,7 +37,7 @@ public final class AshmouthBlade extends CardImpl {
ability.addEffect(effect);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
this.addAbility(new EquipAbility(3, false));
}
private AshmouthBlade(final AshmouthBlade card) {

View file

@ -52,7 +52,7 @@ public final class AssaultSuit extends CardImpl {
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AssaultSuitGainControlEffect(), TargetController.OPPONENT, false));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.Detriment, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.Detriment, new GenericManaCost(3), false));
}
private AssaultSuit(final AssaultSuit card) {

View file

@ -43,7 +43,7 @@ public final class AvacynsCollar extends CardImpl {
this.addAbility(new AvacynsCollarTriggeredAbility());
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private AvacynsCollar(final AvacynsCollar card) {

View file

@ -23,8 +23,12 @@ public final class BarbedBattlegear extends CardImpl {
public BarbedBattlegear (UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}");
this.subtype.add(SubType.EQUIPMENT);
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
// Equipped creature gets +4/-1.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(4, -1)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
}
public BarbedBattlegear (final BarbedBattlegear card) {

View file

@ -32,7 +32,7 @@ public final class BarbedSpike extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(1, 0)));
// Equip {2}
this.addAbility(new EquipAbility(2));
this.addAbility(new EquipAbility(2, false));
}
private BarbedSpike(final BarbedSpike card) {

View file

@ -33,7 +33,7 @@ public final class BasiliskCollar extends CardImpl {
).setText("and lifelink"));
this.addAbility(ability);
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
private BasiliskCollar(final BasiliskCollar card) {

View file

@ -40,7 +40,7 @@ public final class Batterbone extends CardImpl {
this.addAbility(ability);
// Equip {5}
this.addAbility(new EquipAbility(5));
this.addAbility(new EquipAbility(5, false));
}
private Batterbone(final Batterbone card) {

View file

@ -39,7 +39,7 @@ public final class Batterskull extends CardImpl {
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new GenericManaCost(3)));
// Equip {5}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(5)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(5), false));
}
private Batterskull(final Batterskull card) {

View file

@ -38,7 +38,7 @@ public final class BattlemagesBracers extends CardImpl {
this.addAbility(new BattlemagesBracersTriggeredAbility());
// Equip {2}
this.addAbility(new EquipAbility(2));
this.addAbility(new EquipAbility(2, false));
}
private BattlemagesBracers(final BattlemagesBracers card) {

View file

@ -46,7 +46,7 @@ public final class BeardedAxe extends CardImpl {
).addHint(hint));
// Equip {2}
this.addAbility(new EquipAbility(2));
this.addAbility(new EquipAbility(2, false));
}
private BeardedAxe(final BeardedAxe card) {

View file

@ -31,7 +31,7 @@ public final class BehemothSledge extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), false));
}
private BehemothSledge(BehemothSledge me) {
@ -42,5 +42,4 @@ public final class BehemothSledge extends CardImpl {
public BehemothSledge copy() {
return new BehemothSledge(this);
}
}

View file

@ -30,7 +30,7 @@ public final class BeltOfGiantStrength extends CardImpl {
.setText("equipped creature has base power and toughness 10/10")));
// Equip {10}. This ability costs {X} less to activate where X is the power of the creature it targets.
EquipAbility ability = new EquipAbility(10);
EquipAbility ability = new EquipAbility(10, false);
ability.setCostReduceText("This ability costs {X} less to activate, where X is the power of the creature it targets.");
ability.setCostAdjuster(BeltOfGiantStrengthAdjuster.instance);
this.addAbility(ability);

View file

@ -38,10 +38,10 @@ public final class BlackbladeReforged extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(count, count)));
// Equip legendary creature (3)
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), new TargetControlledCreaturePermanent(filter)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), new TargetControlledCreaturePermanent(filter), false));
// Equip {7}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(7)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(7), false));
}
private BlackbladeReforged(final BlackbladeReforged card) {

View file

@ -25,7 +25,7 @@ public final class BladeOfSelves extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(new MyriadAbility(), AttachmentType.EQUIPMENT)));
// Equip {4}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), false));
}
private BladeOfSelves(final BladeOfSelves card) {

View file

@ -29,7 +29,7 @@ public final class BladeOfTheBloodchief extends CardImpl {
this.addAbility(new DiesCreatureTriggeredAbility(new BladeOfTheBloodchiefEffect(), false));
//Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}
private BladeOfTheBloodchief(final BladeOfTheBloodchief card) {

View file

@ -22,9 +22,13 @@ public final class BladedPinions extends CardImpl {
public BladedPinions (UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}");
this.subtype.add(SubType.EQUIPMENT);
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
// Equipped creature has flying and first strike.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.EQUIPMENT)));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
}
public BladedPinions (final BladedPinions card) {

View file

@ -43,7 +43,7 @@ public final class BlazingSunsteel extends CardImpl {
this.addAbility(new BlazingSunsteelTriggeredAbility());
// Equip {4}
this.addAbility(new EquipAbility(4));
this.addAbility(new EquipAbility(4, false));
}
private BlazingSunsteel(final BlazingSunsteel card) {

View file

@ -32,7 +32,7 @@ public final class BlightSickle extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private BlightSickle(final BlightSickle card) {

View file

@ -38,7 +38,7 @@ public final class BloodforgedBattleAxe extends CardImpl {
this.addAbility(new BloodforgedBattleAxeAbility());
// Equip 2
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}

View file

@ -34,7 +34,7 @@ public final class Bonehoard extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(value, value).setText("equipped creature gets +X/+X, where X is the number of creature cards in all graveyards")));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private Bonehoard(final Bonehoard card) {

View file

@ -22,9 +22,11 @@ public final class Bonesplitter extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}");
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +2/+0.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 0)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), false));
}
private Bonesplitter(final Bonesplitter card) {

View file

@ -35,7 +35,7 @@ public final class ButchersCleaver extends CardImpl {
new EquippedHasSubtypeCondition(SubType.HUMAN), staticText)));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), false));
}

View file

@ -31,7 +31,7 @@ public final class CaptainsClaws extends CardImpl {
// Whenever equipped creature attacks, create a 1/1 white Kor Ally creature token tapped and attacking.
this.addAbility(new AttacksAttachedTriggeredAbility(new CreateTokenEffect(new KorAllyToken(), 1, true, true)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), false));
}
private CaptainsClaws(final CaptainsClaws card) {

View file

@ -50,7 +50,7 @@ public final class CaptainsHook extends CardImpl {
this.addAbility(new UnattachedTriggeredAbility(new DestroyEquippedEffect(), false));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), false));
}
private CaptainsHook(final CaptainsHook card) {

View file

@ -35,7 +35,7 @@ public final class ChampionsHelm extends CardImpl {
new EquippedHasSupertypeCondition(SuperType.LEGENDARY), staticText)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}
private ChampionsHelm(final ChampionsHelm card) {

View file

@ -40,7 +40,7 @@ public final class ChariotOfVictory extends CardImpl {
this.addAbility(ability);
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), false));
}
private ChariotOfVictory(final ChariotOfVictory card) {

View file

@ -35,7 +35,7 @@ public final class ChitinousCloak extends CardImpl {
ability.addEffect(effect);
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), false));
}
private ChitinousCloak(final ChitinousCloak card) {

View file

@ -32,8 +32,9 @@ public final class CivicSaber extends CardImpl {
// Equipped creature gets +1/+0 for each of its colors.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CivicSaberColorCount(), StaticValue.get(0), Duration.WhileOnBattlefield)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}
private CivicSaber(final CivicSaber card) {

View file

@ -38,7 +38,7 @@ public final class CloakAndDagger extends CardImpl {
Zone.BATTLEFIELD, new AttachEffect(Outcome.Detriment, "attach {this} to it"),
filter, true, SetTargetPointer.PERMANENT, null));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
this.addAbility(new EquipAbility(3, false));
}
private CloakAndDagger(final CloakAndDagger card) {

View file

@ -48,11 +48,11 @@ public final class CommandersPlate extends CardImpl {
// Equip commander {3}
this.addAbility(new EquipAbility(
Outcome.AddAbility, new GenericManaCost(3), new TargetPermanent(filter)
Outcome.AddAbility, new GenericManaCost(3), new TargetPermanent(filter), false
));
// Equip {5}
this.addAbility(new EquipAbility(5));
this.addAbility(new EquipAbility(5, false));
}
private CommandersPlate(final CommandersPlate card) {

View file

@ -41,7 +41,7 @@ public final class ConquerorsFlail extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConquerorsFlailEffect()));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private ConquerorsFlail(final ConquerorsFlail card) {

View file

@ -40,7 +40,7 @@ public final class CranialPlating extends CardImpl {
this.addAbility(ability);
// Equip {1}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), false));
}
private CranialPlating(final CranialPlating card) {

View file

@ -36,7 +36,7 @@ public final class DancingSword extends CardImpl {
).setTriggerPhrase("When equipped creature dies, "));
// Equip {1}
this.addAbility(new EquipAbility(1));
this.addAbility(new EquipAbility(1, false));
}
private DancingSword(final DancingSword card) {

View file

@ -24,9 +24,15 @@ public final class DarksteelAxe extends CardImpl {
public DarksteelAxe (UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}");
this.subtype.add(SubType.EQUIPMENT);
// Indestructible (Effects that say "destroy" don't destroy this artifact.)
this.addAbility(IndestructibleAbility.getInstance());
// Equipped creature gets +2/+0.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 0)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
public DarksteelAxe (final DarksteelAxe card) {

View file

@ -28,7 +28,7 @@ public final class DarksteelPlate extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
new GainAbilityAttachedEffect(IndestructibleAbility.getInstance(), AttachmentType.EQUIPMENT, Duration.WhileOnBattlefield)));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
public DarksteelPlate (final DarksteelPlate card) {

View file

@ -36,7 +36,7 @@ public final class Deathrender extends CardImpl {
// Whenever equipped creature dies, you may put a creature card from your hand onto the battlefield and attach Deathrender to it.
this.addAbility(new DiesAttachedTriggeredAbility(new DeathrenderEffect(), "equipped creature"));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
private Deathrender(final Deathrender card) {

View file

@ -25,11 +25,14 @@ public final class DemonmailHauberk extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{4}");
this.subtype.add(SubType.EQUIPMENT);
// Equip - Sacrifice a creature.
this.addAbility(new EquipAbility(Outcome.AddAbility, new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
// Equipped creature gets +4/+2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(4, 2)));
// Equip - Sacrifice a creature.
this.addAbility(new EquipAbility(
Outcome.AddAbility,
new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
false));
}
private DemonmailHauberk(final DemonmailHauberk card) {

View file

@ -34,7 +34,7 @@ public final class DemonspineWhip extends CardImpl {
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new XPaid(), StaticValue.get(0), Duration.EndOfTurn), new ManaCostsImpl("{X}")));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), false));
}
private DemonspineWhip(final DemonspineWhip card) {

View file

@ -55,7 +55,7 @@ public final class DivinersWand extends CardImpl {
filter, true, SetTargetPointer.PERMANENT, null));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), false));
}
private DivinersWand(final DivinersWand card) {

View file

@ -49,7 +49,7 @@ public final class DowsingDagger extends CardImpl {
this.addAbility(new DealsDamageToAPlayerAttachedTriggeredAbility(new TransformSourceEffect(), "equipped", true));
// Equip 2
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
private DowsingDagger(final DowsingDagger card) {

View file

@ -48,7 +48,7 @@ public final class DragonThroneOfTarkir extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), false));
}
private DragonThroneOfTarkir(final DragonThroneOfTarkir card) {

View file

@ -45,7 +45,7 @@ public final class DraugrsHelm extends CardImpl {
this.addAbility(ability);
// Equip {4}
this.addAbility(new EquipAbility(4));
this.addAbility(new EquipAbility(4, false));
}
private DraugrsHelm(final DraugrsHelm card) {

View file

@ -42,7 +42,7 @@ public final class DwarvenHammer extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3));
this.addAbility(new EquipAbility(3, false));
}
private DwarvenHammer(final DwarvenHammer card) {

View file

@ -66,7 +66,7 @@ public final class EaterOfVirtue extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new EaterOfVirtueGainAbilityAttachedEffect()));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), false));
}

View file

@ -27,7 +27,7 @@ public final class EchoCirclet extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new EchoCircletEffect()));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}
private EchoCirclet(final EchoCirclet card) {

View file

@ -38,7 +38,7 @@ public final class ElbrusTheBindingBlade extends CardImpl {
// When equipped creature deals combat damage to a player, unattach Elbrus, the Binding Blade, then transform it.
this.addAbility(new DealsDamageToAPlayerAttachedTriggeredAbility(new ElbrusTheBindingBladeEffect(), "equipped", true));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}
private ElbrusTheBindingBlade(final ElbrusTheBindingBlade card) {

View file

@ -42,7 +42,7 @@ public final class ElvenBow extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3));
this.addAbility(new EquipAbility(3, false));
}
private ElvenBow(final ElvenBow card) {

View file

@ -60,7 +60,7 @@ public final class Embercleave extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3));
this.addAbility(new EquipAbility(3, false));
}
private Embercleave(final Embercleave card) {

View file

@ -28,7 +28,7 @@ public final class EmpyrialPlate extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(CardsInControllerHandCount.instance, CardsInControllerHandCount.instance)));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private EmpyrialPlate(final EmpyrialPlate card) {

View file

@ -48,7 +48,7 @@ public final class Fiendlash extends CardImpl {
this.addAbility(new FiendlashTriggeredAbility());
// Equip {2}{R}
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{2}{R}")));
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{2}{R}"), false));
}
private Fiendlash(final Fiendlash card) {

View file

@ -24,9 +24,14 @@ public final class FlayerHusk extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}");
this.subtype.add(SubType.EQUIPMENT);
// Living weapon (When this Equipment enters the battlefield, create a 0/0 black Phyrexian Germ creature token, then attach this to it.)
this.addAbility(new LivingWeaponAbility());
// Equipped creature gets +1/+1
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private FlayerHusk(final FlayerHusk card) {

View file

@ -52,7 +52,7 @@ public final class ForebearsBlade extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), false));
}
private ForebearsBlade(final ForebearsBlade card) {

View file

@ -39,7 +39,7 @@ public final class FractalHarness extends CardImpl {
));
// Equip {2}
this.addAbility(new EquipAbility(2));
this.addAbility(new EquipAbility(2, false));
}
private FractalHarness(final FractalHarness card) {

View file

@ -54,7 +54,7 @@ public final class GateSmasher extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), target));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), target, false));
}

View file

@ -58,7 +58,8 @@ public final class GavelOfTheRighteous extends CardImpl {
new OrCost(
"Pay {3} or remove a counter from {this}",
new GenericManaCost(3), new RemoveCountersSourceCost()
)
),
false
));
}

View file

@ -30,7 +30,7 @@ public final class GhostfireBlade extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(2, 2)));
// Equip {3}
Ability ability = new EquipAbility(3);
Ability ability = new EquipAbility(3, false);
ability.setCostAdjuster(GhostfireBladeAdjuster.instance);
this.addAbility(ability);

View file

@ -51,7 +51,7 @@ public final class GiantsAmulet extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(2, false));
}
private GiantsAmulet(final GiantsAmulet card) {

View file

@ -39,7 +39,7 @@ public final class GoblinMorningstar extends CardImpl {
this.addAbility(ability);
// Equip {1}{R}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{1}{R}")));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{1}{R}"), false));
// When Goblin Morningstar enters the battlefield, roll a d20.
RollDieWithResultTableEffect effect = new RollDieWithResultTableEffect();

View file

@ -46,7 +46,7 @@ public final class Godsend extends CardImpl {
// Opponents can't cast cards with the same name as cards exiled with Godsend.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GodsendRuleModifyingEffect()));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), false));
}
private Godsend(final Godsend card) {

View file

@ -28,7 +28,7 @@ public final class GorgonsHead extends CardImpl {
// Equipped creature has deathtouch.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(DeathtouchAbility.getInstance(), AttachmentType.EQUIPMENT)));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl("{2}")));
this.addAbility(new EquipAbility(2, false));
}
private GorgonsHead(final GorgonsHead card) {

View file

@ -36,7 +36,7 @@ public final class GraftedExoskeleton extends CardImpl {
this.addAbility(new UnattachedTriggeredAbility(new SacrificeEquippedEffect(), false));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(2, false));
}
private GraftedExoskeleton(final GraftedExoskeleton card) {

View file

@ -34,7 +34,7 @@ public final class GrapplingHook extends CardImpl {
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
// Equip {4}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4), false));
}
private GrapplingHook(final GrapplingHook card) {

View file

@ -43,7 +43,7 @@ public final class GriftersBlade extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1)));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}

View file

@ -90,7 +90,7 @@ public final class HalvarGodOfBattle extends ModalDoubleFacesCard {
));
// Equip {1}{W}
this.getRightHalfCard().addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{1}{W}")));
this.getRightHalfCard().addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{1}{W}"), false));
}
private HalvarGodOfBattle(final HalvarGodOfBattle card) {

View file

@ -47,7 +47,7 @@ public final class HammerOfNazahn extends CardImpl {
this.addAbility(abilityEquipped);
// Equip {4}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4), false));
}

View file

@ -39,7 +39,7 @@ public final class HammerOfRuin extends CardImpl {
// Whenever equipped creature deals combat damage to a player, you may destroy target Equipment that player controls.
this.addAbility(new HammerOfRuinTriggeredAbility());
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
public HammerOfRuin (final HammerOfRuin card) {

View file

@ -42,12 +42,15 @@ public final class HandOfVecna extends CardImpl {
));
// EquipPay 1 life for each card in your hand.
this.addAbility(new EquipAbility(Outcome.Benefit, new PayLifeCost(
CardsInControllerHandCount.instance, "1 life for each card in your hand"
)));
this.addAbility(new EquipAbility(
Outcome.Benefit,
new PayLifeCost(
CardsInControllerHandCount.instance, "1 life for each card in your hand"),
false
));
// Equip {2}
this.addAbility(new EquipAbility(2));
this.addAbility(new EquipAbility(2, false));
}
private HandOfVecna(final HandOfVecna card) {

View file

@ -45,7 +45,7 @@ public final class HeavyArbalest extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability2, AttachmentType.EQUIPMENT)));
// Equip {4)
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), false));
}
private HeavyArbalest(final HeavyArbalest card) {

View file

@ -29,8 +29,12 @@ public final class HedronMatrix extends CardImpl {
public HedronMatrix (UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}");
this.subtype.add(SubType.EQUIPMENT);
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4)));
// Equipped creature gets +X/+X, where X is its mana value.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new HedronMatrixEffect()));
// Equip {4}
this.addAbility(new EquipAbility(4, false));
}
public HedronMatrix (final HedronMatrix card) {

View file

@ -40,7 +40,7 @@ public final class HeirloomBlade extends CardImpl {
this.addAbility(new DiesAttachedTriggeredAbility(new HeirloomBladeEffect(), "equipped creature", true));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), false));
}

View file

@ -63,7 +63,7 @@ public final class HelmOfKaldra extends CardImpl {
new HelmOfKaldraCondition(),
"{1}: If you control Equipment named Helm of Kaldra, Sword of Kaldra, and Shield of Kaldra, create a legendary 4/4 colorless Avatar creature token named Kaldra and attach those Equipment to it"));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.Benefit, new ManaCostsImpl("{2}")));
this.addAbility(new EquipAbility(Outcome.Benefit, new ManaCostsImpl<>("{2}"), false));
}
private HelmOfKaldra(final HelmOfKaldra card) {

View file

@ -40,7 +40,7 @@ public final class HelmOfTheHost extends CardImpl {
this.addAbility(ability);
// Equip {5}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(5)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(5), false));
}
private HelmOfTheHost(final HelmOfTheHost card) {

View file

@ -40,7 +40,7 @@ public final class HolyAvenger extends CardImpl {
this.addAbility(new DealsCombatDamageEquippedTriggeredAbility(new HolyAvengerEffect()));
// Equip {2}{W}
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{2}{W}")));
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{2}{W}"), false));
}
private HolyAvenger(final HolyAvenger card) {

View file

@ -31,7 +31,7 @@ public final class IllusionistsBracers extends CardImpl {
this.addAbility(new IllusionistsBracersTriggeredAbility());
// Equip 3
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), false));
}
private IllusionistsBracers(final IllusionistsBracers card) {

View file

@ -32,7 +32,7 @@ public final class InfiltrationLens extends CardImpl {
this.addAbility(new EquippedBecomesBlockedTriggeredAbility(new DrawCardSourceControllerEffect(2), true));
// Equip {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1)));
this.addAbility(new EquipAbility(1, false));
}
private InfiltrationLens(final InfiltrationLens card) {

View file

@ -31,7 +31,7 @@ public final class InquisitorsFlail extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new InquisitorsFlailEffect()));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(2, false));
}
private InquisitorsFlail(final InquisitorsFlail card) {

View file

@ -74,7 +74,7 @@ public final class KaldraCompleat extends CardImpl {
this.addAbility(ability);
// Equip {7}
this.addAbility(new EquipAbility(7));
this.addAbility(new EquipAbility(7, false));
}
private KaldraCompleat(final KaldraCompleat card) {

View file

@ -74,7 +74,7 @@ public final class KondasBanner extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new KondasBannerTypeBoostEffect()));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), target));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), target, false));
}

View file

@ -30,10 +30,15 @@ public final class Lashwrithe extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}");
this.subtype.add(SubType.EQUIPMENT);
// Living weapon (When this Equipment enters the battlefield, create a 0/0 black Phyrexian Germ creature token, then attach this to it.)
this.addAbility(new LivingWeaponAbility());
// Equipped creature gets +1/+1 for each Swamp you control.
PermanentsOnBattlefieldCount value = new PermanentsOnBattlefieldCount(filter);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(value, value)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl("{B/P}{B/P}")));
// Equip {B/P}{B/P} (Phyrexian Black can be paid with either Black or 2 life.)
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{B/P}{B/P}"), false));
}
private Lashwrithe(final Lashwrithe card) {

View file

@ -39,7 +39,7 @@ public final class LeatherArmor extends CardImpl {
this.addAbility(ability);
// Equip {0}. Activate only once each turn.
EquipAbility equipAbility = new EquipAbility(0);
EquipAbility equipAbility = new EquipAbility(0, false);
equipAbility.setMaxActivationsPerTurn(1);
this.addAbility(equipAbility);
}

View file

@ -22,8 +22,12 @@ public final class LeeringEmblem extends CardImpl {
public LeeringEmblem(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}");
this.subtype.add(SubType.EQUIPMENT);
// Whenever you cast a spell, equipped creature gets +2/+2 until end of turn.
this.addAbility(new SpellCastControllerTriggeredAbility(new BoostEquippedEffect(2, 2, Duration.EndOfTurn), false));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
}
private LeeringEmblem(final LeeringEmblem card) {

View file

@ -35,7 +35,7 @@ public final class LightningGreaves extends CardImpl {
ability.addEffect(effect);
this.addAbility(ability);
// Equip {0}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(0)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(0), false));
}
private LightningGreaves(final LightningGreaves card) {

View file

@ -45,7 +45,7 @@ public final class LightningSpear extends CardImpl {
this.addAbility(ability);
// Equip {1}
this.addAbility(new EquipAbility(1));
this.addAbility(new EquipAbility(1, false));
}
private LightningSpear(final LightningSpear card) {

View file

@ -32,11 +32,15 @@ public final class LivewireLash extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}");
this.subtype.add(SubType.EQUIPMENT);
// Equipped creature gets +2/+0
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 0)));
// and has "Whenever this creature becomes the target of a spell, this creature deals 2 damage to any target."
LivewireLashAbility ability = new LivewireLashAbility();
ability.addTarget(new TargetAnyTarget());
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability, AttachmentType.EQUIPMENT)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2)));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), false));
}
private LivewireLash(final LivewireLash card) {

View file

@ -36,7 +36,7 @@ public final class LobeLobber extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability, AttachmentType.EQUIPMENT)));
// Equip 2
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
private LobeLobber(final LobeLobber card) {

View file

@ -38,7 +38,7 @@ public final class LoxodonWarhammer extends CardImpl {
this.addAbility(ability);
// Equip (: Attach to target creature you control. Equip only as a sorcery.)
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), false));
}
private LoxodonWarhammer(final LoxodonWarhammer card) {

View file

@ -42,7 +42,7 @@ public final class Lucille extends CardImpl {
this.addAbility(new AttacksAttachedTriggeredAbility(new LucilleEffect()));
// Equip {4}
this.addAbility(new EquipAbility(4));
this.addAbility(new EquipAbility(4, false));
}
private Lucille(final Lucille card) {

View file

@ -43,10 +43,10 @@ public final class LuxiorGiadasGift extends CardImpl {
this.addAbility(new SimpleStaticAbility(new LuxiorGiadasGiftEffect()));
// Equip planeswalker {1}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetPermanent(filter)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetPermanent(filter), false));
// Equip {3}
this.addAbility(new EquipAbility(3));
this.addAbility(new EquipAbility(3, false));
}
private LuxiorGiadasGift(final LuxiorGiadasGift card) {

View file

@ -46,7 +46,7 @@ public final class MaceOfTheValiant extends CardImpl {
));
// Equip {3}
this.addAbility(new EquipAbility(3));
this.addAbility(new EquipAbility(3, false));
}
private MaceOfTheValiant(final MaceOfTheValiant card) {

View file

@ -30,7 +30,7 @@ public final class MageSlayer extends CardImpl {
this.addAbility(new AttacksAttachedTriggeredAbility(new MageSlayerEffect(), false));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.Benefit, new GenericManaCost(3), new TargetControlledCreaturePermanent()));
this.addAbility(new EquipAbility(Outcome.Benefit, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private MageSlayer(final MageSlayer card) {

View file

@ -30,7 +30,7 @@ public final class ManaforceMace extends CardImpl {
).addHint(DomainHint.instance).setAbilityWord(AbilityWord.DOMAIN));
// Equip {3}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3)));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), false));
}
private ManaforceMace(final ManaforceMace card) {

View file

@ -23,15 +23,15 @@ public final class MaskOfAvacyn extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}");
this.subtype.add(SubType.EQUIPMENT);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
// Equipped creature gets +1/+2 and has hexproof.
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 2));
Effect effect = new GainAbilityAttachedEffect(HexproofAbility.getInstance(), AttachmentType.EQUIPMENT);
effect.setText("and has hexproof");
ability.addEffect(effect);
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3), false));
}
private MaskOfAvacyn(final MaskOfAvacyn card) {

View file

@ -40,7 +40,7 @@ public final class MaskOfGriselbrand extends CardImpl {
this.addAbility(new DiesAttachedTriggeredAbility(new MaskOfGriselbrandEffect(), "equipped creature"));
// Equip {3}
this.addAbility(new EquipAbility(3));
this.addAbility(new EquipAbility(3, false));
}
private MaskOfGriselbrand(final MaskOfGriselbrand card) {

View file

@ -28,7 +28,7 @@ public final class MaskOfRiddles extends CardImpl {
// Whenever equipped creature deals combat damage to a player, you may draw a card.
this.addAbility(new DealsDamageToAPlayerAttachedTriggeredAbility(new DrawCardSourceControllerEffect(1), "equipped", true));
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
}
private MaskOfRiddles(final MaskOfRiddles card) {

View file

@ -31,7 +31,7 @@ public final class MaskOfTheSchemer extends CardImpl {
));
// Equip {2}
this.addAbility(new EquipAbility(2));
this.addAbility(new EquipAbility(2, false));
}
private MaskOfTheSchemer(final MaskOfTheSchemer card) {

View file

@ -48,7 +48,7 @@ public final class MaulOfTheSkyclaves extends CardImpl {
this.addAbility(ability);
// Equip {2}{W}{W}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{2}{W}{W}")));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{2}{W}{W}"), false));
}
private MaulOfTheSkyclaves(final MaulOfTheSkyclaves card) {

View file

@ -33,7 +33,7 @@ public final class MeteoricMace extends CardImpl {
this.addAbility(ability);
// Equip {4}
this.addAbility(new EquipAbility(4));
this.addAbility(new EquipAbility(4, false));
// Cascade
this.addAbility(new CascadeAbility());

View file

@ -44,7 +44,7 @@ public final class MindCarver extends CardImpl {
)).addHint(CardsInOpponentGraveyardCondition.EIGHT.getHint()));
// Equip {2}{B}
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{2}{B}")));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new ManaCostsImpl<>("{2}{B}"), false));
}
private MindCarver(final MindCarver card) {

View file

@ -30,7 +30,7 @@ public final class MoonsilverSpear extends CardImpl {
this.addAbility(new AttacksAttachedTriggeredAbility(new CreateTokenEffect(new AngelToken())));
// Equip {4}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4)));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4), false));
}
private MoonsilverSpear(final MoonsilverSpear card) {

Some files were not shown because too many files have changed in this diff Show more