forked from External/mage
[EMN] Added 7/5 spoilers to mtg-cards-data.txt. Implemented some new cards. Fixed Liliana and Ishkanah to only filter controlled creatures.
This commit is contained in:
parent
1082008b24
commit
f0d169367a
9 changed files with 506 additions and 4 deletions
95
Mage.Sets/src/mage/sets/eldritchmoon/Cryptbreaker.java
Normal file
95
Mage.Sets/src/mage/sets/eldritchmoon/Cryptbreaker.java
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
/*
|
||||
* 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.eldritchmoon;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.DiscardCardCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.common.TapTargetCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
|
||||
import mage.abilities.effects.common.LoseLifeSourceControllerEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Rarity;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.permanent.token.ZombieToken;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class Cryptbreaker extends CardImpl {
|
||||
|
||||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Zombies you control");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Zombie"));
|
||||
}
|
||||
|
||||
public Cryptbreaker(UUID ownerId) {
|
||||
super(ownerId, 86, "Cryptbreaker", Rarity.RARE, new CardType[]{CardType.CREATURE}, "{B}");
|
||||
this.expansionSetCode = "EMN";
|
||||
this.subtype.add("Zombie");
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
|
||||
// {1}{B}, {T}, Discard a card: Put a 2/2 black Zombie creature token onto the battlefield.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new ZombieToken()), new ManaCostsImpl("{1}{B}"));
|
||||
ability.addCost(new TapSourceCost());
|
||||
ability.addCost(new DiscardCardCost());
|
||||
this.addAbility(ability);
|
||||
|
||||
// Tap three untapped Zombies you control: You draw a card and you lose 1 life.
|
||||
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new TapTargetCost(new TargetControlledCreaturePermanent(3, 3, filter, true)));
|
||||
Effect effect = new LoseLifeSourceControllerEffect(1);
|
||||
effect.setText("and you lose 1 life");
|
||||
ability.addEffect(effect);
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
public Cryptbreaker(final Cryptbreaker card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Cryptbreaker copy() {
|
||||
return new Cryptbreaker(this);
|
||||
}
|
||||
}
|
||||
87
Mage.Sets/src/mage/sets/eldritchmoon/GrimFlayer.java
Normal file
87
Mage.Sets/src/mage/sets/eldritchmoon/GrimFlayer.java
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
/*
|
||||
* 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.eldritchmoon;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.DeliriumCondition;
|
||||
import mage.abilities.decorator.ConditionalContinuousEffect;
|
||||
import mage.abilities.dynamicvalue.common.StaticValue;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostSourceEffect;
|
||||
import mage.abilities.keyword.TrampleAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Rarity;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterCard;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class GrimFlayer extends CardImpl {
|
||||
|
||||
public GrimFlayer(UUID ownerId) {
|
||||
super(ownerId, 184, "Grim Flayer", Rarity.MYTHIC, new CardType[]{CardType.CREATURE}, "{B}{G}");
|
||||
this.expansionSetCode = "EMN";
|
||||
this.subtype.add("Human");
|
||||
this.subtype.add("Warrior");
|
||||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
// Trample
|
||||
this.addAbility(TrampleAbility.getInstance());
|
||||
|
||||
// Whenever Grim Flayer deals combat damage to a player, look at the top three cards of your library. Put any number of them into your graveyard
|
||||
// and the rest back on top of your library in any order.
|
||||
Effect effect = new LookLibraryAndPickControllerEffect(
|
||||
new StaticValue(3), false, new StaticValue(3), new FilterCard(), Zone.LIBRARY, true, false, true, Zone.GRAVEYARD, false);
|
||||
effect.setText("look at the top three cards of your library. Put any number of them into your graveyard and the rest on top of your library in any order");
|
||||
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(effect, false));
|
||||
|
||||
// <i>Delirium</i> — Grim Flayer gets +2/+2 as long as there are four or more card types among cards in your graveyard.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield),
|
||||
DeliriumCondition.getInstance(),
|
||||
"<i>Delirium</i> — {this} gets +2/+2 as long as there are four or more card types among cards in your graveyard")));
|
||||
}
|
||||
|
||||
public GrimFlayer(final GrimFlayer card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public GrimFlayer copy() {
|
||||
return new GrimFlayer(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -43,7 +43,7 @@ import mage.cards.CardImpl;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.Rarity;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.permanent.token.SpiderToken;
|
||||
import mage.target.common.TargetOpponent;
|
||||
|
|
@ -54,7 +54,7 @@ import mage.target.common.TargetOpponent;
|
|||
*/
|
||||
public class IshkanahGrafwidow extends CardImpl {
|
||||
|
||||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("each Spider you control");
|
||||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("each Spider you control");
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Spider"));
|
||||
|
|
|
|||
74
Mage.Sets/src/mage/sets/eldritchmoon/LashweedLurker.java
Normal file
74
Mage.Sets/src/mage/sets/eldritchmoon/LashweedLurker.java
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
/*
|
||||
* 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.eldritchmoon;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.CastSourceTriggeredAbility;
|
||||
import mage.abilities.effects.common.PutOnLibraryTargetEffect;
|
||||
import mage.abilities.keyword.EmergeAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Rarity;
|
||||
import mage.filter.common.FilterNonlandPermanent;
|
||||
import mage.target.TargetPermanent;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class LashweedLurker extends CardImpl {
|
||||
|
||||
public LashweedLurker(UUID ownerId) {
|
||||
super(ownerId, 9, "Lashweed Lurker", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{8}");
|
||||
this.expansionSetCode = "EMN";
|
||||
this.subtype.add("Eldrazi");
|
||||
this.subtype.add("Horror");
|
||||
this.power = new MageInt(5);
|
||||
this.toughness = new MageInt(4);
|
||||
|
||||
// Emerge {5}{G}{U}
|
||||
this.addAbility(new EmergeAbility(this, new ManaCostsImpl<>("{5}{G}{U}")));
|
||||
|
||||
// When you cast Lashweed Lurker, you may put target nonland permanent on top of its owner's library.
|
||||
Ability ability = new CastSourceTriggeredAbility(new PutOnLibraryTargetEffect(true), true);
|
||||
ability.addTarget(new TargetPermanent(new FilterNonlandPermanent()));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
public LashweedLurker(final LashweedLurker card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LashweedLurker copy() {
|
||||
return new LashweedLurker(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -47,8 +47,8 @@ import mage.constants.Outcome;
|
|||
import mage.constants.Rarity;
|
||||
import mage.constants.TargetController;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterCreatureCard;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.command.Emblem;
|
||||
|
|
@ -144,7 +144,7 @@ class LilianaTheLastHopeEmblem extends Emblem {
|
|||
|
||||
class LilianaZombiesCount implements DynamicValue {
|
||||
|
||||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent();
|
||||
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Zombie"));
|
||||
|
|
|
|||
79
Mage.Sets/src/mage/sets/eldritchmoon/MercurialGeists.java
Normal file
79
Mage.Sets/src/mage/sets/eldritchmoon/MercurialGeists.java
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
/*
|
||||
* 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.eldritchmoon;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.SpellCastControllerTriggeredAbility;
|
||||
import mage.abilities.effects.common.continuous.BoostSourceEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Rarity;
|
||||
import mage.filter.FilterSpell;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class MercurialGeists extends CardImpl {
|
||||
|
||||
private static final FilterSpell filter = new FilterSpell("instant or sorcery spell");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(
|
||||
new CardTypePredicate(CardType.INSTANT),
|
||||
new CardTypePredicate(CardType.SORCERY)));
|
||||
}
|
||||
|
||||
public MercurialGeists(UUID ownerId) {
|
||||
super(ownerId, 186, "Mercurial Geists", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{2}{U}{R}");
|
||||
this.expansionSetCode = "EMN";
|
||||
this.subtype.add("Spirit");
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(3);
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// Whenever you cast an instant or sorcery spell, Mercurial Geists gets +3/+0 until end of turn.
|
||||
this.addAbility(new SpellCastControllerTriggeredAbility(new BoostSourceEffect(3, 0, Duration.EndOfTurn), filter, false));
|
||||
}
|
||||
|
||||
public MercurialGeists(final MercurialGeists card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MercurialGeists copy() {
|
||||
return new MercurialGeists(this);
|
||||
}
|
||||
}
|
||||
107
Mage.Sets/src/mage/sets/eldritchmoon/Mournwillow.java
Normal file
107
Mage.Sets/src/mage/sets/eldritchmoon/Mournwillow.java
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
/*
|
||||
* 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.eldritchmoon;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.DeliriumCondition;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.RestrictionEffect;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Rarity;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class Mournwillow extends CardImpl {
|
||||
|
||||
public Mournwillow(UUID ownerId) {
|
||||
super(ownerId, 187, "Mournwillow", Rarity.UNCOMMON, new CardType[]{CardType.CREATURE}, "{1}{B}{G}");
|
||||
this.expansionSetCode = "EMN";
|
||||
this.subtype.add("Plant");
|
||||
this.subtype.add("Skeleton");
|
||||
this.power = new MageInt(3);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
// Haste
|
||||
this.addAbility(HasteAbility.getInstance());
|
||||
|
||||
// <i>Delirium</i> — When Mournwillow enters the battlefield, if there are four or more card types among cards in your graveyard,
|
||||
// creatures with power 2 or less can't block this turn.
|
||||
Ability ability = new ConditionalTriggeredAbility(
|
||||
new EntersBattlefieldTriggeredAbility(new MournwillowEffect(), false),
|
||||
new DeliriumCondition(),
|
||||
"<i>Delirium</i> — When {this} enters the battlefield, if there are four or more card types among cards in your graveyard, "
|
||||
+ "creatures with power 2 or less can't block this turn.");
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
public Mournwillow(final Mournwillow card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Mournwillow copy() {
|
||||
return new Mournwillow(this);
|
||||
}
|
||||
}
|
||||
|
||||
class MournwillowEffect extends RestrictionEffect {
|
||||
|
||||
public MournwillowEffect() {
|
||||
super(Duration.EndOfTurn);
|
||||
staticText = "creatures with power 2 or less can't block this turn";
|
||||
}
|
||||
|
||||
public MournwillowEffect(final MournwillowEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MournwillowEffect copy() {
|
||||
return new MournwillowEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean applies(Permanent permanent, Ability source, Game game) {
|
||||
return permanent.getPower().getValue() <= 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canBlock(Permanent attacker, Permanent blocker, Ability source, Game game) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
52
Mage.Sets/src/mage/sets/eldritchmoon/RideDown.java
Normal file
52
Mage.Sets/src/mage/sets/eldritchmoon/RideDown.java
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
/*
|
||||
* 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.eldritchmoon;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fireshoes
|
||||
*/
|
||||
public class RideDown extends mage.sets.khansoftarkir.RideDown {
|
||||
|
||||
public RideDown(UUID ownerId) {
|
||||
super(ownerId);
|
||||
this.cardNumber = 188;
|
||||
this.expansionSetCode = "EMN";
|
||||
}
|
||||
|
||||
public RideDown(final RideDown card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public RideDown copy() {
|
||||
return new RideDown(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -57300,6 +57300,7 @@ Distended Mindbender|Eldritch Moon|3|R|{8}|Creature - Eldrazi Insect|5|5|Emerge
|
|||
Elder Deep-Fiend|Eldritch Moon|5|R|{8}|Creature - Eldrazi Octopus|5|6|Flash$Emerge {5}{U}{U} <i>(You may cast this spell by sacrificing a creature and paying the emerge cost reduced by that creature's converted mana cost)</i>$When you cast Elder Deep-Fiend, tap up to four target permanents.|
|
||||
Emrakul, the Promised End|Eldritch Moon|6|M|{13}|Legendary Creature - Eldrazi|13|13|Emrakul, the Promised End costs {1} less to cast for each card type among cards in your graveyard.$When you cast Emrakul, you gain control of target opponent during that player's next turn. After that turn, that player takes an extra turn.$Flying, trample, protection from instants|
|
||||
Eternal Scourge|Eldritch Moon|7|R|{3}|Creature - Eldrazi Horror|3|3|You may cast Eternal Scourge from exile.$When Eternal Scourge becomes the target of a spell or ability an opponent controls, exile it.|
|
||||
Lashweed Lurker|Eldritch Moon|9|U|{8}|Creature - Eldrazi Horror|5|4|Emerge {5}{G}{U} <i>(You may cast this spell by sacrificing a creature and paying the emerge cost reduced by that creature's converted mana cost.)</i>$When you cast Lashweed Lurker, you may put target nonland permanent on top of its owner's library.|
|
||||
Wretched Gryff|Eldritch Moon|12|C|{7}|Creature - Eldrazi Hippogriff|3|4|Emerge {5}{U} <i>(You may cast this spell by sacrificing a creature and paying the emerge cost reduced by that creature's converted mana cost.)</i>$When you cast Wretched Gryff, draw a card.$Flying|
|
||||
Blessed Alliance|Eldritch Moon|13|U|{1}{W}|Instant|||Escalate {2} <i>(Pay this cost for each mode chosen beyond the first.)</i>$Choose one or more &mdash Target player gains 4 life. Untap up to two target creatures. Target opponent sacrifices an attacking creature.|
|
||||
Bruna, the Fading Light|Eldritch Moon|15|R|{5}{W}{W}|Legendary Creature - Angel Horror|5|7|When you cast Bruna, the Fading Light, you may return target Angel or Human creature card from your graveyard to the battlefield.$Flying, vigilance$<i>(Melds with Gisela, the Broken Blade.)</i>|
|
||||
|
|
@ -57326,6 +57327,7 @@ Grizzled Angler|Eldritch Moon|63|U|{2}{U}|Creature - Human|2|3|{T}: Put the top
|
|||
Grisly Anglerfish|Eldritch Moon|63|U||Creature - Eldrazi Fish|4|5|{6}: Creatures your opponents control attack this turn if able.|
|
||||
Identity Thief|Eldritch Moon|64|R|{2}{U}{U}|Creature - Shapeshifter|0|3|Whenever Identity Thief attacks, you may exile another target non-token creature. If you do, Identity Thief becomes a copy of that creature until end of turn. Return the exiled card to the battlefield under its owner's control at the beginning of the next end step.|
|
||||
Ingenious Skaab|Eldritch Moon|66|C|{2}{U}|Creature - Zombie Horror|2|3|Prowess <i>(Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.)</i>${U}: Ingenious Skaab gets +1/-1 until end of turn.|
|
||||
Mind's Dilation|Eldritch Moon|70|M|{5}{U}{U}|Enchantment|||Whenever an opponent casts his or her first spell each turn, that player exiles the top card of his or her library. If it's a nonland card, you may cast it without paying its mana cost.|
|
||||
Niblis of Frost|Eldritch Moon|72|R|{2}{U}{U}|Creature - Spirit|3|3|Flying$Prowess <i>(Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.)</i>$Whenever you cast an instant or sorcery spell, tap target creature an opponent controls. That creature doesn't untap during its controller's next untap step.|
|
||||
Summary Dismissal|Eldritch Moon|75|R|{2}{U}{U}|Instant|||Exile all other spells and counter all abilities.|
|
||||
Take Inventory|Eldritch Moon|76|C|{1}{U}|Sorcery|||Draw a card, then draw cards equal to the number of cards named Take Inventory in your graveyard.|
|
||||
|
|
@ -57335,6 +57337,7 @@ Wharf Infiltrator|Eldritch Moon|80|R|{1}{U}|Creature - Human Horror|1|1|Skulk <i
|
|||
Borrowed Malevolence|Eldritch Moon|82|C|{B}|Instant|||Escalate {2} <i>(Pay this cost for each mode chosen beyond the first.)</i>$Choose one or both &mdash Target creature gets +1/+1 until end of turn. Target creature gets -1/-1 until end of turn.|
|
||||
Cemetery Recruitment|Eldritch Moon|83|C|{1}{B}|Sorcery|||Return target creature card from your graveyard to your hand. If it's a Zombie card, draw a card.|
|
||||
Collective Brutality|Eldritch Moon|85|R|{1}{B}|Sorcery|||Escalate — Discard a card. <i>(Pay this cost for each mode chosen beyond the first.)</i>$Choose one or more — Target opponent reveals his or her hand. You choose an instant or sorcery card from it. That player discards that card.; Target creature gets -2/-2 until end of turn.; Target opponent loses 2 life and you gain 2 life.|
|
||||
Cryptbreaker|Eldritch Moon|86|R|{B}|Creature - Zombie|1|1|{1}{B}, {T}, Discard a card: Put a 2/2 black Zombie creature token onto the battlefield.$Tap three untapped Zombies you control: You draw a card and you lose 1 life.|
|
||||
Graf Rats|Eldritch Moon|91|C|{1}{B}|Creature - Rat|2|1|At the beginning of combat on your turn, if you both own and control Graf Rats and a creature named Midnight Scavengers, exile them, then meld them into Chittering Host.|
|
||||
Haunted Dead|Eldritch Moon|92|U|{3}{B}|Creature - Zombie|2|2|When Haunted Dead enters the battlefield, put a 1/1 white Spirit creature token with flying onto the battlefield.${1}{B}, Discard two cards: Return Haunted Dead from your graveyard to the battlefield tapped.|
|
||||
Liliana, the Last Hope|Eldritch Moon|93|M|{1}{B}{B}|Planeswalker - Liliana|||+1: Up to one target creature gets -2/-1 until your next turn.$-2: Put the top two cards of your library into your graveyard, then you may return a creature card from your graveyard to your hand.$-7: You get an emblem with "At the beginning of your end step, put X 2/2 black Zombie creature tokens onto the battlefield, where X is two plus the number of Zombies you control."|
|
||||
|
|
@ -57355,6 +57358,7 @@ Hanweir Garrison|Eldritch Moon|130|R|{2}{R}|Creature - Human Soldier|2|3|Wheneve
|
|||
Hanweir, the Writhing Township|Eldritch Moon|130|R||Legendary Creature - Eldrazi Ooze|7|4|Trample, haste$Whenever Hanweir, the Writhing Township attacks, put two 3/2 colorless Eldrazi Horror creature tokens onto the battlefield tapped and attacking.|
|
||||
Harmless Offering|Eldritch Moon|131|R|{2}{R}|Sorcery|||Target opponent gains control of target permanent you control.|
|
||||
Incendiary Flow|Eldritch Moon|133|U|{1}{R}|Sorcery|||Incendiary Flow deals 3 damage to target creature or player. If a creature dealt damage this way would die this turn, exile it instead.|
|
||||
Mirrorwing Dragon|Eldritch Moon|136|M|{3}{R}{R}|Creature - Dragon|4|5|Flying$Whenever a player casts an instant or sorcery spell that targets only Mirrorwing Dragon, that player copies that spell for each other creature he or she controls that the spell could target. Each copy targets a different one of those creatures.|
|
||||
Smoldering Werewolf|Eldritch Moon|142|U|{2}{R}{R}|Creature - Werewolf Horror|3|2|When Smoldering Werewolf enters the battlefield, it deals 1 damage to each of up to two target creatures.${4}{R}{R}: Transform Smoldering Werewolf.|
|
||||
Erupting Dreadwolf|Eldritch Moon|142|U||Creature - Eldrazi Werewolf|6|4|Whenever Erupting Dreadwolf attacks, it deals 2 damage to target creature or player.|
|
||||
Stromkirk Mystic|Eldritch Moon|146|R|{2}{R}|Creature - Vampire Horror|3|2|Trample$Whenever Stromkirk Mystic deals combat damage to a player, exile the top card of your library. Until end of turn, you may cast that card.$Madness {1}{R} <i>(If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.)</i>|
|
||||
|
|
@ -57375,6 +57379,10 @@ Ulvenwald Abomination|Eldritch Moon|175|C||Creature - Eldrazi Werewolf|4|6|{T}:
|
|||
Ulvenwald Observer|Eldritch Moon|176|R|{4}{G}{G}|Creature - Treefolk|6|6|Whenever a creature you control with toughness 4 or greater dies, draw a card.|
|
||||
Bloodhall Priest|Eldritch Moon|181|R|{2}{B}{R}|Creature - Vampire Cleric|4|4|Whenever Bloodhall Priest enters the battlefield or attacks, if you have no cards in hand, Bloodhall Priest deals 2 damage to target creature or player.$Madness {1}{B}{R} <i>(If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.)</i>|
|
||||
Gisa and Geralf|Eldritch Moon|183|M|{2}{U}{B}|Legendary Creature - Human Wizard|4|4|When Gisa and Geralf enters the battlefield, put the top four cards of your library into your graveyard.$During each of your turns, you may cast a Zombie creature card from your graveyard.|
|
||||
Grim Flayer|Eldritch Moon|184|M|{B}{G}|Creature - Human Warrior|2|2|Trample$Whenever Grim Flayer deals combat damage to a player, look at the top three cards of your library. Put any number of them into your graveyard and the rest back on top of your library in any order.$<i>Delirium</i> — Grim Flayer gets +2/+2 as long as there are four or more card types among cards in your graveyard.|
|
||||
Mercurial Geists|Eldritch Moon|186|U|{2}{U}{R}|Creature - Spirit|1|3|Flying$Whenever you cast an instant or sorcery spell, Mercurial Geists gets +3/+0 until end of turn.|
|
||||
Mournwillow|Eldritch Moon|187|U|{1}{B}{G}|Creature - Plant Skeleton|3|2|Haste$<i>Delirium</i> — When Mournwillow enters the battlefield, if there are four or more card types among cards in your graveyard, creatures with power 2 or less can't block this turn.|
|
||||
Ride Down|Eldritch Moon|188|U|{R}{W}|Instant|||Destroy target blocking creature. Creatures that were blocked by that creature this combat gain trample until end of turn.|
|
||||
Tamiyo, Field Researcher|Eldritch Moon|190|M|{1}{G}{W}{U}|Planeswalker - Tamiyo|||+1: Choose up to two target creatures. Until your next turn, whenever either of those creatures deals combat damage, you draw a card.$-2: Tap up to two target nonland permanents. They don't untap during their controller's next untap step.$-7: Draw three cards. You get an emblem with "You may cast nonland cards from your hand without paying their mana costs."|
|
||||
Ulrich of the Krallenhorde|Eldritch Moon|191|M|{3}{R}{G}|Legendary Creature - Human Werewolf|4|4|Whenever this creature enters the battlefield or transforms into Ulrich of the Krallenhorde, target creature gets +4/+4 until end of turn.$At the beginning of each upkeep, if no spells were cast last turn, transform Ulrich of the Krallenhorde.|
|
||||
Ulrich, Uncontested Alpha|Eldritch Moon|191|M||Legendary Creature - Werewolf|6|6|Whenever this creature transforms into Ulrich, Uncontested Alpha, you may have it fight target non-Werewolf creature you don't control.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Ulrich, Uncontested Alpha.|
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue