From 4d578fa022cf6cb1463403ed4dda62aa51569286 Mon Sep 17 00:00:00 2001 From: Loki Date: Tue, 7 Feb 2012 14:00:45 +0400 Subject: [PATCH] DKA --- .../sets/darkascension/BriarpackAlpha.java | 73 ++++++++++++ .../sets/darkascension/DrogskolReaver.java | 109 ++++++++++++++++++ .../sets/darkascension/ElgaudInquisitor.java | 69 +++++++++++ .../mage/sets/darkascension/ErdwalRipper.java | 68 +++++++++++ .../sets/darkascension/FaithlessLooting.java | 68 +++++++++++ .../sets/darkascension/FarbogBoneflinger.java | 71 ++++++++++++ .../sets/darkascension/GeralfsMessenger.java | 75 ++++++++++++ .../darkascension/GeralfsMindcrusher.java | 73 ++++++++++++ .../sets/darkascension/GravetillerWurm.java | 71 ++++++++++++ .../sets/darkascension/HarrowingJourney.java | 64 ++++++++++ .../mage/sets/darkascension/HeavyMattock.java | 72 ++++++++++++ .../sets/darkascension/LingeringSouls.java | 67 +++++++++++ .../sets/darkascension/MarkovBlademaster.java | 69 +++++++++++ .../sets/darkascension/MoonveilDragon.java | 70 +++++++++++ .../sets/darkascension/NearheathStalker.java | 65 +++++++++++ .../sets/darkascension/NiblisOfTheMist.java | 71 ++++++++++++ .../sets/darkascension/NiblisOfTheUrn.java | 71 ++++++++++++ .../sets/darkascension/SightlessGhoul.java | 68 +++++++++++ .../sets/darkascension/StranglerootGeist.java | 66 +++++++++++ .../sets/darkascension/StromkirkCaptain.java | 81 +++++++++++++ .../sets/darkascension/UlvenwaldBear.java | 78 +++++++++++++ .../sets/darkascension/VengefulVampire.java | 66 +++++++++++ .../src/mage/sets/darkascension/Vorapede.java | 68 +++++++++++ .../mage/sets/darkascension/YoungWolf.java | 64 ++++++++++ .../effects/EntersBattlefieldEffect.java | 4 +- .../abilities/keyword/UndyingAbility.java | 45 ++++++++ 26 files changed, 1764 insertions(+), 2 deletions(-) create mode 100644 Mage.Sets/src/mage/sets/darkascension/BriarpackAlpha.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/DrogskolReaver.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/ElgaudInquisitor.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/ErdwalRipper.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/FaithlessLooting.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/FarbogBoneflinger.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/GeralfsMessenger.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/GeralfsMindcrusher.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/GravetillerWurm.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/HarrowingJourney.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/HeavyMattock.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/LingeringSouls.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/MarkovBlademaster.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/MoonveilDragon.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/NearheathStalker.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/NiblisOfTheMist.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/NiblisOfTheUrn.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/SightlessGhoul.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/StranglerootGeist.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/StromkirkCaptain.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/UlvenwaldBear.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/VengefulVampire.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/Vorapede.java create mode 100644 Mage.Sets/src/mage/sets/darkascension/YoungWolf.java create mode 100644 Mage/src/mage/abilities/keyword/UndyingAbility.java diff --git a/Mage.Sets/src/mage/sets/darkascension/BriarpackAlpha.java b/Mage.Sets/src/mage/sets/darkascension/BriarpackAlpha.java new file mode 100644 index 0000000000..4b9630f259 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/BriarpackAlpha.java @@ -0,0 +1,73 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.continious.BoostTargetEffect; +import mage.abilities.keyword.FlashAbility; +import mage.cards.CardImpl; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author Loki + */ +public class BriarpackAlpha extends CardImpl { + + public BriarpackAlpha(UUID ownerId) { + super(ownerId, 108, "Briarpack Alpha", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{3}{G}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Wolf"); + + this.color.setGreen(true); + this.power = new MageInt(3); + this.toughness = new MageInt(3); + + this.addAbility(FlashAbility.getInstance()); + // When Briarpack Alpha enters the battlefield, target creature gets +2/+2 until end of turn. + Ability ability = new EntersBattlefieldTriggeredAbility(new BoostTargetEffect(2, 2, Constants.Duration.EndOfTurn)); + ability.addTarget(new TargetCreaturePermanent()); + this.addAbility(ability); + } + + public BriarpackAlpha(final BriarpackAlpha card) { + super(card); + } + + @Override + public BriarpackAlpha copy() { + return new BriarpackAlpha(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/DrogskolReaver.java b/Mage.Sets/src/mage/sets/darkascension/DrogskolReaver.java new file mode 100644 index 0000000000..c1438937b8 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/DrogskolReaver.java @@ -0,0 +1,109 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.TriggeredAbilityImpl; +import mage.abilities.common.SimpleTriggeredAbility; +import mage.abilities.effects.common.DrawCardControllerEffect; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.abilities.keyword.DoubleStrikeAbility; +import mage.abilities.keyword.LifelinkAbility; +import mage.cards.CardImpl; +import mage.counters.CounterType; +import mage.game.Game; +import mage.game.events.GameEvent; + +/** + * + * @author Loki + */ +public class DrogskolReaver extends CardImpl { + + public DrogskolReaver(UUID ownerId) { + super(ownerId, 137, "Drogskol Reaver", Rarity.MYTHIC, new CardType[]{CardType.CREATURE}, "{5}{W}{U}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Spirit"); + + this.color.setBlue(true); + this.color.setWhite(true); + this.power = new MageInt(3); + this.toughness = new MageInt(5); + + this.addAbility(FlyingAbility.getInstance()); + this.addAbility(DoubleStrikeAbility.getInstance()); + this.addAbility(LifelinkAbility.getInstance()); + // Whenever you gain life, draw a card. + this.addAbility(new DrogskolReaverAbility()); + } + + public DrogskolReaver(final DrogskolReaver card) { + super(card); + } + + @Override + public DrogskolReaver copy() { + return new DrogskolReaver(this); + } +} + +class DrogskolReaverAbility extends TriggeredAbilityImpl { + + public DrogskolReaverAbility() { + super(Constants.Zone.BATTLEFIELD, new DrawCardControllerEffect(1), false); + } + + public DrogskolReaverAbility(final DrogskolReaverAbility ability) { + super(ability); + } + + @Override + public DrogskolReaverAbility copy() { + return new DrogskolReaverAbility(this); + } + + @Override + public boolean checkTrigger(GameEvent event, Game game) { + if (event.getType() == GameEvent.EventType.GAINED_LIFE && event.getPlayerId().equals(controllerId)) { + return true; + } + return false; + } + + @Override + public String getRule() { + return "Whenever you gain life, draw a card."; + } + +} \ No newline at end of file diff --git a/Mage.Sets/src/mage/sets/darkascension/ElgaudInquisitor.java b/Mage.Sets/src/mage/sets/darkascension/ElgaudInquisitor.java new file mode 100644 index 0000000000..853e758c06 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/ElgaudInquisitor.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.DiesTriggeredAbility; +import mage.abilities.effects.common.CreateTokenEffect; +import mage.abilities.keyword.LifelinkAbility; +import mage.cards.CardImpl; +import mage.game.permanent.token.SpiritWhiteToken; + +/** + * + * @author Loki + */ +public class ElgaudInquisitor extends CardImpl { + + public ElgaudInquisitor(UUID ownerId) { + super(ownerId, 6, "Elgaud Inquisitor", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{W}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Human"); + this.subtype.add("Cleric"); + + this.color.setWhite(true); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + this.addAbility(LifelinkAbility.getInstance()); + // When Elgaud Inquisitor dies, put a 1/1 white Spirit creature token with flying onto the battlefield. + this.addAbility(new DiesTriggeredAbility(new CreateTokenEffect(new SpiritWhiteToken()))); + } + + public ElgaudInquisitor(final ElgaudInquisitor card) { + super(card); + } + + @Override + public ElgaudInquisitor copy() { + return new ElgaudInquisitor(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/ErdwalRipper.java b/Mage.Sets/src/mage/sets/darkascension/ErdwalRipper.java new file mode 100644 index 0000000000..0cef7e3e58 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/ErdwalRipper.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.abilities.keyword.HasteAbility; +import mage.cards.CardImpl; +import mage.counters.CounterType; + +/** + * + * @author Loki + */ +public class ErdwalRipper extends CardImpl { + + public ErdwalRipper(UUID ownerId) { + super(ownerId, 86, "Erdwal Ripper", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{1}{R}{R}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Vampire"); + + this.color.setRed(true); + this.power = new MageInt(2); + this.toughness = new MageInt(1); + + this.addAbility(HasteAbility.getInstance()); + // Whenever Erdwal Ripper deals combat damage to a player, put a +1/+1 counter on it. + this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false)); + } + + public ErdwalRipper(final ErdwalRipper card) { + super(card); + } + + @Override + public ErdwalRipper copy() { + return new ErdwalRipper(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/FaithlessLooting.java b/Mage.Sets/src/mage/sets/darkascension/FaithlessLooting.java new file mode 100644 index 0000000000..e4f6102854 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/FaithlessLooting.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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.effects.common.DiscardControllerEffect; +import mage.abilities.effects.common.DrawCardControllerEffect; +import mage.abilities.keyword.FlashbackAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class FaithlessLooting extends CardImpl { + + public FaithlessLooting(UUID ownerId) { + super(ownerId, 87, "Faithless Looting", Rarity.COMMON, new CardType[]{CardType.SORCERY}, "{R}"); + this.expansionSetCode = "DKA"; + + this.color.setRed(true); + + // Draw two cards, then discard two cards. + this.getSpellAbility().addEffect(new DrawCardControllerEffect(2)); + this.getSpellAbility().addEffect(new DiscardControllerEffect(2)); + // Flashback {2}{R} + this.addAbility(new FlashbackAbility(new ManaCostsImpl("{2}{R}"), Constants.TimingRule.SORCERY)); + } + + public FaithlessLooting(final FaithlessLooting card) { + super(card); + } + + @Override + public FaithlessLooting copy() { + return new FaithlessLooting(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/FarbogBoneflinger.java b/Mage.Sets/src/mage/sets/darkascension/FarbogBoneflinger.java new file mode 100644 index 0000000000..6232342222 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/FarbogBoneflinger.java @@ -0,0 +1,71 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.continious.BoostTargetEffect; +import mage.cards.CardImpl; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author Loki + */ +public class FarbogBoneflinger extends CardImpl { + + public FarbogBoneflinger(UUID ownerId) { + super(ownerId, 61, "Farbog Boneflinger", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{4}{B}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Zombie"); + + this.color.setBlack(true); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // When Farbog Boneflinger enters the battlefield, target creature gets -2/-2 until end of turn. + Ability ability = new EntersBattlefieldTriggeredAbility(new BoostTargetEffect(-2, -2, Constants.Duration.EndOfTurn)); + ability.addTarget(new TargetCreaturePermanent()); + this.addAbility(ability); + } + + public FarbogBoneflinger(final FarbogBoneflinger card) { + super(card); + } + + @Override + public FarbogBoneflinger copy() { + return new FarbogBoneflinger(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/GeralfsMessenger.java b/Mage.Sets/src/mage/sets/darkascension/GeralfsMessenger.java new file mode 100644 index 0000000000..28783d36c3 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/GeralfsMessenger.java @@ -0,0 +1,75 @@ +/* + * 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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTappedAbility; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.LoseLifeTargetEffect; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; +import mage.target.common.TargetOpponent; + +/** + * + * @author Loki + */ +public class GeralfsMessenger extends CardImpl { + + public GeralfsMessenger(UUID ownerId) { + super(ownerId, 63, "Geralf's Messenger", Rarity.RARE, new CardType[]{CardType.CREATURE}, "{B}{B}{B}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Zombie"); + + this.color.setBlack(true); + this.power = new MageInt(3); + this.toughness = new MageInt(2); + + // Geralf's Messenger enters the battlefield tapped. + this.addAbility(new EntersBattlefieldTappedAbility()); + // When Geralf's Messenger enters the battlefield, target opponent loses 2 life. + Ability ability = new EntersBattlefieldTriggeredAbility(new LoseLifeTargetEffect(2)); + ability.addTarget(new TargetOpponent()); + this.addAbility(ability); + // Undying + this.addAbility(new UndyingAbility()); + } + + public GeralfsMessenger(final GeralfsMessenger card) { + super(card); + } + + @Override + public GeralfsMessenger copy() { + return new GeralfsMessenger(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/GeralfsMindcrusher.java b/Mage.Sets/src/mage/sets/darkascension/GeralfsMindcrusher.java new file mode 100644 index 0000000000..4511994c3e --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/GeralfsMindcrusher.java @@ -0,0 +1,73 @@ +/* + * 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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.PutLibraryIntoGraveTargetEffect; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; +import mage.target.TargetPlayer; + +/** + * + * @author Loki + */ +public class GeralfsMindcrusher extends CardImpl { + + public GeralfsMindcrusher(UUID ownerId) { + super(ownerId, 37, "Geralf's Mindcrusher", Rarity.RARE, new CardType[]{CardType.CREATURE}, "{4}{U}{U}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Zombie"); + this.subtype.add("Horror"); + + this.color.setBlue(true); + this.power = new MageInt(5); + this.toughness = new MageInt(5); + + // When Geralf's Mindcrusher enters the battlefield, target player puts the top five cards of his or her library into his or her graveyard. + Ability ability = new EntersBattlefieldTriggeredAbility(new PutLibraryIntoGraveTargetEffect(5)); + ability.addTarget(new TargetPlayer()); + this.addAbility(ability); + // Undying + this.addAbility(new UndyingAbility()); + } + + public GeralfsMindcrusher(final GeralfsMindcrusher card) { + super(card); + } + + @Override + public GeralfsMindcrusher copy() { + return new GeralfsMindcrusher(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/GravetillerWurm.java b/Mage.Sets/src/mage/sets/darkascension/GravetillerWurm.java new file mode 100644 index 0000000000..d6dcc24d3c --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/GravetillerWurm.java @@ -0,0 +1,71 @@ +/* + * 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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.EntersBattlefieldAbility; +import mage.abilities.condition.common.MorbidCondition; +import mage.abilities.decorator.ConditionalOneShotEffect; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; +import mage.counters.CounterType; + +/** + * + * @author Loki + */ +public class GravetillerWurm extends CardImpl { + + public GravetillerWurm(UUID ownerId) { + super(ownerId, 116, "Gravetiller Wurm", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{5}{G}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Wurm"); + + this.color.setGreen(true); + this.power = new MageInt(4); + this.toughness = new MageInt(4); + + this.addAbility(TrampleAbility.getInstance()); + // Morbid - Gravetiller Wurm enters the battlefield with four +1/+1 counters on it if a creature died this turn. + this.addAbility(new EntersBattlefieldAbility(new ConditionalOneShotEffect(new AddCountersSourceEffect(CounterType.P1P1.createInstance(4)), + MorbidCondition.getInstance(), ""), "with four +1/+1 counters on it if a creature died this turn")); + } + + public GravetillerWurm(final GravetillerWurm card) { + super(card); + } + + @Override + public GravetillerWurm copy() { + return new GravetillerWurm(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/HarrowingJourney.java b/Mage.Sets/src/mage/sets/darkascension/HarrowingJourney.java new file mode 100644 index 0000000000..ae1b9147c5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/HarrowingJourney.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.abilities.effects.common.DrawCardTargetEffect; +import mage.abilities.effects.common.LoseLifeTargetEffect; +import mage.cards.CardImpl; +import mage.target.TargetPlayer; + +/** + * + * @author Loki + */ +public class HarrowingJourney extends CardImpl { + + public HarrowingJourney(UUID ownerId) { + super(ownerId, 67, "Harrowing Journey", Rarity.UNCOMMON, new CardType[]{CardType.SORCERY}, "{4}{B}"); + this.expansionSetCode = "DKA"; + + this.color.setBlack(true); + + // Target player draws three cards and loses 3 life. + this.getSpellAbility().addEffect(new DrawCardTargetEffect(3)); + this.getSpellAbility().addEffect(new LoseLifeTargetEffect(3)); + this.getSpellAbility().addTarget(new TargetPlayer()); + } + + public HarrowingJourney(final HarrowingJourney card) { + super(card); + } + + @Override + public HarrowingJourney copy() { + return new HarrowingJourney(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/HeavyMattock.java b/Mage.Sets/src/mage/sets/darkascension/HeavyMattock.java new file mode 100644 index 0000000000..67bae53f3b --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/HeavyMattock.java @@ -0,0 +1,72 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.EquippedHasSubtypeCondition; +import mage.abilities.costs.mana.GenericManaCost; +import mage.abilities.decorator.ConditionalStaticAbility; +import mage.abilities.effects.common.continious.BoostEquippedEffect; +import mage.abilities.keyword.EquipAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class HeavyMattock extends CardImpl { + + private static final String staticText = "As long as equipped creature is a Human, it gets an additional +1/+1"; + + public HeavyMattock(UUID ownerId) { + super(ownerId, 150, "Heavy Mattock", Rarity.COMMON, new CardType[]{CardType.ARTIFACT}, "{3}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Equipment"); + + // Equipped creature gets +1/+1. + this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1))); + // As long as equipped creature is a Human, it gets an additional +1/+1. + this.addAbility(new ConditionalStaticAbility(Constants.Zone.BATTLEFIELD, new BoostEquippedEffect(1, 1), new EquippedHasSubtypeCondition("Human"), staticText)); + // Equip {2} + this.addAbility(new EquipAbility(Constants.Outcome.BoostCreature, new GenericManaCost(2))); + } + + public HeavyMattock(final HeavyMattock card) { + super(card); + } + + @Override + public HeavyMattock copy() { + return new HeavyMattock(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/LingeringSouls.java b/Mage.Sets/src/mage/sets/darkascension/LingeringSouls.java new file mode 100644 index 0000000000..c170ed7cfe --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/LingeringSouls.java @@ -0,0 +1,67 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.abilities.costs.mana.ManaCostsImpl; +import mage.abilities.effects.common.CreateTokenEffect; +import mage.abilities.keyword.FlashbackAbility; +import mage.cards.CardImpl; +import mage.game.permanent.token.SpiritWhiteToken; + +/** + * + * @author Loki + */ +public class LingeringSouls extends CardImpl { + + public LingeringSouls(UUID ownerId) { + super(ownerId, 12, "Lingering Souls", Rarity.UNCOMMON, new CardType[]{CardType.SORCERY}, "{2}{W}"); + this.expansionSetCode = "DKA"; + + this.color.setWhite(true); + + // Put two 1/1 white Spirit creature tokens with flying onto the battlefield. + this.getSpellAbility().addEffect(new CreateTokenEffect(new SpiritWhiteToken(), 2)); + // Flashback {1}{B} + this.addAbility(new FlashbackAbility(new ManaCostsImpl("{1}{B}"), Constants.TimingRule.SORCERY)); + } + + public LingeringSouls(final LingeringSouls card) { + super(card); + } + + @Override + public LingeringSouls copy() { + return new LingeringSouls(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/MarkovBlademaster.java b/Mage.Sets/src/mage/sets/darkascension/MarkovBlademaster.java new file mode 100644 index 0000000000..1a1a3dce82 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/MarkovBlademaster.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.abilities.keyword.DoubleStrikeAbility; +import mage.cards.CardImpl; +import mage.counters.CounterType; + +/** + * + * @author Loki + */ +public class MarkovBlademaster extends CardImpl { + + public MarkovBlademaster(UUID ownerId) { + super(ownerId, 96, "Markov Blademaster", Rarity.RARE, new CardType[]{CardType.CREATURE}, "{1}{R}{R}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Vampire"); + this.subtype.add("Warrior"); + + this.color.setRed(true); + this.power = new MageInt(1); + this.toughness = new MageInt(1); + + this.addAbility(DoubleStrikeAbility.getInstance()); + // Whenever Markov Blademaster deals combat damage to a player, put a +1/+1 counter on it. + this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false)); + } + + public MarkovBlademaster(final MarkovBlademaster card) { + super(card); + } + + @Override + public MarkovBlademaster copy() { + return new MarkovBlademaster(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/MoonveilDragon.java b/Mage.Sets/src/mage/sets/darkascension/MoonveilDragon.java new file mode 100644 index 0000000000..c4e988ba0f --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/MoonveilDragon.java @@ -0,0 +1,70 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.SimpleActivatedAbility; +import mage.abilities.costs.mana.ColoredManaCost; +import mage.abilities.effects.common.continious.BoostControlledEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class MoonveilDragon extends CardImpl { + + public MoonveilDragon(UUID ownerId) { + super(ownerId, 99, "Moonveil Dragon", Rarity.MYTHIC, new CardType[]{CardType.CREATURE}, "{3}{R}{R}{R}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Dragon"); + + this.color.setRed(true); + this.power = new MageInt(5); + this.toughness = new MageInt(5); + + this.addAbility(FlyingAbility.getInstance()); + // {R}: Each creature you control gets +1/+0 until end of turn. + this.addAbility(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new BoostControlledEffect(1, 0, Constants.Duration.EndOfTurn), new ColoredManaCost(Constants.ColoredManaSymbol.R))); + } + + public MoonveilDragon(final MoonveilDragon card) { + super(card); + } + + @Override + public MoonveilDragon copy() { + return new MoonveilDragon(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/NearheathStalker.java b/Mage.Sets/src/mage/sets/darkascension/NearheathStalker.java new file mode 100644 index 0000000000..9a660714d5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/NearheathStalker.java @@ -0,0 +1,65 @@ +/* + * 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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class NearheathStalker extends CardImpl { + + public NearheathStalker(UUID ownerId) { + super(ownerId, 100, "Nearheath Stalker", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{4}{R}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Vampire"); + this.subtype.add("Rogue"); + + this.color.setRed(true); + this.power = new MageInt(4); + this.toughness = new MageInt(1); + + // Undying + this.addAbility(new UndyingAbility()); + } + + public NearheathStalker(final NearheathStalker card) { + super(card); + } + + @Override + public NearheathStalker copy() { + return new NearheathStalker(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/NiblisOfTheMist.java b/Mage.Sets/src/mage/sets/darkascension/NiblisOfTheMist.java new file mode 100644 index 0000000000..bfe08709b7 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/NiblisOfTheMist.java @@ -0,0 +1,71 @@ +/* + * 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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.common.TapTargetEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author Loki + */ +public class NiblisOfTheMist extends CardImpl { + + public NiblisOfTheMist(UUID ownerId) { + super(ownerId, 15, "Niblis of the Mist", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{2}{W}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Spirit"); + + this.color.setWhite(true); + this.power = new MageInt(2); + this.toughness = new MageInt(1); + + this.addAbility(FlyingAbility.getInstance()); + // When Niblis of the Mist enters the battlefield, you may tap target creature. + Ability ability = new EntersBattlefieldTriggeredAbility(new TapTargetEffect(), true); + ability.addTarget(new TargetCreaturePermanent()); + this.addAbility(ability); + } + + public NiblisOfTheMist(final NiblisOfTheMist card) { + super(card); + } + + @Override + public NiblisOfTheMist copy() { + return new NiblisOfTheMist(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/NiblisOfTheUrn.java b/Mage.Sets/src/mage/sets/darkascension/NiblisOfTheUrn.java new file mode 100644 index 0000000000..398c761679 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/NiblisOfTheUrn.java @@ -0,0 +1,71 @@ +/* + * 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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.AttacksTriggeredAbility; +import mage.abilities.effects.common.TapTargetEffect; +import mage.abilities.keyword.FlyingAbility; +import mage.cards.CardImpl; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author Loki + */ +public class NiblisOfTheUrn extends CardImpl { + + public NiblisOfTheUrn(UUID ownerId) { + super(ownerId, 16, "Niblis of the Urn", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{1}{W}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Spirit"); + + this.color.setWhite(true); + this.power = new MageInt(1); + this.toughness = new MageInt(1); + + this.addAbility(FlyingAbility.getInstance()); + // Whenever Niblis of the Urn attacks, you may tap target creature. + Ability ability = new AttacksTriggeredAbility(new TapTargetEffect(), true); + ability.addTarget(new TargetCreaturePermanent()); + this.addAbility(ability); + } + + public NiblisOfTheUrn(final NiblisOfTheUrn card) { + super(card); + } + + @Override + public NiblisOfTheUrn copy() { + return new NiblisOfTheUrn(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/SightlessGhoul.java b/Mage.Sets/src/mage/sets/darkascension/SightlessGhoul.java new file mode 100644 index 0000000000..70cc205cc4 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/SightlessGhoul.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.CantBlockAbility; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class SightlessGhoul extends CardImpl { + + public SightlessGhoul(UUID ownerId) { + super(ownerId, 73, "Sightless Ghoul", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{3}{B}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Zombie"); + this.subtype.add("Soldier"); + + this.color.setBlack(true); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Sightless Ghoul can't block. + this.addAbility(CantBlockAbility.getInstance()); + // Undying + this.addAbility(new UndyingAbility()); + } + + public SightlessGhoul(final SightlessGhoul card) { + super(card); + } + + @Override + public SightlessGhoul copy() { + return new SightlessGhoul(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/StranglerootGeist.java b/Mage.Sets/src/mage/sets/darkascension/StranglerootGeist.java new file mode 100644 index 0000000000..edfda9d503 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/StranglerootGeist.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.keyword.HasteAbility; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class StranglerootGeist extends CardImpl { + + public StranglerootGeist(UUID ownerId) { + super(ownerId, 127, "Strangleroot Geist", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{G}{G}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Spirit"); + + this.color.setGreen(true); + this.power = new MageInt(2); + this.toughness = new MageInt(1); + + this.addAbility(HasteAbility.getInstance()); + // Undying + this.addAbility(new UndyingAbility()); + } + + public StranglerootGeist(final StranglerootGeist card) { + super(card); + } + + @Override + public StranglerootGeist copy() { + return new StranglerootGeist(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/StromkirkCaptain.java b/Mage.Sets/src/mage/sets/darkascension/StromkirkCaptain.java new file mode 100644 index 0000000000..d993f7de9d --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/StromkirkCaptain.java @@ -0,0 +1,81 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.effects.common.continious.BoostControlledEffect; +import mage.abilities.effects.common.continious.GainAbilityControlledEffect; +import mage.abilities.keyword.FirstStrikeAbility; +import mage.cards.CardImpl; +import mage.filter.Filter; +import mage.filter.common.FilterCreaturePermanent; + +/** + * + * @author Loki + */ +public class StromkirkCaptain extends CardImpl { + private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Vampire creatures"); + + static { + filter.getSubtype().add("Vampire"); + filter.setScopeSubtype(Filter.ComparisonScope.Any); + } + + public StromkirkCaptain(UUID ownerId) { + super(ownerId, 143, "Stromkirk Captain", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{1}{B}{R}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Vampire"); + this.subtype.add("Soldier"); + + this.color.setRed(true); + this.color.setBlack(true); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + this.addAbility(FirstStrikeAbility.getInstance()); + // Other Vampire creatures you control get +1/+1 and have first strike. + this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Constants.Duration.WhileOnBattlefield, filter, true))); + this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Constants.Duration.WhileOnBattlefield, filter, true))); + } + + public StromkirkCaptain(final StromkirkCaptain card) { + super(card); + } + + @Override + public StromkirkCaptain copy() { + return new StromkirkCaptain(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/UlvenwaldBear.java b/Mage.Sets/src/mage/sets/darkascension/UlvenwaldBear.java new file mode 100644 index 0000000000..6fcd79a4f9 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/UlvenwaldBear.java @@ -0,0 +1,78 @@ +/* + * 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.darkascension; + +import java.util.UUID; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.EntersBattlefieldAbility; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.condition.common.MorbidCondition; +import mage.abilities.decorator.ConditionalOneShotEffect; +import mage.abilities.decorator.ConditionalTriggeredAbility; +import mage.abilities.effects.common.counter.AddCountersSourceEffect; +import mage.abilities.effects.common.counter.AddCountersTargetEffect; +import mage.cards.CardImpl; +import mage.counters.CounterType; +import mage.target.common.TargetCreaturePermanent; + +/** + * + * @author Loki + */ +public class UlvenwaldBear extends CardImpl { + + public UlvenwaldBear(UUID ownerId) { + super(ownerId, 129, "Ulvenwald Bear", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{2}{G}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Bear"); + + this.color.setGreen(true); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Morbid - When Ulvenwald Bear enters the battlefield, if a creature died this turn, put two +1/+1 counters on target creature. + Ability ability = new ConditionalTriggeredAbility(new EntersBattlefieldTriggeredAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance(2), Constants.Outcome.BoostCreature)), + MorbidCondition.getInstance(), "When {this} enters the battlefield, if a creature died this turn, put two +1/+1 counters on target creature."); + ability.addTarget(new TargetCreaturePermanent()); + this.addAbility(ability); + } + + public UlvenwaldBear(final UlvenwaldBear card) { + super(card); + } + + @Override + public UlvenwaldBear copy() { + return new UlvenwaldBear(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/VengefulVampire.java b/Mage.Sets/src/mage/sets/darkascension/VengefulVampire.java new file mode 100644 index 0000000000..e4b05443e1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/VengefulVampire.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.keyword.FlyingAbility; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class VengefulVampire extends CardImpl { + + public VengefulVampire(UUID ownerId) { + super(ownerId, 78, "Vengeful Vampire", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{4}{B}{B}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Vampire"); + + this.color.setBlack(true); + this.power = new MageInt(3); + this.toughness = new MageInt(2); + + this.addAbility(FlyingAbility.getInstance()); + // Undying + this.addAbility(new UndyingAbility()); + } + + public VengefulVampire(final VengefulVampire card) { + super(card); + } + + @Override + public VengefulVampire copy() { + return new VengefulVampire(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/Vorapede.java b/Mage.Sets/src/mage/sets/darkascension/Vorapede.java new file mode 100644 index 0000000000..904df94564 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/Vorapede.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.keyword.UndyingAbility; +import mage.abilities.keyword.VigilanceAbility; +import mage.abilities.keyword.TrampleAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class Vorapede extends CardImpl { + + public Vorapede(UUID ownerId) { + super(ownerId, 131, "Vorapede", Rarity.MYTHIC, new CardType[]{CardType.CREATURE}, "{2}{G}{G}{G}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Insect"); + + this.color.setGreen(true); + this.power = new MageInt(5); + this.toughness = new MageInt(4); + + this.addAbility(VigilanceAbility.getInstance()); + this.addAbility(TrampleAbility.getInstance()); + // Undying + this.addAbility(new UndyingAbility()); + } + + public Vorapede(final Vorapede card) { + super(card); + } + + @Override + public Vorapede copy() { + return new Vorapede(this); + } +} diff --git a/Mage.Sets/src/mage/sets/darkascension/YoungWolf.java b/Mage.Sets/src/mage/sets/darkascension/YoungWolf.java new file mode 100644 index 0000000000..d7c5310375 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/YoungWolf.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.darkascension; + +import java.util.UUID; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.MageInt; +import mage.abilities.keyword.UndyingAbility; +import mage.cards.CardImpl; + +/** + * + * @author Loki + */ +public class YoungWolf extends CardImpl { + + public YoungWolf(UUID ownerId) { + super(ownerId, 134, "Young Wolf", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{G}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Wolf"); + + this.color.setGreen(true); + this.power = new MageInt(1); + this.toughness = new MageInt(1); + + // Undying + this.addAbility(new UndyingAbility()); + } + + public YoungWolf(final YoungWolf card) { + super(card); + } + + @Override + public YoungWolf copy() { + return new YoungWolf(this); + } +} diff --git a/Mage/src/mage/abilities/effects/EntersBattlefieldEffect.java b/Mage/src/mage/abilities/effects/EntersBattlefieldEffect.java index 41e4b35f3a..636a045c1b 100644 --- a/Mage/src/mage/abilities/effects/EntersBattlefieldEffect.java +++ b/Mage/src/mage/abilities/effects/EntersBattlefieldEffect.java @@ -100,9 +100,9 @@ public class EntersBattlefieldEffect extends ReplacementEffectImpl