From 31afdefe7bfb48aaf567b3bf7ea6abf3464b18ff Mon Sep 17 00:00:00 2001 From: fireshoes Date: Thu, 15 Sep 2016 19:36:19 -0500 Subject: [PATCH] [KLD] Updated mtg-cards-data with another 9/15 spoiler. Implemented several cards. Minor text fixes. --- .../sets/kaladesh/AmbitiousAetherborn.java | 63 +++++++++++++++++ .../mage/sets/kaladesh/AttuneWithAether.java | 2 +- .../src/mage/sets/kaladesh/BrazenScourge.java | 62 +++++++++++++++++ .../mage/sets/kaladesh/CatharticReunion.java | 64 +++++++++++++++++ .../mage/sets/kaladesh/DisappearingAct.java | 66 ++++++++++++++++++ .../sets/kaladesh/ExperimentalAviator.java | 69 +++++++++++++++++++ .../mage/sets/kaladesh/NimbleInnovator.java | 64 +++++++++++++++++ .../kaladesh/OviyaPashiriSageLifecrafter.java | 6 +- .../sets/kaladesh/RecklessFireweaver.java | 69 +++++++++++++++++++ .../sets/kaladesh/VisionaryAugmenter.java | 63 +++++++++++++++++ .../sets/kaladesh/WeaponcraftEnthusiast.java | 63 +++++++++++++++++ .../mage/sets/kaladesh/WeldfastWingsmith.java | 68 ++++++++++++++++++ .../mage/sets/kaladesh/WispweaverAngel.java | 2 +- Utils/mtg-cards-data.txt | 5 +- 14 files changed, 659 insertions(+), 7 deletions(-) create mode 100644 Mage.Sets/src/mage/sets/kaladesh/AmbitiousAetherborn.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/BrazenScourge.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/CatharticReunion.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/DisappearingAct.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/ExperimentalAviator.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/NimbleInnovator.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/RecklessFireweaver.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/VisionaryAugmenter.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/WeaponcraftEnthusiast.java create mode 100644 Mage.Sets/src/mage/sets/kaladesh/WeldfastWingsmith.java diff --git a/Mage.Sets/src/mage/sets/kaladesh/AmbitiousAetherborn.java b/Mage.Sets/src/mage/sets/kaladesh/AmbitiousAetherborn.java new file mode 100644 index 00000000000..db758ae7dca --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/AmbitiousAetherborn.java @@ -0,0 +1,63 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.FabricateAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class AmbitiousAetherborn extends CardImpl { + + public AmbitiousAetherborn(UUID ownerId) { + super(ownerId, 72, "Ambitious Aetherborn", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{4}{B}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Aetherborn"); + this.subtype.add("Artificer"); + this.power = new MageInt(4); + this.toughness = new MageInt(3); + + // Fabricate 1 + this.addAbility(new FabricateAbility(1)); + } + + public AmbitiousAetherborn(final AmbitiousAetherborn card) { + super(card); + } + + @Override + public AmbitiousAetherborn copy() { + return new AmbitiousAetherborn(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/AttuneWithAether.java b/Mage.Sets/src/mage/sets/kaladesh/AttuneWithAether.java index c8ca7bae232..55da043ed37 100644 --- a/Mage.Sets/src/mage/sets/kaladesh/AttuneWithAether.java +++ b/Mage.Sets/src/mage/sets/kaladesh/AttuneWithAether.java @@ -49,7 +49,7 @@ public class AttuneWithAether extends CardImpl { // Search you library for a basic land card, reveal it, put it into your hand, then shuffle your library. You get {E}{E}. Effect effect = new SearchLibraryPutInHandEffect(new TargetCardInLibrary(1, 1, new FilterBasicLandCard()), true); - effect.setText("Search you library for a basic land card, reveal it, put it into your hand, then shuffle your library"); + effect.setText("Search your library for a basic land card, reveal it, put it into your hand, then shuffle your library"); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addEffect(new GetEnergyCountersControllerEffect(2)); } diff --git a/Mage.Sets/src/mage/sets/kaladesh/BrazenScourge.java b/Mage.Sets/src/mage/sets/kaladesh/BrazenScourge.java new file mode 100644 index 00000000000..b325a31ae6e --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/BrazenScourge.java @@ -0,0 +1,62 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.HasteAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class BrazenScourge extends CardImpl { + + public BrazenScourge(UUID ownerId) { + super(ownerId, 107, "Brazen Scourge", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{1}{R}{R}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Gremlin"); + this.power = new MageInt(3); + this.toughness = new MageInt(3); + + // Haste + this.addAbility(HasteAbility.getInstance()); + } + + public BrazenScourge(final BrazenScourge card) { + super(card); + } + + @Override + public BrazenScourge copy() { + return new BrazenScourge(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/CatharticReunion.java b/Mage.Sets/src/mage/sets/kaladesh/CatharticReunion.java new file mode 100644 index 00000000000..2d2c50fafc1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/CatharticReunion.java @@ -0,0 +1,64 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.abilities.costs.common.DiscardTargetCost; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.filter.FilterCard; +import mage.target.common.TargetCardInHand; + +/** + * + * @author fireshoes + */ +public class CatharticReunion extends CardImpl { + + public CatharticReunion(UUID ownerId) { + super(ownerId, 109, "Cathartic Reunion", Rarity.COMMON, new CardType[]{CardType.SORCERY}, "{1}{R}"); + this.expansionSetCode = "KLD"; + + // As an additional cost to cast Cathartic Reunion, discard two cards. + this.getSpellAbility().addCost(new DiscardTargetCost(new TargetCardInHand(2, new FilterCard("two cards")))); + + // Draw three cards. + getSpellAbility().addEffect(new DrawCardSourceControllerEffect(3)); + } + + public CatharticReunion(final CatharticReunion card) { + super(card); + } + + @Override + public CatharticReunion copy() { + return new CatharticReunion(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/DisappearingAct.java b/Mage.Sets/src/mage/sets/kaladesh/DisappearingAct.java new file mode 100644 index 00000000000..821b1d3794f --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/DisappearingAct.java @@ -0,0 +1,66 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.abilities.costs.common.ReturnToHandChosenControlledPermanentCost; +import mage.abilities.effects.common.CounterTargetEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.filter.common.FilterControlledPermanent; +import mage.target.TargetSpell; +import mage.target.common.TargetControlledPermanent; + +/** + * + * @author fireshoes + */ +public class DisappearingAct extends CardImpl { + + public DisappearingAct(UUID ownerId) { + super(ownerId, 43, "Disappearing Act", Rarity.UNCOMMON, new CardType[]{CardType.INSTANT}, "{1}{U}{U}"); + this.expansionSetCode = "KLD"; + + // As an additional cost to cast Disappearing Act, return a permanent you control to its owner's hand. + this.getSpellAbility().addCost(new ReturnToHandChosenControlledPermanentCost(new TargetControlledPermanent(new FilterControlledPermanent("a permanent you control")))); + + // Counter target spell. + getSpellAbility().addEffect(new CounterTargetEffect()); + getSpellAbility().addTarget(new TargetSpell()); + } + + public DisappearingAct(final DisappearingAct card) { + super(card); + } + + @Override + public DisappearingAct copy() { + return new DisappearingAct(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/ExperimentalAviator.java b/Mage.Sets/src/mage/sets/kaladesh/ExperimentalAviator.java new file mode 100644 index 00000000000..a7ed319d632 --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/ExperimentalAviator.java @@ -0,0 +1,69 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.CreateTokenEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.game.permanent.token.ThopterColorlessToken; + +/** + * + * @author fireshoes + */ +public class ExperimentalAviator extends CardImpl { + + public ExperimentalAviator(UUID ownerId) { + super(ownerId, 46, "Experimental Aviator", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{3}{U}{U}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Human"); + this.subtype.add("Artificer"); + this.power = new MageInt(0); + this.toughness = new MageInt(3); + + // Flying + this.addAbility(FlyingAbility.getInstance()); + + // When Experimental Aviator enters the battlefield, create two 1/1 colorless Thopter artifact creature tokens with flying. + this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new ThopterColorlessToken(), 2))); + } + + public ExperimentalAviator(final ExperimentalAviator card) { + super(card); + } + + @Override + public ExperimentalAviator copy() { + return new ExperimentalAviator(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/NimbleInnovator.java b/Mage.Sets/src/mage/sets/kaladesh/NimbleInnovator.java new file mode 100644 index 00000000000..4d902a8c93d --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/NimbleInnovator.java @@ -0,0 +1,64 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.DrawCardSourceControllerEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class NimbleInnovator extends CardImpl { + + public NimbleInnovator(UUID ownerId) { + super(ownerId, 58, "Nimble Innovator", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{U}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Vedalken"); + this.subtype.add("Artificer"); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // When Nimble Innovator enters the battlefield, draw a card. + this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1))); + } + + public NimbleInnovator(final NimbleInnovator card) { + super(card); + } + + @Override + public NimbleInnovator copy() { + return new NimbleInnovator(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/OviyaPashiriSageLifecrafter.java b/Mage.Sets/src/mage/sets/kaladesh/OviyaPashiriSageLifecrafter.java index 8f478e85e12..56f704480d9 100644 --- a/Mage.Sets/src/mage/sets/kaladesh/OviyaPashiriSageLifecrafter.java +++ b/Mage.Sets/src/mage/sets/kaladesh/OviyaPashiriSageLifecrafter.java @@ -66,7 +66,7 @@ public class OviyaPashiriSageLifecrafter extends CardImpl { Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new ServoToken(), 1), new ManaCostsImpl("{2}{G}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); - // {4}{G}, {T}: Create an X/X colorless Construct artifact creature token, where X is the number of creature you control. + // {4}{G}, {T}: Create an X/X colorless Construct artifact creature token, where X is the number of creatures you control. ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new OviyaPashiriSageLifecrafterToken()), new ManaCostsImpl("{4}{G}")); ability.addCost(new TapSourceCost()); this.addAbility(ability); @@ -84,10 +84,10 @@ public class OviyaPashiriSageLifecrafter extends CardImpl { class OviyaPashiriSageLifecrafterToken extends Token { - final static FilterControlledCreaturePermanent filterCreature = new FilterControlledCreaturePermanent("creature you control"); + final static FilterControlledCreaturePermanent filterCreature = new FilterControlledCreaturePermanent("creatures you control"); OviyaPashiriSageLifecrafterToken() { - super("Construct", "an X/X colorless Construct artifact creature token, where X is the number of creature you control"); + super("Construct", "an X/X colorless Construct artifact creature token, where X is the number of creatures you control"); cardType.add(CardType.ARTIFACT); cardType.add(CardType.CREATURE); subtype.add("Construct"); diff --git a/Mage.Sets/src/mage/sets/kaladesh/RecklessFireweaver.java b/Mage.Sets/src/mage/sets/kaladesh/RecklessFireweaver.java new file mode 100644 index 00000000000..17a94d8c4a0 --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/RecklessFireweaver.java @@ -0,0 +1,69 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; +import mage.abilities.effects.common.DamagePlayersEffect; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; +import mage.constants.TargetController; +import mage.constants.Zone; +import mage.filter.common.FilterControlledArtifactPermanent; + +/** + * + * @author fireshoes + */ +public class RecklessFireweaver extends CardImpl { + + public RecklessFireweaver(UUID ownerId) { + super(ownerId, 126, "Reckless Fireweaver", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{1}{R}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Human"); + this.subtype.add("Artificer"); + this.power = new MageInt(1); + this.toughness = new MageInt(3); + + // Whenever an artifact enters the battlefield under your control, Reckless Fireweaver deals 1 damage to each opponent. + this.addAbility(new EntersBattlefieldAllTriggeredAbility(Zone.BATTLEFIELD, new DamagePlayersEffect(1, TargetController.OPPONENT), + new FilterControlledArtifactPermanent(), false, + "Whenever an artifact enters the battlefield under your control, Reckless Fireweaver deals 1 damage to each opponent.")); + } + + public RecklessFireweaver(final RecklessFireweaver card) { + super(card); + } + + @Override + public RecklessFireweaver copy() { + return new RecklessFireweaver(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/VisionaryAugmenter.java b/Mage.Sets/src/mage/sets/kaladesh/VisionaryAugmenter.java new file mode 100644 index 00000000000..36cc5c03e29 --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/VisionaryAugmenter.java @@ -0,0 +1,63 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.FabricateAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class VisionaryAugmenter extends CardImpl { + + public VisionaryAugmenter(UUID ownerId) { + super(ownerId, 34, "Visionary Augmenter", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{2}{W}{W}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Dward"); + this.subtype.add("Artificer"); + this.power = new MageInt(2); + this.toughness = new MageInt(1); + + // Fabricate 2 + this.addAbility(new FabricateAbility(2)); + } + + public VisionaryAugmenter(final VisionaryAugmenter card) { + super(card); + } + + @Override + public VisionaryAugmenter copy() { + return new VisionaryAugmenter(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/WeaponcraftEnthusiast.java b/Mage.Sets/src/mage/sets/kaladesh/WeaponcraftEnthusiast.java new file mode 100644 index 00000000000..af35a4257be --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/WeaponcraftEnthusiast.java @@ -0,0 +1,63 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.keyword.FabricateAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; + +/** + * + * @author fireshoes + */ +public class WeaponcraftEnthusiast extends CardImpl { + + public WeaponcraftEnthusiast(UUID ownerId) { + super(ownerId, 105, "Weaponcraft Enthusiast", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{2}{B}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Aetherborn"); + this.subtype.add("Artificer"); + this.power = new MageInt(0); + this.toughness = new MageInt(1); + + // Fabricate 2 + this.addAbility(new FabricateAbility(2)); + } + + public WeaponcraftEnthusiast(final WeaponcraftEnthusiast card) { + super(card); + } + + @Override + public WeaponcraftEnthusiast copy() { + return new WeaponcraftEnthusiast(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/WeldfastWingsmith.java b/Mage.Sets/src/mage/sets/kaladesh/WeldfastWingsmith.java new file mode 100644 index 00000000000..aef2f4134c3 --- /dev/null +++ b/Mage.Sets/src/mage/sets/kaladesh/WeldfastWingsmith.java @@ -0,0 +1,68 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ +package mage.sets.kaladesh; + +import java.util.UUID; +import mage.MageInt; +import mage.abilities.common.EntersBattlefieldAllTriggeredAbility; +import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.Rarity; +import mage.filter.common.FilterControlledArtifactPermanent; + +/** + * + * @author fireshoes + */ +public class WeldfastWingsmith extends CardImpl { + + public WeldfastWingsmith(UUID ownerId) { + super(ownerId, 69, "Weldfast Wingsmith", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{U}"); + this.expansionSetCode = "KLD"; + this.subtype.add("Human"); + this.subtype.add("Artificer"); + this.power = new MageInt(3); + this.toughness = new MageInt(3); + + // Whenever an artifact enters the battlefield under your control, Weldfast Wingsmith gains flying until end of turn. + this.addAbility(new EntersBattlefieldAllTriggeredAbility(new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), + new FilterControlledArtifactPermanent(), "Whenever an artifact enters the battlefield under your control, Weldfast Wingsmith gains flying until end of turn.")); + } + + public WeldfastWingsmith(final WeldfastWingsmith card) { + super(card); + } + + @Override + public WeldfastWingsmith copy() { + return new WeldfastWingsmith(this); + } +} diff --git a/Mage.Sets/src/mage/sets/kaladesh/WispweaverAngel.java b/Mage.Sets/src/mage/sets/kaladesh/WispweaverAngel.java index ab9cdbbe719..1ef171165bd 100644 --- a/Mage.Sets/src/mage/sets/kaladesh/WispweaverAngel.java +++ b/Mage.Sets/src/mage/sets/kaladesh/WispweaverAngel.java @@ -58,7 +58,7 @@ import mage.util.CardUtil; */ public class WispweaverAngel extends CardImpl { - private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("another taget creature you control"); + private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("another target creature you control"); static { filter.add(new AnotherPredicate()); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 1fe69408321..d68985c377a 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -29677,6 +29677,7 @@ Skywhaler's Shot|Kaladesh|29|U|{2}{W}|Instant|||Destroy target creature with pow Tasseled Dromedary|Kaladesh|30|C|{W}|Creature - Camel|0|4|| Thriving Ibex|Kaladesh|31|C|{3}{W}|Creature - Goat|2|4|When Thriving Ibex enters the battlefield, you get {E}{E} (two energy counters).$Whenever Thriving Ibex attacks, you may pay {E}{E}. If you do, put a +1/+1 counter on it.| Toolcraft Exemplar|Kaladesh|32|R|{W}|Creature - Dwarf Artificer|1|1|At the beginning of combat on your turn, if you control an artifact, Toolcraft Exemplar gets +2/+1 until end of turn. If you control three or more artifacts, it also gains first strike until end of turn.| +Visionary Augmenter|Kaladesh|34|U|{2}{W}{W}|Creature - Dward Artificer|2|1|Fabricate 2 (When this creature enters the battlefield, put two +1/+1 counters on it or create two 1/1 colorless Servo artifact creature tokens.)| Wispweaver Angel|Kaladesh|35|U|{4}{W}{W}|Creature - Angel|4|4|Flying$When Wispweaver Angel enters the battlefield, you may exile another target creature you control, then return that card to the battlefield under its owner's control.| Aether Tradewinds|Kaladesh|38|C|{2}{U}|Instant|||Return target permanent you control and target permanent you don't control to their owners' hands.| Aethersquall Ancient|Kaladesh|39|R|{5}{U}{U}|Creature - Leviathan|6|6|Flying$At the beginning of your upkeep, you get {E}{E}{E} (three energy counters).$Pay {E}{E}{E}{E}{E}{E}{E}{E}: Return all other creatures to their owners' hands. Activate this ability only any time you could cast a sorcery.| @@ -29747,7 +29748,7 @@ Welding Sparks|Kaladesh|140|C|{2}{R}|Instant|||Welding Sparks deals X damage to Arborback Stomper|Kaladesh|142|U|{3}{G}{G}|Creature - Beast|5|4|Trample$When Arborback Stomper enters the battlefield, you gain 5 life.| Architect of the Untamed|Kaladesh|143|R|{2}{G}|Creature - Elf Artificer Druid|2|3|Whenever a land enters the battlefiend under your control, you get {E} (an energy counter).$Pay {E}{E}{E}{E}{E}{E}{E}{E}: Create a 6/6 colorless Beast artifact creature token.| Armorcraft Judge|Kaladesh|144|U|{3}{G}|Creature - Elf Artificer|3|3|When Armorcraft Judge enters the battlefield, draw a card for each creature you control with a +1/+1 counter on it.| -Attune with Aether|Kaladesh|145|C|{G}|Sorcery|||Search you library for a basic land card, reveal it, put it into your hand, then shuffle your library. You get {E}{E} (two energy counters).| +Attune with Aether|Kaladesh|145|C|{G}|Sorcery|||Search your library for a basic land card, reveal it, put it into your hand, then shuffle your library. You get {E}{E} (two energy counters).| Blossoming Defense|Kaladesh|146|U|{G}|Instant|||Target creature you control gets +2/+2 and gains hexproof until end of turn.| Bristling Hydra|Kaladesh|147|R|{2}{G}{G}|Creature - Hydra|4|3|When Bristling Hydra enters the battlefield, you get {E}{E}{E} (three energy counters).$Pay {E}{E}{E}: Put a +1/+1 count on Bristling Hydra. It gains hexproof until end of turn.| Cultivator of Blades|Kaladesh|151|R|{3}{G}{G}|Creature - Elf Artificer|1|1|Fabricate 2$Whenever Cultivator of Blades attacks, you may have other attacking creatures get +X/+X until end of turn, where X is Cultivator of Blades's power.| @@ -29757,7 +29758,7 @@ Highspire Artisan|Kaladesh|157|C|{2}{G}|Creature - Elf Artificer|0|3|Reach (T Larger Than Life|Kaladesh|160|C|{1}{G}|Sorcery|||Target creature gets +4/+4 and gains trample until end of turn.| Longtusk Cub|Kaladesh|161|U|{1}{G}|Creature - Cat|2|2|Whenever Longtusk Cub deals combat damage to a player, you get {E}{E} (two energy counters).$Pay {E}{E}: Put a +1/+1 counter on Longtusk Cub.| Nissa, Vital Force|Kaladesh|163|M|{3}{G}{G}|Planeswalker - Nissa|||+1: Untap target land you control. Until your next turn, it becomes a 5/5 Elemental creature with haste. It's still a land.$-3: Return target permanent card from your graveyard to your hand.$-6: You get an emblem with "Whenever a land enters the battlefield under your control, you may draw a card."| -Oviya Pashiri, Sage Lifecrafter|Kaladesh|165|R|{G}|Legendary Creature - Human Artificer|1|2|{2}{G}, {T}: Create a 1/1 colorless Servo artifact creature token.${4}{G}, {T}: Create an X/X colorless Construct artifact creature token, where X is the number of creature you control.| +Oviya Pashiri, Sage Lifecrafter|Kaladesh|165|R|{G}|Legendary Creature - Human Artificer|1|2|{2}{G}, {T}: Create a 1/1 colorless Servo artifact creature token.${4}{G}, {T}: Create an X/X colorless Construct artifact creature token, where X is the number of creatures you control.| Thriving Rhino|Kaladesh|171|C|{2}{G}|Creature - Rhino|2|3|When Thriving Rhino enters the battlefield, you get {E}{E} (two energy counters).$Whenever Thriving Rhino attacks, you may pay {E}{E}. If you do, put a +1/+1 counter on it.| Verdurous Gearhulk|Kaladesh|172|M|{3}{G}{G}|Artifact Creature - Construct|4|4|Trample$When Verdurous Gearhulk enters the battlefield, distribute four +1/+1 counters among any number of target creatures you control.| Wildest Dreams|Kaladesh|174|R|{X}{X}{G}|Sorcery|||Return X target cards from your graveyard to your hand.$Exile Wildest Dreams.|