This commit is contained in:
Jeff Wadsworth 2022-06-24 15:31:35 -05:00
parent 227ae8c2e2
commit 48a96e5e8f
95 changed files with 260 additions and 101 deletions

View file

@ -13,6 +13,7 @@ import mage.abilities.keyword.FirstStrikeAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -37,7 +38,7 @@ public final class AshmouthBlade extends CardImpl {
ability.addEffect(effect);
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private AshmouthBlade(final AshmouthBlade card) {

View file

@ -13,6 +13,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -28,7 +29,7 @@ public final class BarbedBattlegear extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(4, -1)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.Neutral, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
public BarbedBattlegear (final BarbedBattlegear card) {

View file

@ -12,6 +12,9 @@ import mage.constants.SubType;
import mage.game.permanent.token.ThopterColorlessToken;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -32,7 +35,7 @@ public final class BarbedSpike extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(1, 0)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private BarbedSpike(final BarbedSpike card) {

View file

@ -15,6 +15,9 @@ import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -40,7 +43,7 @@ public final class Batterbone extends CardImpl {
this.addAbility(ability);
// Equip {5}
this.addAbility(new EquipAbility(5, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(5), new TargetControlledCreaturePermanent(), false));
}
private Batterbone(final Batterbone card) {

View file

@ -18,6 +18,7 @@ import mage.game.permanent.Permanent;
import mage.game.stack.StackAbility;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -38,7 +39,7 @@ public final class BattlemagesBracers extends CardImpl {
this.addAbility(new BattlemagesBracersTriggeredAbility());
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private BattlemagesBracers(final BattlemagesBracers card) {

View file

@ -16,6 +16,9 @@ import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.Predicates;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -46,7 +49,7 @@ public final class BeardedAxe extends CardImpl {
).addHint(hint));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private BeardedAxe(final BeardedAxe card) {

View file

@ -14,6 +14,9 @@ import mage.game.permanent.Permanent;
import mage.util.CardUtil;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -30,7 +33,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, false);
EquipAbility ability = new EquipAbility(Outcome.BoostCreature, new GenericManaCost(10), new TargetControlledCreaturePermanent(), 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

@ -14,6 +14,7 @@ import mage.constants.SubType;
import mage.counters.CounterType;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -29,7 +30,7 @@ public final class BladeOfTheBloodchief extends CardImpl {
this.addAbility(new DiesCreatureTriggeredAbility(new BladeOfTheBloodchiefEffect(), false));
//Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private BladeOfTheBloodchief(final BladeOfTheBloodchief card) {

View file

@ -13,6 +13,9 @@ import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author Loki
@ -34,7 +37,7 @@ public final class BladedPinions extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
public BladedPinions(final BladedPinions card) {

View file

@ -23,6 +23,8 @@ import mage.players.Player;
import mage.target.common.TargetAnyTarget;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -43,7 +45,7 @@ public final class BlazingSunsteel extends CardImpl {
this.addAbility(new BlazingSunsteelTriggeredAbility());
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private BlazingSunsteel(final BlazingSunsteel card) {

View file

@ -56,10 +56,10 @@ class BrilliantRestorationEffect extends OneShotEffect {
@Override
public boolean apply(Game game, Ability source) {
Player player = game.getPlayer(source.getControllerId());
if (player == null) {
Player controller = game.getPlayer(source.getControllerId());
if (controller == null) {
return false;
}
return player.moveCards(player.getGraveyard().getCards(filter, game), Zone.BATTLEFIELD, source, game);
return controller.moveCards(controller.getGraveyard().getCards(filter, game), Zone.BATTLEFIELD, source, game);
}
}

View file

@ -13,6 +13,7 @@ import mage.abilities.keyword.HexproofAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -35,7 +36,7 @@ public final class ChampionsHelm extends CardImpl {
new EquippedHasSupertypeCondition(SuperType.LEGENDARY), staticText)));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private ChampionsHelm(final ChampionsHelm card) {

View file

@ -19,6 +19,7 @@ import mage.constants.Outcome;
import mage.constants.Zone;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -34,7 +35,7 @@ public final class CivicSaber extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(new CivicSaberColorCount(), StaticValue.get(0), Duration.WhileOnBattlefield)));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private CivicSaber(final CivicSaber card) {

View file

@ -15,6 +15,7 @@ import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -38,7 +39,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(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private CloakAndDagger(final CloakAndDagger card) {

View file

@ -24,6 +24,7 @@ import mage.target.targetpointer.FixedTarget;
import java.util.Set;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -52,7 +53,7 @@ public final class CommandersPlate extends CardImpl {
));
// Equip {5}
this.addAbility(new EquipAbility(5, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(5), new TargetControlledCreaturePermanent(), false));
}
private CommandersPlate(final CommandersPlate card) {

View file

@ -16,6 +16,7 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -36,7 +37,7 @@ public final class DancingSword extends CardImpl {
).setTriggerPhrase("When equipped creature dies, "));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private DancingSword(final DancingSword card) {

View file

@ -5,6 +5,7 @@ import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.CreateTokenAttachSourceEffect;
import mage.abilities.effects.common.DoIfCostPaid;
@ -17,7 +18,9 @@ import mage.constants.SubType;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.game.permanent.token.ZombieBerserkerToken;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -45,7 +48,7 @@ public final class DraugrsHelm extends CardImpl {
this.addAbility(ability);
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private DraugrsHelm(final DraugrsHelm card) {

View file

@ -18,6 +18,8 @@ import mage.constants.SubType;
import mage.game.permanent.token.DwarfBerserkerToken;
import java.util.UUID;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -42,7 +44,7 @@ public final class DwarvenHammer extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private DwarvenHammer(final DwarvenHammer card) {

View file

@ -12,6 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@ -27,7 +28,7 @@ public final class EchoCirclet extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new EchoCircletEffect()));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private EchoCirclet(final EchoCirclet card) {

View file

@ -19,6 +19,7 @@ import mage.constants.SuperType;
import mage.constants.Zone;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author BetaSteward
@ -38,7 +39,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(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private ElbrusTheBindingBlade(final ElbrusTheBindingBlade card) {

View file

@ -18,6 +18,8 @@ import mage.constants.SubType;
import mage.game.permanent.token.ElfWarriorToken;
import java.util.UUID;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -42,7 +44,7 @@ public final class ElvenBow extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private ElvenBow(final ElvenBow card) {

View file

@ -19,6 +19,8 @@ import mage.constants.*;
import mage.filter.StaticFilters;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -54,7 +56,7 @@ public final class Embercleave extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private Embercleave(final Embercleave card) {

View file

@ -24,6 +24,7 @@ import mage.game.events.DamagedPermanentBatchEvent;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
@ -48,7 +49,7 @@ public final class Fiendlash extends CardImpl {
this.addAbility(new FiendlashTriggeredAbility());
// Equip {2}{R}
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{2}{R}"), false));
this.addAbility(new EquipAbility(Outcome.AddAbility, new ManaCostsImpl<>("{2}{R}"), new TargetControlledCreaturePermanent(), false));
}
private Fiendlash(final Fiendlash card) {
@ -79,7 +80,7 @@ class FiendlashTriggeredAbility extends TriggeredAbilityImpl {
@Override
public boolean checkEventType(GameEvent event, Game game) {
return event.getType() == GameEvent.EventType.DAMAGED_PERMANENT_BATCH;
return event.getType() == GameEvent.EventType.DAMAGED_PERMANENT;//DAMAGED_PERMANENT_BATCH;
}
@Override
@ -93,7 +94,7 @@ class FiendlashTriggeredAbility extends TriggeredAbilityImpl {
if (attachedCreature == null) {
return false;
}
System.out.println("We get here in the trigger of Fiendlash!!");
game.getState().setValue("Fiendlash" + equipment.getId(), attachedCreature);
DamagedPermanentBatchEvent dEvent = (DamagedPermanentBatchEvent) event;

View file

@ -19,6 +19,8 @@ import mage.game.permanent.token.FractalToken;
import mage.game.permanent.token.Token;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -39,7 +41,7 @@ public final class FractalHarness extends CardImpl {
));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private FractalHarness(final FractalHarness card) {

View file

@ -13,6 +13,9 @@ import mage.filter.StaticFilters;
import mage.target.common.TargetCardInYourGraveyard;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -30,7 +33,7 @@ public final class GhostLantern extends AdventureCard {
), false, StaticFilters.FILTER_CONTROLLED_A_CREATURE));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
// Bind Spirit
// Return target creature card from your graveyard to your hand.

View file

@ -16,6 +16,9 @@ import mage.util.CardUtil;
import java.util.Objects;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author LevelX2
@ -30,7 +33,7 @@ public final class GhostfireBlade extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(2, 2)));
// Equip {3}
Ability ability = new EquipAbility(3, false);
Ability ability = new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false);
ability.setCostAdjuster(GhostfireBladeAdjuster.instance);
this.addAbility(ability);

View file

@ -21,6 +21,7 @@ import mage.constants.*;
import mage.game.permanent.token.GiantWizardToken;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author ciaccona007
@ -51,7 +52,7 @@ public final class GiantsAmulet extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private GiantsAmulet(final GiantsAmulet card) {

View file

@ -3,6 +3,7 @@ package mage.cards.g;
import java.util.UUID;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
import mage.abilities.keyword.DeathtouchAbility;
@ -14,6 +15,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -28,7 +30,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(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private GorgonsHead(final GorgonsHead card) {

View file

@ -17,6 +17,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -36,7 +37,7 @@ public final class GraftedExoskeleton extends CardImpl {
this.addAbility(new UnattachedTriggeredAbility(new SacrificeEquippedEffect(), false));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private GraftedExoskeleton(final GraftedExoskeleton 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(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}

View file

@ -24,6 +24,8 @@ import mage.target.targetpointer.FixedTarget;
import java.util.List;
import java.util.UUID;
import java.util.stream.Collectors;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -50,7 +52,7 @@ public final class HandOfVecna extends CardImpl {
));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private HandOfVecna(final HandOfVecna card) {

View file

@ -19,6 +19,7 @@ import mage.constants.SubLayer;
import mage.constants.Zone;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -34,7 +35,7 @@ public final class HedronMatrix extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new HedronMatrixEffect()));
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
public HedronMatrix (final HedronMatrix card) {

View file

@ -14,6 +14,9 @@ import mage.constants.SubType;
import mage.game.permanent.token.SoldierToken;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -31,7 +34,7 @@ public final class HornOfValhalla extends AdventureCard {
).setText("equipped creature gets +1/+1 for each creature you control")).addHint(CreaturesYouControlHint.instance));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
// Ysgard's Call
// Create X 1/1 white Soldier creature tokens.

View file

@ -17,6 +17,7 @@ import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -32,7 +33,7 @@ public final class InfiltrationLens extends CardImpl {
this.addAbility(new EquippedBecomesBlockedTriggeredAbility(new DrawCardSourceControllerEffect(2), true));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private InfiltrationLens(final InfiltrationLens card) {

View file

@ -16,6 +16,7 @@ import mage.game.permanent.Permanent;
import mage.util.CardUtil;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author nantuko
@ -31,7 +32,7 @@ public final class InquisitorsFlail extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new InquisitorsFlailEffect()));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private InquisitorsFlail(final InquisitorsFlail card) {

View file

@ -5,6 +5,7 @@ import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.DealsDamageToACreatureTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.ExileTargetEffect;
import mage.abilities.effects.common.continuous.BoostEquippedEffect;
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
@ -13,6 +14,7 @@ import mage.constants.*;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -74,7 +76,7 @@ public final class KaldraCompleat extends CardImpl {
this.addAbility(ability);
// Equip {7}
this.addAbility(new EquipAbility(7, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(7), new TargetControlledCreaturePermanent(), false));
}
private KaldraCompleat(final KaldraCompleat card) {

View file

@ -15,6 +15,8 @@ import mage.constants.SubType;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -39,7 +41,7 @@ public final class LeatherArmor extends CardImpl {
this.addAbility(ability);
// Equip {0}. Activate only once each turn.
EquipAbility equipAbility = new EquipAbility(0, false);
EquipAbility equipAbility = new EquipAbility(Outcome.BoostCreature, new GenericManaCost(0), new TargetControlledCreaturePermanent(), false);
equipAbility.setMaxActivationsPerTurn(1);
this.addAbility(equipAbility);
}

View file

@ -12,6 +12,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -27,7 +28,7 @@ public final class LeeringEmblem extends CardImpl {
this.addAbility(new SpellCastControllerTriggeredAbility(new BoostEquippedEffect(2, 2, Duration.EndOfTurn), false));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private LeeringEmblem(final LeeringEmblem card) {

View file

@ -18,6 +18,9 @@ import mage.constants.SubType;
import mage.target.common.TargetAnyTarget;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -45,7 +48,7 @@ public final class LightningSpear extends CardImpl {
this.addAbility(ability);
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private LightningSpear(final LightningSpear card) {

View file

@ -19,6 +19,7 @@ import mage.target.TargetPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
/**
* @author TheElk801
@ -42,7 +43,7 @@ public final class Lucille extends CardImpl {
this.addAbility(new AttacksAttachedTriggeredAbility(new LucilleEffect()));
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private Lucille(final Lucille card) {

View file

@ -20,6 +20,7 @@ import mage.target.TargetPermanent;
import java.util.*;
import java.util.stream.IntStream;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -46,7 +47,7 @@ public final class LuxiorGiadasGift extends CardImpl {
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetPermanent(filter), false));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private LuxiorGiadasGift(final LuxiorGiadasGift card) {

View file

@ -19,6 +19,9 @@ import mage.counters.CounterType;
import mage.filter.StaticFilters;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -46,7 +49,7 @@ public final class MaceOfTheValiant extends CardImpl {
));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private MaceOfTheValiant(final MaceOfTheValiant card) {

View file

@ -7,6 +7,7 @@ import mage.abilities.common.DiesAttachedTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.Cost;
import mage.abilities.costs.common.PayLifeCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.continuous.GainAbilityAttachedEffect;
import mage.abilities.keyword.EquipAbility;
@ -18,6 +19,7 @@ import mage.cards.CardSetInfo;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -40,7 +42,7 @@ public final class MaskOfGriselbrand extends CardImpl {
this.addAbility(new DiesAttachedTriggeredAbility(new MaskOfGriselbrandEffect(), "equipped creature"));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private MaskOfGriselbrand(final MaskOfGriselbrand card) {

View file

@ -14,6 +14,8 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -31,7 +33,7 @@ public final class MaskOfTheSchemer extends CardImpl {
));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private MaskOfTheSchemer(final MaskOfTheSchemer card) {

View file

@ -14,6 +14,9 @@ import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -33,7 +36,7 @@ public final class MeteoricMace extends CardImpl {
this.addAbility(ability);
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
// Cascade
this.addAbility(new CascadeAbility());

View file

@ -22,6 +22,9 @@ import mage.constants.SubType;
import mage.filter.common.FilterControlledPermanent;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -76,7 +79,7 @@ public final class MulticlassBaldric extends CardImpl {
)).addHint(PartyCountHint.instance));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private MulticlassBaldric(final MulticlassBaldric card) {

View file

@ -18,6 +18,7 @@ import mage.constants.Outcome;
import mage.constants.Zone;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author halljared
@ -38,7 +39,7 @@ public final class NeglectedHeirloom extends CardImpl {
this.addAbility(new NeglectedHeirloomTriggeredAbility());
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private NeglectedHeirloom(final NeglectedHeirloom card) {

View file

@ -17,6 +17,9 @@ import mage.filter.FilterPermanent;
import mage.filter.common.FilterArtifactOrEnchantmentPermanent;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -47,7 +50,7 @@ public final class Nettlecyst extends CardImpl {
).addHint(hint));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private Nettlecyst(final Nettlecyst card) {

View file

@ -27,6 +27,7 @@ import mage.target.targetpointer.FixedTarget;
import mage.util.ManaUtil;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author nantuko
@ -54,7 +55,7 @@ public final class NimDeathmantle extends CardImpl {
this.addAbility(new NimDeathmantleTriggeredAbility());
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private NimDeathmantle(final NimDeathmantle card) {

View file

@ -15,6 +15,7 @@ import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -38,7 +39,7 @@ public final class ObsidianBattleAxe extends CardImpl {
Zone.BATTLEFIELD, new AttachEffect(Outcome.Detriment, "attach {this} to it"),
filter, true, SetTargetPointer.PERMANENT, null));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private ObsidianBattleAxe(final ObsidianBattleAxe card) {

View file

@ -13,6 +13,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -28,7 +29,7 @@ public final class OgresCleaver extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(5, 0)));
// Equip {5}
this.addAbility(new EquipAbility(5, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(5), new TargetControlledCreaturePermanent(), false));
}
public OgresCleaver (final OgresCleaver card) {

View file

@ -18,6 +18,7 @@ import mage.game.Game;
import mage.game.events.DamagePlayerEvent;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -33,7 +34,7 @@ public final class PariahsShield extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PariahEffect()));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private PariahsShield(final PariahsShield card) {

View file

@ -13,6 +13,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -29,7 +30,7 @@ public final class PeregrineMask extends CardImpl {
ability.addEffect(new GainAbilityAttachedEffect(FirstStrikeAbility.getInstance(), AttachmentType.EQUIPMENT));
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private PeregrineMask(final PeregrineMask card) {

View file

@ -21,6 +21,7 @@ import mage.filter.common.FilterEquipmentPermanent;
import mage.filter.predicate.mageobject.AnotherPredicate;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.util.CardUtil;
/**
@ -46,7 +47,7 @@ public final class PlateArmor extends CardImpl {
this.addAbility(ability);
// Equip {3}. This ability costs {1} less to activate for each other Equipment you control.
EquipAbility equipAbility = new EquipAbility(3, false);
EquipAbility equipAbility = new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false);
equipAbility.setCostAdjuster(PlateArmorAdjuster.instance);
equipAbility.setCostReduceText("This ability costs {1} less to activate for each other Equipment you control.");
this.addAbility(equipAbility.addHint(PlateArmorAdjuster.getHint()));

View file

@ -25,6 +25,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
@ -54,7 +55,7 @@ public final class RakdosRiteknife extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private RakdosRiteknife(final RakdosRiteknife card) {

View file

@ -22,6 +22,7 @@ import mage.players.Player;
import mage.target.common.TargetAnyTarget;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author jeffwadsworth
@ -41,7 +42,7 @@ public final class RazorBoomerang extends CardImpl {
)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private RazorBoomerang(final RazorBoomerang card) {

View file

@ -13,6 +13,9 @@ import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -36,7 +39,7 @@ public final class RelicAxe extends CardImpl {
)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private RelicAxe(final RelicAxe card) {

View file

@ -16,6 +16,8 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -36,7 +38,7 @@ public final class RobeOfStars extends CardImpl {
).withFlavorWord("Astral Projection"));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private RobeOfStars(final RobeOfStars card) {

View file

@ -16,6 +16,7 @@ import mage.filter.predicate.Predicates;
import mage.target.TargetPermanent;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -45,7 +46,7 @@ public final class RobeOfTheArchmagi extends CardImpl {
));
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
// Equip Shaman, Warlock, or Wizard {1}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), new TargetPermanent(filter), false));

View file

@ -18,6 +18,7 @@ import mage.filter.FilterCard;
import mage.filter.predicate.Predicates;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author nantuko
@ -46,7 +47,7 @@ public final class RunechantersPike extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private RunechantersPike(final RunechantersPike card) {

View file

@ -22,6 +22,8 @@ import mage.target.common.TargetCardInLibrary;
import mage.target.common.TargetCardInYourGraveyard;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -40,7 +42,7 @@ public final class RunedCrown extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(1, 1)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private RunedCrown(final RunedCrown card) {

View file

@ -12,6 +12,8 @@ import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.PowerPredicate;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -38,7 +40,7 @@ public final class SaddleOfTheCavalier extends CardImpl {
this.addAbility(ability);
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private SaddleOfTheCavalier(final SaddleOfTheCavalier card) {

View file

@ -17,6 +17,9 @@ import mage.constants.SubType;
import mage.game.permanent.token.CitizenGreenWhiteToken;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -41,7 +44,7 @@ public final class ScepterOfCelebration extends CardImpl {
), "equipped", false));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private ScepterOfCelebration(final ScepterOfCelebration card) {

View file

@ -14,6 +14,7 @@ import mage.abilities.keyword.MenaceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -40,7 +41,7 @@ public final class ScroungedScythe extends CardImpl {
"<i>(It can't be blocked except by two or more creatures.)</i>")));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private ScroungedScythe(final ScroungedScythe card) {

View file

@ -20,6 +20,8 @@ import mage.players.Player;
import java.util.Objects;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -38,7 +40,7 @@ public final class SeraphicGreatsword extends CardImpl {
this.addAbility(new SeraphicGreatswordTriggeredAbility());
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private SeraphicGreatsword(final SeraphicGreatsword card) {

View file

@ -14,6 +14,7 @@ import mage.constants.*;
import mage.filter.FilterPermanent;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -52,7 +53,7 @@ public final class Shadowspear extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private Shadowspear(final Shadowspear card) {

View file

@ -13,6 +13,7 @@ import mage.abilities.keyword.FirstStrikeAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -33,7 +34,7 @@ public final class SharpenedPitchfork extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new BoostEquippedEffect(1, 1), new EquippedHasSubtypeCondition(SubType.HUMAN), staticText)));
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private SharpenedPitchfork(final SharpenedPitchfork card) {

View file

@ -4,6 +4,7 @@ import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.AttacksAttachedTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.continuous.AddCardSubtypeAttachedEffect;
import mage.abilities.effects.common.continuous.BoostEquippedEffect;
@ -16,8 +17,10 @@ import mage.cards.CardSetInfo;
import mage.constants.AttachmentType;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.game.permanent.token.KnightToken;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -52,7 +55,7 @@ public final class SigiledSwordOfValeron extends CardImpl {
));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private SigiledSwordOfValeron(final SigiledSwordOfValeron card) {

View file

@ -14,6 +14,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author nantuko
@ -33,7 +34,7 @@ public final class SilverInlaidDagger extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new BoostEquippedEffect(1, 0), new EquippedHasSubtypeCondition(SubType.HUMAN), staticText)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private SilverInlaidDagger(final SilverInlaidDagger card) {

View file

@ -19,6 +19,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -41,7 +42,7 @@ public final class SkeletonKey extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private SkeletonKey(final SkeletonKey card) {

View file

@ -20,6 +20,7 @@ import mage.game.events.GameEvent.EventType;
import mage.game.events.ZoneChangeEvent;
import mage.game.permanent.Permanent;
import mage.game.permanent.token.SpiritWhiteToken;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -38,7 +39,7 @@ public final class SlayersPlate extends CardImpl {
this.addAbility(new SlayersPlateTriggeredAbility());
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private SlayersPlate(final SlayersPlate card) {

View file

@ -19,6 +19,7 @@ import mage.constants.AttachmentType;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
@ -46,7 +47,7 @@ public final class SorcerersWand extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability, AttachmentType.EQUIPMENT)));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private SorcerersWand(final SorcerersWand card) {

View file

@ -16,6 +16,8 @@ import mage.game.Game;
import mage.players.Player;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -38,7 +40,7 @@ public final class SoulstealerAxe extends CardImpl {
));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private SoulstealerAxe(final SoulstealerAxe card) {

View file

@ -19,6 +19,7 @@ import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.TargetCard;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.util.CardUtil;
import org.apache.log4j.Logger;
@ -44,7 +45,7 @@ public final class Spellbinder extends CardImpl {
this.addAbility(new SpellbinderTriggeredAbility());
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private Spellbinder(final Spellbinder card) {

View file

@ -34,7 +34,7 @@ public final class SteelclawLance extends CardImpl {
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(1), new TargetControlledCreaturePermanent(filter), false));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}

View file

@ -30,6 +30,7 @@ import mage.game.events.GameEvent.EventType;
import mage.game.permanent.Permanent;
import mage.game.permanent.token.DragonTokenGold;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.targetpointer.FixedTarget;
/**
@ -60,7 +61,7 @@ public final class SwordOfDungeonsAndDragons extends CardImpl {
this.addAbility(new SwordOfDungeonsAndDragonsAbility());
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private SwordOfDungeonsAndDragons(final SwordOfDungeonsAndDragons card) {

View file

@ -20,6 +20,7 @@ import mage.target.common.TargetArtifactPermanent;
import mage.target.common.TargetPlaneswalkerPermanent;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -49,7 +50,7 @@ public final class SwordOfSinewAndSteel extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private SwordOfSinewAndSteel(final SwordOfSinewAndSteel card) {

View file

@ -18,6 +18,7 @@ import mage.filter.StaticFilters;
import mage.target.common.TargetCardInLibrary;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -37,7 +38,7 @@ public final class SwordOfTheAnimist extends CardImpl {
TargetCardInLibrary target = new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND);
this.addAbility(new AttacksAttachedTriggeredAbility(new SearchLibraryPutInPlayEffect(target, true), true));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private SwordOfTheAnimist(final SwordOfTheAnimist card) {

View file

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

View file

@ -20,6 +20,7 @@ import mage.filter.predicate.permanent.TokenPredicate;
import mage.target.TargetPermanent;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -53,7 +54,7 @@ public final class TeamPennant extends CardImpl {
));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private TeamPennant(final TeamPennant card) {

View file

@ -27,6 +27,7 @@ import mage.watchers.Watcher;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@ -52,7 +53,7 @@ public final class ThirstingAxe extends CardImpl {
this.addAbility(sacrificeTriggeredAbility, new CombatDamageToCreatureWatcher());
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private ThirstingAxe(final ThirstingAxe card) {

View file

@ -20,6 +20,7 @@ import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.common.TargetAnyTarget;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -50,7 +51,7 @@ public final class ThornbiteStaff extends CardImpl {
Zone.BATTLEFIELD, new AttachEffect(Outcome.Detriment, "attach {this} to it"),
filter, true, SetTargetPointer.PERMANENT, null));
// Equip {4}
this.addAbility(new EquipAbility(4, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4), new TargetControlledCreaturePermanent(), false));
}
private ThornbiteStaff(final ThornbiteStaff card) {

View file

@ -12,6 +12,7 @@ import mage.filter.common.FilterControlledLandPermanent;
import mage.filter.predicate.Predicates;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author North
@ -34,7 +35,7 @@ public final class TrailblazersBoots extends CardImpl {
)));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private TrailblazersBoots(final TrailblazersBoots card) {

View file

@ -17,6 +17,9 @@ import mage.constants.SubType;
import mage.game.Game;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -34,7 +37,7 @@ public final class TrickstersTalisman extends CardImpl {
this.addAbility(ability.withFlavorWord("Invoke Duplicity"));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private TrickstersTalisman(final TrickstersTalisman card) {

View file

@ -16,6 +16,8 @@ import mage.constants.Duration;
import mage.constants.SubType;
import java.util.UUID;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -33,7 +35,7 @@ public final class UmbralMantle extends CardImpl {
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(ability, AttachmentType.EQUIPMENT)));
// Equip {0}
this.addAbility(new EquipAbility(0, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(0), new TargetControlledCreaturePermanent(), false));
}
private UmbralMantle(final UmbralMantle card) {

View file

@ -18,6 +18,7 @@ import mage.counters.CounterType;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author Loki
@ -51,7 +52,7 @@ public final class UmezawasJitte extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), false));
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private UmezawasJitte(final UmezawasJitte card) {

View file

@ -23,6 +23,8 @@ import mage.players.Player;
import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author jeffwadsworth
@ -45,7 +47,7 @@ public final class UnscytheKillerOfKings extends CardImpl {
this.addAbility(new UnscytheKillerOfKingsTriggeredAbility(new UnscytheEffect()));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private UnscytheKillerOfKings(final UnscytheKillerOfKings card) {

View file

@ -14,6 +14,9 @@ import mage.constants.SubType;
import mage.game.permanent.token.AngelWarriorVigilanceToken;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -34,7 +37,7 @@ public final class ValkyriesSword extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(2, 1)));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private ValkyriesSword(final ValkyriesSword card) {

View file

@ -14,6 +14,9 @@ import mage.constants.SubType;
import mage.filter.common.FilterControlledLandPermanent;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -39,7 +42,7 @@ public final class VectisGloves extends CardImpl {
this.addAbility(ability);
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private VectisGloves(final VectisGloves card) {

View file

@ -18,6 +18,7 @@ import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
@ -46,7 +47,7 @@ public final class VeteransArmaments extends CardImpl {
filter, true, SetTargetPointer.PERMANENT, null));
// Equip {2}
this.addAbility(new EquipAbility(2, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(2), new TargetControlledCreaturePermanent(), false));
}
private VeteransArmaments(final VeteransArmaments card) {

View file

@ -16,6 +16,8 @@ import mage.filter.FilterPermanent;
import mage.game.permanent.token.ZombieToken;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author zeffirojoe
@ -48,7 +50,7 @@ public final class WandOfOrcus extends CardImpl {
false));
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private WandOfOrcus(final WandOfOrcus card) {

View file

@ -21,6 +21,8 @@ import mage.watchers.Watcher;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -44,7 +46,7 @@ public final class WhispersteelDagger extends CardImpl {
this.addAbility(ability, new WhispersteelDaggerWatcher());
// Equip {3}
this.addAbility(new EquipAbility(3, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(3), new TargetControlledCreaturePermanent(), false));
}
private WhispersteelDagger(final WhispersteelDagger card) {

View file

@ -14,6 +14,8 @@ import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
import mage.constants.Outcome;
import mage.target.common.TargetControlledCreaturePermanent;
/**
* @author TheElk801
@ -37,7 +39,7 @@ public final class WingedBoots extends CardImpl {
this.addAbility(ability);
// Equip {1}
this.addAbility(new EquipAbility(1, false));
this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(1), new TargetControlledCreaturePermanent(), false));
}
private WingedBoots(final WingedBoots card) {

View file

@ -8,7 +8,6 @@ import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.common.continuous.HasSubtypesSourceEffect;
import mage.abilities.keyword.ChangelingAbility;
import mage.abilities.keyword.FlashbackAbility;
import mage.abilities.keyword.ReconfigureAbility;
import mage.abilities.mana.ActivatedManaAbilityImpl;
import mage.cards.repository.PluginClassloaderRegistery;
import mage.constants.*;
@ -31,6 +30,7 @@ import org.apache.log4j.Logger;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.util.*;
import mage.abilities.keyword.ReconfigureAbility;
public abstract class CardImpl extends MageObjectImpl implements Card {
@ -821,9 +821,8 @@ public abstract class CardImpl extends MageObjectImpl implements Card {
return false;
}
if (attachment.hasSubtype(SubType.EQUIPMENT, game)
&& (attachment.isCreature(game)
&& !attachment.getAbilities(game).containsClass(ReconfigureAbility.class)
|| !this.isCreature(game))) {
&& (attachment.isCreature(game) // seems strange and perhaps someone knows why this is checked.
&& !attachment.getAbilities(game).containsClass(ReconfigureAbility.class))) {
return false;
}
if (attachment.hasSubtype(SubType.FORTIFICATION, game)

View file

@ -40,6 +40,16 @@ public abstract class DamagedBatchEvent extends GameEvent {
.orElse(null);
}
@Override
public UUID getSourceId() {
return events
.stream()
.map(GameEvent::getSourceId)
.filter(Objects::nonNull)
.findFirst()
.orElse(null);
}
public void addEvent(DamagedEvent event) {
this.events.add(event);
}