mirror of
https://github.com/correl/mage.git
synced 2024-12-26 03:00:11 +00:00
Merge branch 'master' into Zzooouhh-rix-1
This commit is contained in:
commit
67aa13bcd5
56 changed files with 553 additions and 66 deletions
|
@ -13,11 +13,12 @@ public class ChrismasTest {
|
||||||
|
|
||||||
private Date getDate(int Year, int Month, int Day){
|
private Date getDate(int Year, int Month, int Day){
|
||||||
Calendar cal = new GregorianCalendar(Year, Month - 1, Day);
|
Calendar cal = new GregorianCalendar(Year, Month - 1, Day);
|
||||||
|
cal.add(Calendar.HOUR, 10);
|
||||||
return cal.getTime();
|
return cal.getTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void ignoreDefaultResponse() throws Exception {
|
public void testChrismasDays() throws Exception {
|
||||||
// chrismas from 15 december to 15 january
|
// chrismas from 15 december to 15 january
|
||||||
Assert.assertEquals(false, isChrismasTime(getDate(2017, 11, 1)));
|
Assert.assertEquals(false, isChrismasTime(getDate(2017, 11, 1)));
|
||||||
Assert.assertEquals(false, isChrismasTime(getDate(2017, 11, 15)));
|
Assert.assertEquals(false, isChrismasTime(getDate(2017, 11, 15)));
|
||||||
|
|
81
Mage.Sets/src/mage/cards/d/DireFleetNeckbreaker.java
Normal file
81
Mage.Sets/src/mage/cards/d/DireFleetNeckbreaker.java
Normal file
|
@ -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.cards.d;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
import mage.MageInt;
|
||||||
|
import mage.abilities.common.SimpleStaticAbility;
|
||||||
|
import mage.abilities.effects.common.continuous.BoostSourceEffect;
|
||||||
|
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
|
||||||
|
import mage.constants.*;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.filter.common.FilterAttackingCreature;
|
||||||
|
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||||
|
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author JayDi85
|
||||||
|
*/
|
||||||
|
public class DireFleetNeckbreaker extends CardImpl {
|
||||||
|
|
||||||
|
private static final FilterAttackingCreature filterYourAttackingPirates = new FilterAttackingCreature("Attacking Pirates");
|
||||||
|
static {
|
||||||
|
filterYourAttackingPirates.add(new ControllerPredicate(TargetController.YOU));
|
||||||
|
filterYourAttackingPirates.add(new SubtypePredicate(SubType.PIRATE));
|
||||||
|
}
|
||||||
|
|
||||||
|
public DireFleetNeckbreaker(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{B}{R}");
|
||||||
|
|
||||||
|
this.subtype.add(SubType.ORC);
|
||||||
|
this.subtype.add(SubType.PIRATE);
|
||||||
|
this.power = new MageInt(3);
|
||||||
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
|
// Attacking Pirates you control get +2/+0.
|
||||||
|
GainAbilityControlledEffect gainEffect = new GainAbilityControlledEffect(
|
||||||
|
new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.Custom)),
|
||||||
|
Duration.WhileOnBattlefield,
|
||||||
|
filterYourAttackingPirates,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
gainEffect.setText("Attacking Pirates you control get +2/+0.");
|
||||||
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, gainEffect));
|
||||||
|
}
|
||||||
|
|
||||||
|
public DireFleetNeckbreaker(final DireFleetNeckbreaker card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DireFleetNeckbreaker copy() {
|
||||||
|
return new DireFleetNeckbreaker(this);
|
||||||
|
}
|
||||||
|
}
|
73
Mage.Sets/src/mage/cards/d/DuskLegionZealot.java
Normal file
73
Mage.Sets/src/mage/cards/d/DuskLegionZealot.java
Normal file
|
@ -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.cards.d;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
import mage.MageInt;
|
||||||
|
import mage.abilities.Ability;
|
||||||
|
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||||
|
import mage.abilities.effects.Effect;
|
||||||
|
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
|
||||||
|
import mage.abilities.effects.common.LoseLifeSourceControllerEffect;
|
||||||
|
import mage.constants.*;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author JayDi85
|
||||||
|
*/
|
||||||
|
public class DuskLegionZealot extends CardImpl {
|
||||||
|
|
||||||
|
public DuskLegionZealot (UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{B}");
|
||||||
|
|
||||||
|
this.subtype.add(SubType.VAMPIRE);
|
||||||
|
this.subtype.add(SubType.SOLDIER);
|
||||||
|
this.power = new MageInt(1);
|
||||||
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
|
// When Dusk Legion Zealot enters the battlefield, you draw a card and you lose 1 life.
|
||||||
|
Effect drawEffect = new DrawCardSourceControllerEffect(1);
|
||||||
|
drawEffect.setText("you draw a card");
|
||||||
|
Ability ability = new EntersBattlefieldTriggeredAbility(drawEffect);
|
||||||
|
Effect lifeEffect = new LoseLifeSourceControllerEffect(1);
|
||||||
|
lifeEffect.setText("and you lose 1 life");
|
||||||
|
ability.addEffect(lifeEffect);
|
||||||
|
this.addAbility(ability);
|
||||||
|
}
|
||||||
|
|
||||||
|
public DuskLegionZealot (final DuskLegionZealot card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DuskLegionZealot copy() {
|
||||||
|
return new DuskLegionZealot (this);
|
||||||
|
}
|
||||||
|
}
|
80
Mage.Sets/src/mage/cards/f/FanaticalFirebrand.java
Normal file
80
Mage.Sets/src/mage/cards/f/FanaticalFirebrand.java
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
package mage.cards.f;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import mage.MageInt;
|
||||||
|
import mage.abilities.Ability;
|
||||||
|
import mage.abilities.common.SimpleActivatedAbility;
|
||||||
|
import mage.abilities.costs.common.SacrificeSourceCost;
|
||||||
|
import mage.abilities.costs.common.TapSourceCost;
|
||||||
|
import mage.abilities.effects.common.DamageTargetEffect;
|
||||||
|
import mage.abilities.keyword.HasteAbility;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.Zone;
|
||||||
|
import mage.target.common.TargetCreatureOrPlayer;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author JayDi85
|
||||||
|
*/
|
||||||
|
public class FanaticalFirebrand extends CardImpl {
|
||||||
|
|
||||||
|
public FanaticalFirebrand(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{R}");
|
||||||
|
|
||||||
|
this.subtype.add(SubType.GOBLIN);
|
||||||
|
this.subtype.add(SubType.PIRATE);
|
||||||
|
this.power = new MageInt(1);
|
||||||
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
|
// Haste
|
||||||
|
this.addAbility(HasteAbility.getInstance());
|
||||||
|
|
||||||
|
// {T}, Sacrifice Fanatical Firebrand: It deals 1 damage to target creature or player.
|
||||||
|
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1, "It"), new TapSourceCost());
|
||||||
|
ability.addCost(new SacrificeSourceCost());
|
||||||
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
|
this.addAbility(ability);
|
||||||
|
}
|
||||||
|
|
||||||
|
public FanaticalFirebrand(final FanaticalFirebrand card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public FanaticalFirebrand copy() {
|
||||||
|
return new FanaticalFirebrand(this);
|
||||||
|
}
|
||||||
|
}
|
|
@ -56,7 +56,7 @@ public class FiremawKavu extends CardImpl {
|
||||||
this.addAbility(new EchoAbility("{5}{R}"));
|
this.addAbility(new EchoAbility("{5}{R}"));
|
||||||
|
|
||||||
// When Firemaw Kavu enters the battlefield, it deals 2 damage to target creature.
|
// When Firemaw Kavu enters the battlefield, it deals 2 damage to target creature.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"));
|
||||||
ability.addTarget(new TargetCreaturePermanent());
|
ability.addTarget(new TargetCreaturePermanent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,7 @@ public class FoundryChampion extends CardImpl {
|
||||||
this.toughness = new MageInt(4);
|
this.toughness = new MageInt(4);
|
||||||
|
|
||||||
//When Foundry Champion enters the battlefield, it deals damage to target creature or player equal to the number of creatures you control.
|
//When Foundry Champion enters the battlefield, it deals damage to target creature or player equal to the number of creatures you control.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent())));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent()), "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -53,7 +53,7 @@ public class GangOfDevils extends CardImpl {
|
||||||
this.toughness = new MageInt(3);
|
this.toughness = new MageInt(3);
|
||||||
|
|
||||||
// When Gang of Devils dies, it deals 3 damage divided as you choose among one, two, or three target creatures and/or players.
|
// When Gang of Devils dies, it deals 3 damage divided as you choose among one, two, or three target creatures and/or players.
|
||||||
Ability ability = new DiesTriggeredAbility(new DamageMultiEffect(3));
|
Ability ability = new DiesTriggeredAbility(new DamageMultiEffect(3, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayerAmount(3));
|
ability.addTarget(new TargetCreatureOrPlayerAmount(3));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,7 +56,7 @@ public class GhituSlinger extends CardImpl {
|
||||||
// Echo {2}{R}
|
// Echo {2}{R}
|
||||||
this.addAbility(new EchoAbility("{2}{R}"));
|
this.addAbility(new EchoAbility("{2}{R}"));
|
||||||
// When Ghitu Slinger enters the battlefield, it deals 2 damage to target creature or player.
|
// When Ghitu Slinger enters the battlefield, it deals 2 damage to target creature or player.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), false);
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"), false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,7 +55,7 @@ public class GibberingFiend extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
// When Gibbering Fiend enters the battlefield, it deals 1 damage to each opponent.
|
// When Gibbering Fiend enters the battlefield, it deals 1 damage to each opponent.
|
||||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamagePlayersEffect(1, TargetController.OPPONENT), false));
|
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamagePlayersEffect(1, TargetController.OPPONENT, "it"), false));
|
||||||
|
|
||||||
// <i>Delirium</i> — At the beginning of each opponent's upkeep, if there are four or more card types among cards in your graveyard,
|
// <i>Delirium</i> — At the beginning of each opponent's upkeep, if there are four or more card types among cards in your graveyard,
|
||||||
// Gibbering Fiend deals 1 damage to that player.
|
// Gibbering Fiend deals 1 damage to that player.
|
||||||
|
|
|
@ -53,9 +53,7 @@ public class GoblinBoomKeg extends CardImpl {
|
||||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceEffect(), TargetController.YOU, false));
|
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceEffect(), TargetController.YOU, false));
|
||||||
|
|
||||||
// When Goblin Boom Keg is put into a graveyard from the battlefield, it deals 3 damage to target creature or player.
|
// When Goblin Boom Keg is put into a graveyard from the battlefield, it deals 3 damage to target creature or player.
|
||||||
Effect effect = new DamageTargetEffect(3);
|
Ability ability = new PutIntoGraveFromBattlefieldSourceTriggeredAbility(new DamageTargetEffect(3, "it"), false);
|
||||||
effect.setText("it deals 3 damage to target creature or player");
|
|
||||||
Ability ability = new PutIntoGraveFromBattlefieldSourceTriggeredAbility(effect, false);
|
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,7 @@ public class GoblinCommando extends CardImpl {
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// When Goblin Commando enters the battlefield, it deals 2 damage to target creature.
|
// When Goblin Commando enters the battlefield, it deals 2 damage to target creature.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"));
|
||||||
ability.addTarget(new TargetCreaturePermanent());
|
ability.addTarget(new TargetCreaturePermanent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,7 +53,7 @@ public class GoblinMedics extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
// Whenever Goblin Medics becomes tapped, it deals 1 damage to target creature or player.
|
// Whenever Goblin Medics becomes tapped, it deals 1 damage to target creature or player.
|
||||||
Ability ability = new BecomesTappedSourceTriggeredAbility(new DamageTargetEffect(1));
|
Ability ability = new BecomesTappedSourceTriggeredAbility(new DamageTargetEffect(1, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,7 +82,7 @@ public class GoblinShrine extends CardImpl {
|
||||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||||
|
|
||||||
// When Goblin Shrine leaves the battlefield, it deals 1 damage to each Goblin creature.
|
// When Goblin Shrine leaves the battlefield, it deals 1 damage to each Goblin creature.
|
||||||
this.addAbility(new LeavesBattlefieldTriggeredAbility(new DamageAllEffect(1, filterGoblin), false));
|
this.addAbility(new LeavesBattlefieldTriggeredAbility(new DamageAllEffect(1, "it", filterGoblin), false));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,7 @@ public class GoblinSwineRider extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
// Whenever Goblin Swine-Rider becomes blocked, it deals 2 damage to each attacking creature and each blocking creature.
|
// Whenever Goblin Swine-Rider becomes blocked, it deals 2 damage to each attacking creature and each blocking creature.
|
||||||
this.addAbility(new BecomesBlockedTriggeredAbility(new DamageAllEffect(2, new FilterAttackingOrBlockingCreature("attacking creature and each blocking creature")), false));
|
this.addAbility(new BecomesBlockedTriggeredAbility(new DamageAllEffect(2, "it", new FilterAttackingOrBlockingCreature("attacking creature and each blocking creature")), false));
|
||||||
}
|
}
|
||||||
|
|
||||||
public GoblinSwineRider(final GoblinSwineRider card) {
|
public GoblinSwineRider(final GoblinSwineRider card) {
|
||||||
|
|
141
Mage.Sets/src/mage/cards/h/HeartOfBogardan.java
Normal file
141
Mage.Sets/src/mage/cards/h/HeartOfBogardan.java
Normal file
|
@ -0,0 +1,141 @@
|
||||||
|
/*
|
||||||
|
* 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.cards.h;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
import mage.abilities.Ability;
|
||||||
|
import mage.abilities.TriggeredAbilityImpl;
|
||||||
|
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||||
|
import mage.abilities.effects.OneShotEffect;
|
||||||
|
import mage.abilities.keyword.CumulativeUpkeepAbility;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
import mage.constants.Outcome;
|
||||||
|
import mage.constants.Zone;
|
||||||
|
import mage.counters.CounterType;
|
||||||
|
import mage.filter.common.FilterCreaturePermanent;
|
||||||
|
import mage.game.Game;
|
||||||
|
import mage.game.events.GameEvent;
|
||||||
|
import mage.game.events.GameEvent.EventType;
|
||||||
|
import mage.game.permanent.Permanent;
|
||||||
|
import mage.players.Player;
|
||||||
|
import mage.target.TargetPlayer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author emerald000 & L_J
|
||||||
|
*/
|
||||||
|
public class HeartOfBogardan extends CardImpl {
|
||||||
|
|
||||||
|
public HeartOfBogardan(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}{R}");
|
||||||
|
|
||||||
|
// Cumulative upkeep-Pay {2}.
|
||||||
|
this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{2}")));
|
||||||
|
|
||||||
|
// When a player doesn't pay Heart of Bogardan's cumulative upkeep, Heart of Bogardan deals X damage to target player and each creature he or she controls, where X is twice the number of age counters on Heart of Bogardan minus 2.
|
||||||
|
this.addAbility(new HeartOfBogardanTriggeredAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeartOfBogardan(final HeartOfBogardan card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HeartOfBogardan copy() {
|
||||||
|
return new HeartOfBogardan(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class HeartOfBogardanTriggeredAbility extends TriggeredAbilityImpl {
|
||||||
|
|
||||||
|
HeartOfBogardanTriggeredAbility() {
|
||||||
|
super(Zone.BATTLEFIELD, new HeartOfBogardanEffect(), false);
|
||||||
|
this.addTarget(new TargetPlayer());
|
||||||
|
}
|
||||||
|
|
||||||
|
HeartOfBogardanTriggeredAbility(final HeartOfBogardanTriggeredAbility ability) {
|
||||||
|
super(ability);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HeartOfBogardanTriggeredAbility copy() {
|
||||||
|
return new HeartOfBogardanTriggeredAbility(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean checkEventType(GameEvent event, Game game) {
|
||||||
|
return event.getType() == EventType.DIDNT_PAY_CUMULATIVE_UPKEEP;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean checkTrigger(GameEvent event, Game game) {
|
||||||
|
return event.getSourceId() != null && event.getSourceId().equals(this.getSourceId());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getRule() {
|
||||||
|
return "When a player doesn't pay {this}'s cumulative upkeep, {this} deals X damage to target player and each creature he or she controls, where X is twice the number of age counters on {this} minus 2.";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class HeartOfBogardanEffect extends OneShotEffect {
|
||||||
|
|
||||||
|
public HeartOfBogardanEffect() {
|
||||||
|
super(Outcome.Damage);
|
||||||
|
staticText = "{this} deals X damage to target player and each creature he or she controls, where X is twice the number of age counters on {this} minus 2";
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeartOfBogardanEffect(final HeartOfBogardanEffect effect) {
|
||||||
|
super(effect);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean apply(Game game, Ability source) {
|
||||||
|
Player player = game.getPlayer(source.getFirstTarget());
|
||||||
|
Permanent sourcePermanent = game.getPermanentOrLKIBattlefield(source.getSourceId());
|
||||||
|
if (player != null && sourcePermanent != null) {
|
||||||
|
int damage = sourcePermanent.getCounters(game).getCount(CounterType.AGE) * 2 - 2;
|
||||||
|
if (damage > 0) {
|
||||||
|
player.damage(damage, source.getSourceId(), game, false, true);
|
||||||
|
for (Permanent perm: game.getBattlefield().getAllActivePermanents(new FilterCreaturePermanent(), player.getId(), game)) {
|
||||||
|
perm.damage(damage, source.getSourceId(), game, false, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HeartOfBogardanEffect copy() {
|
||||||
|
return new HeartOfBogardanEffect(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -51,7 +51,7 @@ public class ImplementOfCombustion extends CardImpl {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{1}");
|
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{1}");
|
||||||
|
|
||||||
// {R}, Sacrifice Implement of Combustion: It deals 1 damage to target player.
|
// {R}, Sacrifice Implement of Combustion: It deals 1 damage to target player.
|
||||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{R}"));
|
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1, "It"), new ManaCostsImpl("{R}"));
|
||||||
ability.addCost(new SacrificeSourceCost());
|
ability.addCost(new SacrificeSourceCost());
|
||||||
ability.addTarget(new TargetPlayer());
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
|
@ -60,7 +60,7 @@ public class InfernoTitan extends CardImpl {
|
||||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}")));
|
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}")));
|
||||||
|
|
||||||
// Whenever Inferno Titan enters the battlefield or attacks, it deals 3 damage divided as you choose among one, two, or three target creatures and/or players.
|
// Whenever Inferno Titan enters the battlefield or attacks, it deals 3 damage divided as you choose among one, two, or three target creatures and/or players.
|
||||||
Ability ability = new EntersBattlefieldOrAttacksSourceTriggeredAbility(new DamageMultiEffect(3));
|
Ability ability = new EntersBattlefieldOrAttacksSourceTriggeredAbility(new DamageMultiEffect(3, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayerAmount(3));
|
ability.addTarget(new TargetCreatureOrPlayerAmount(3));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ public class KeldonChampion extends CardImpl {
|
||||||
// Echo {2}{R}{R}
|
// Echo {2}{R}{R}
|
||||||
this.addAbility(new EchoAbility("{2}{R}{R}"));
|
this.addAbility(new EchoAbility("{2}{R}{R}"));
|
||||||
// When Keldon Champion enters the battlefield, it deals 3 damage to target player.
|
// When Keldon Champion enters the battlefield, it deals 3 damage to target player.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3), false);
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3, "it"), false);
|
||||||
ability.addTarget(new TargetPlayer());
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,7 +65,7 @@ public class KeldonMarauders extends CardImpl {
|
||||||
this.addAbility(new VanishingSacrificeAbility());
|
this.addAbility(new VanishingSacrificeAbility());
|
||||||
|
|
||||||
// When Keldon Marauders enters the battlefield or leaves the battlefield, it deals 1 damage to target player.
|
// When Keldon Marauders enters the battlefield or leaves the battlefield, it deals 1 damage to target player.
|
||||||
ability = new EntersBattlefieldOrLeavesSourceTriggeredAbility(new DamageTargetEffect(1), false);
|
ability = new EntersBattlefieldOrLeavesSourceTriggeredAbility(new DamageTargetEffect(1, "it"), false);
|
||||||
ability.addTarget(new TargetPlayer());
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@ public class KessigMalcontents extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
// When Kessig Malcontents enters the battlefield, it deals damage to target player equal to the number of Humans you control.
|
// When Kessig Malcontents enters the battlefield, it deals damage to target player equal to the number of Humans you control.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter)));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter), "it"));
|
||||||
ability.addTarget(new TargetPlayer());
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,7 +53,7 @@ public class LavaHounds extends CardImpl {
|
||||||
// Haste
|
// Haste
|
||||||
this.addAbility(HasteAbility.getInstance());
|
this.addAbility(HasteAbility.getInstance());
|
||||||
// When Lava Hounds enters the battlefield, it deals 4 damage to you.
|
// When Lava Hounds enters the battlefield, it deals 4 damage to you.
|
||||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageControllerEffect(4)));
|
this.addAbility(new EntersBattlefieldTriggeredAbility(new DamageControllerEffect(4, "it")));
|
||||||
}
|
}
|
||||||
|
|
||||||
public LavaHounds(final LavaHounds card) {
|
public LavaHounds(final LavaHounds card) {
|
||||||
|
|
|
@ -65,7 +65,7 @@ public class LightningDiadem extends CardImpl {
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
// When Lightning Diadem enters the battlefield, it deals 2 damage to target creature or player.
|
// When Lightning Diadem enters the battlefield, it deals 2 damage to target creature or player.
|
||||||
ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2));
|
ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,7 @@ public class Meteorite extends CardImpl {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{5}");
|
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{5}");
|
||||||
|
|
||||||
// When Meteorite enters the battlefield, it deals 2 damage to target creature or player.
|
// When Meteorite enters the battlefield, it deals 2 damage to target creature or player.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2), false);
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"), false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ public class MudbuttonTorchrunner extends CardImpl {
|
||||||
this.power = new MageInt(1);
|
this.power = new MageInt(1);
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
// When Mudbutton Torchrunner dies, it deals 3 damage to target creature or player.
|
// When Mudbutton Torchrunner dies, it deals 3 damage to target creature or player.
|
||||||
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(3), false);
|
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(3, "it"), false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,7 +73,7 @@ public class OrdealOfPurphoros extends CardImpl {
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
// When you sacrifice Ordeal of Purphoros, it deals 3 damage to target creature or player.
|
// When you sacrifice Ordeal of Purphoros, it deals 3 damage to target creature or player.
|
||||||
ability = new SacrificeSourceTriggeredAbility(
|
ability = new SacrificeSourceTriggeredAbility(
|
||||||
new DamageTargetEffect(3),false);
|
new DamageTargetEffect(3, "it"),false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ public class PardicArsonist extends CardImpl {
|
||||||
this.toughness = new MageInt(3);
|
this.toughness = new MageInt(3);
|
||||||
|
|
||||||
// Threshold - As long as seven or more cards are in your graveyard, Pardic Arsonist has "When Pardic Arsonist enters the battlefield, it deals 3 damage to target creature or player."
|
// Threshold - As long as seven or more cards are in your graveyard, Pardic Arsonist has "When Pardic Arsonist enters the battlefield, it deals 3 damage to target creature or player."
|
||||||
Ability gainedAbility = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3));
|
Ability gainedAbility = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3, "it"));
|
||||||
gainedAbility.addTarget(new TargetCreatureOrPlayer());
|
gainedAbility.addTarget(new TargetCreatureOrPlayer());
|
||||||
|
|
||||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||||
|
|
|
@ -51,7 +51,7 @@ public class PerilousMyr extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
// When Perilous Myr dies, it deals 2 damage to target creature or player.
|
// When Perilous Myr dies, it deals 2 damage to target creature or player.
|
||||||
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(2), false);
|
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(2, "it"), false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ public class PitchburnDevils extends CardImpl {
|
||||||
this.toughness = new MageInt(3);
|
this.toughness = new MageInt(3);
|
||||||
|
|
||||||
// When Pitchburn Devils dies, it deals 3 damage to target creature or player.
|
// When Pitchburn Devils dies, it deals 3 damage to target creature or player.
|
||||||
DiesTriggeredAbility ability = new DiesTriggeredAbility(new DamageTargetEffect(3));
|
DiesTriggeredAbility ability = new DiesTriggeredAbility(new DamageTargetEffect(3, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ public class RagingSwordtooth extends CardImpl {
|
||||||
this.addAbility(TrampleAbility.getInstance());
|
this.addAbility(TrampleAbility.getInstance());
|
||||||
|
|
||||||
// When Raging Swordtooth enters the battlefield, it deals 1 damage to each other creature.
|
// When Raging Swordtooth enters the battlefield, it deals 1 damage to each other creature.
|
||||||
addAbility(new EntersBattlefieldTriggeredAbility(new DamageAllEffect(1, filter)));
|
addAbility(new EntersBattlefieldTriggeredAbility(new DamageAllEffect(1, "it", filter)));
|
||||||
}
|
}
|
||||||
|
|
||||||
public RagingSwordtooth(final RagingSwordtooth card) {
|
public RagingSwordtooth(final RagingSwordtooth card) {
|
||||||
|
|
|
@ -67,7 +67,7 @@ public class ScuttlingDoomEngine extends CardImpl {
|
||||||
// Scuttling Doom Engine can't be blocked by creatures with power 2 or less.
|
// Scuttling Doom Engine can't be blocked by creatures with power 2 or less.
|
||||||
this.addAbility(new SimpleEvasionAbility(new CantBeBlockedByCreaturesSourceEffect(filter, Duration.WhileOnBattlefield)));
|
this.addAbility(new SimpleEvasionAbility(new CantBeBlockedByCreaturesSourceEffect(filter, Duration.WhileOnBattlefield)));
|
||||||
// When Scuttling Doom Engine dies, it deals 6 damage to target opponnent
|
// When Scuttling Doom Engine dies, it deals 6 damage to target opponnent
|
||||||
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(6), false);
|
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(6, "it"), false);
|
||||||
ability.addTarget(new TargetOpponent());
|
ability.addTarget(new TargetOpponent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ public class SellSwordBrute extends CardImpl {
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// When Sell-Sword Brute dies, it deals 2 damage to you.
|
// When Sell-Sword Brute dies, it deals 2 damage to you.
|
||||||
this.addAbility(new DiesTriggeredAbility(new DamageControllerEffect(2), false));
|
this.addAbility(new DiesTriggeredAbility(new DamageControllerEffect(2, "it"), false));
|
||||||
}
|
}
|
||||||
|
|
||||||
public SellSwordBrute(final SellSwordBrute card) {
|
public SellSwordBrute(final SellSwordBrute card) {
|
||||||
|
|
|
@ -64,7 +64,7 @@ public class Showstopper extends CardImpl {
|
||||||
|
|
||||||
|
|
||||||
// Until end of turn, creatures you control gain "When this creature dies, it deals 2 damage to target creature an opponent controls."
|
// Until end of turn, creatures you control gain "When this creature dies, it deals 2 damage to target creature an opponent controls."
|
||||||
TriggeredAbility ability = new DiesTriggeredAbility(new DamageTargetEffect(2), false);
|
TriggeredAbility ability = new DiesTriggeredAbility(new DamageTargetEffect(2, "it"), false);
|
||||||
Target target = new TargetCreaturePermanent(filter2);
|
Target target = new TargetCreaturePermanent(filter2);
|
||||||
ability.addTarget(target);
|
ability.addTarget(target);
|
||||||
Effect effect = new GainAbilityControlledEffect(ability, Duration.EndOfTurn, filter);
|
Effect effect = new GainAbilityControlledEffect(ability, Duration.EndOfTurn, filter);
|
||||||
|
|
|
@ -56,7 +56,7 @@ public class SkirkMarauder extends CardImpl {
|
||||||
this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{R}")));
|
this.addAbility(new MorphAbility(this, new ManaCostsImpl("{2}{R}")));
|
||||||
|
|
||||||
// When Skirk Marauder is turned face up, it deals 2 damage to target creature or player.
|
// When Skirk Marauder is turned face up, it deals 2 damage to target creature or player.
|
||||||
Ability ability = new TurnedFaceUpSourceTriggeredAbility(new DamageTargetEffect(2));
|
Ability ability = new TurnedFaceUpSourceTriggeredAbility(new DamageTargetEffect(2, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,7 +67,7 @@ public class SkysovereignConsulFlagship extends CardImpl {
|
||||||
this.addAbility(FlyingAbility.getInstance());
|
this.addAbility(FlyingAbility.getInstance());
|
||||||
|
|
||||||
// Whenever Skysovereign, Consul Flagship enters the battlefield or attacks, it deals 3 damage to target creature or planeswalker an opponent controls.
|
// Whenever Skysovereign, Consul Flagship enters the battlefield or attacks, it deals 3 damage to target creature or planeswalker an opponent controls.
|
||||||
Ability ability = new EntersBattlefieldOrAttacksSourceTriggeredAbility(new DamageTargetEffect(3));
|
Ability ability = new EntersBattlefieldOrAttacksSourceTriggeredAbility(new DamageTargetEffect(3, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlaneswalker(1, 1, filter, false));
|
ability.addTarget(new TargetCreatureOrPlaneswalker(1, 1, filter, false));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -74,7 +74,7 @@ public class SorrowsPath extends CardImpl {
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
// Whenever Sorrow's Path becomes tapped, it deals 2 damage to you and each creature you control.
|
// Whenever Sorrow's Path becomes tapped, it deals 2 damage to you and each creature you control.
|
||||||
Ability ability2 = new BecomesTappedSourceTriggeredAbility(new DamageControllerEffect(2 ));
|
Ability ability2 = new BecomesTappedSourceTriggeredAbility(new DamageControllerEffect(2 , "it"));
|
||||||
ability2.addEffect(new DamageAllEffect(2, new FilterControlledCreaturePermanent()).setText("and each creature you control"));
|
ability2.addEffect(new DamageAllEffect(2, new FilterControlledCreaturePermanent()).setText("and each creature you control"));
|
||||||
this.addAbility(ability2);
|
this.addAbility(ability2);
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,7 +65,7 @@ public class Sparkcaster extends CardImpl {
|
||||||
// When Sparkcaster enters the battlefield, return a red or green creature you control to its owner's hand.
|
// When Sparkcaster enters the battlefield, return a red or green creature you control to its owner's hand.
|
||||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), false));
|
this.addAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), false));
|
||||||
// When Sparkcaster enters the battlefield, it deals 1 damage to target player.
|
// When Sparkcaster enters the battlefield, it deals 1 damage to target player.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(1), false);
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(1, "it"), false);
|
||||||
ability.addTarget(new TargetPlayer());
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ public class SpiresideInfiltrator extends CardImpl {
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// Whenever Spireside Infiltrator becomes tapped, it deals one damage to each opponent.
|
// Whenever Spireside Infiltrator becomes tapped, it deals one damage to each opponent.
|
||||||
this.addAbility(new BecomesTappedSourceTriggeredAbility(new DamagePlayersEffect(1, TargetController.OPPONENT)));
|
this.addAbility(new BecomesTappedSourceTriggeredAbility(new DamagePlayersEffect(1, TargetController.OPPONENT, "it")));
|
||||||
}
|
}
|
||||||
|
|
||||||
public SpiresideInfiltrator(final SpiresideInfiltrator card) {
|
public SpiresideInfiltrator(final SpiresideInfiltrator card) {
|
||||||
|
|
|
@ -53,7 +53,7 @@ public class Spitebellows extends CardImpl {
|
||||||
this.toughness = new MageInt(1);
|
this.toughness = new MageInt(1);
|
||||||
|
|
||||||
// When Spitebellows leaves the battlefield, it deals 6 damage to target creature.
|
// When Spitebellows leaves the battlefield, it deals 6 damage to target creature.
|
||||||
Ability ability = new LeavesBattlefieldTriggeredAbility(new DamageTargetEffect(6), false);
|
Ability ability = new LeavesBattlefieldTriggeredAbility(new DamageTargetEffect(6, "it"), false);
|
||||||
ability.addTarget(new TargetCreaturePermanent());
|
ability.addTarget(new TargetCreaturePermanent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
// Evoke {1}{R}{R}
|
// Evoke {1}{R}{R}
|
||||||
|
|
67
Mage.Sets/src/mage/cards/s/StormFleetSprinter.java
Normal file
67
Mage.Sets/src/mage/cards/s/StormFleetSprinter.java
Normal file
|
@ -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.cards.s;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
import mage.MageInt;
|
||||||
|
import mage.abilities.keyword.CantBeBlockedSourceAbility;
|
||||||
|
import mage.abilities.keyword.HasteAbility;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author JayDi85
|
||||||
|
*/
|
||||||
|
public class StormFleetSprinter extends CardImpl {
|
||||||
|
|
||||||
|
public StormFleetSprinter(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}{R}");
|
||||||
|
|
||||||
|
this.subtype.add(SubType.HUMAN);
|
||||||
|
this.subtype.add(SubType.PIRATE);
|
||||||
|
this.power = new MageInt(2);
|
||||||
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
|
// Haste
|
||||||
|
this.addAbility(HasteAbility.getInstance());
|
||||||
|
|
||||||
|
// Storm Fleet Sprinter can’t be blocked.
|
||||||
|
this.addAbility(new CantBeBlockedSourceAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
public StormFleetSprinter(final StormFleetSprinter card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StormFleetSprinter copy() {
|
||||||
|
return new StormFleetSprinter(this);
|
||||||
|
}
|
||||||
|
}
|
|
@ -64,7 +64,7 @@ public class SubterraneanShambler extends CardImpl {
|
||||||
this.addAbility(new EchoAbility("{3}{R}"));
|
this.addAbility(new EchoAbility("{3}{R}"));
|
||||||
|
|
||||||
// When Subterranean Shambler enters the battlefield or leaves the battlefield, it deals 1 damage to each creature without flying.
|
// When Subterranean Shambler enters the battlefield or leaves the battlefield, it deals 1 damage to each creature without flying.
|
||||||
this.addAbility(new EntersBattlefieldOrLeavesSourceTriggeredAbility(new DamageAllEffect(1, filter), false));
|
this.addAbility(new EntersBattlefieldOrLeavesSourceTriggeredAbility(new DamageAllEffect(1, "it", filter), false));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,7 @@ public class SunscorchedDesert extends CardImpl {
|
||||||
this.subtype.add(SubType.DESERT);
|
this.subtype.add(SubType.DESERT);
|
||||||
|
|
||||||
// When Sunscorced Desert enters the battlefield, it deals 1 damage to target player.
|
// When Sunscorced Desert enters the battlefield, it deals 1 damage to target player.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(1));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(1, "it"));
|
||||||
ability.addTarget(new TargetPlayer());
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -57,7 +57,7 @@ public class ThorncasterSliver extends CardImpl {
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// Sliver creatures you control have "Whenever this creature attacks, it deals 1 damage to target creature or player."
|
// Sliver creatures you control have "Whenever this creature attacks, it deals 1 damage to target creature or player."
|
||||||
Ability ability = new AttacksTriggeredAbility(new DamageTargetEffect(1), false);
|
Ability ability = new AttacksTriggeredAbility(new DamageTargetEffect(1, "it"), false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
|
||||||
new GainAbilityControlledEffect(ability,
|
new GainAbilityControlledEffect(ability,
|
||||||
|
|
|
@ -62,7 +62,7 @@ public class ThornscapeBattlemage extends CardImpl {
|
||||||
this.addAbility(kickerAbility);
|
this.addAbility(kickerAbility);
|
||||||
|
|
||||||
// When {this} enters the battlefield, if it was kicked with its {R} kicker, it deals 2 damage to target creature or player.
|
// When {this} enters the battlefield, if it was kicked with its {R} kicker, it deals 2 damage to target creature or player.
|
||||||
TriggeredAbility ability1 = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2));
|
TriggeredAbility ability1 = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(2, "it"));
|
||||||
ability1.addTarget(new TargetCreatureOrPlayer());
|
ability1.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(new ConditionalTriggeredAbility(ability1, new KickedCostCondition("{R}"),
|
this.addAbility(new ConditionalTriggeredAbility(ability1, new KickedCostCondition("{R}"),
|
||||||
"When {this} enters the battlefield, if it was kicked with its {R} kicker, it deals 2 damage to target creature or player."));
|
"When {this} enters the battlefield, if it was kicked with its {R} kicker, it deals 2 damage to target creature or player."));
|
||||||
|
|
|
@ -63,7 +63,7 @@ public class ThunderDragon extends CardImpl {
|
||||||
this.addAbility(FlyingAbility.getInstance());
|
this.addAbility(FlyingAbility.getInstance());
|
||||||
|
|
||||||
// When Thunder Dragon enters the battlefield, it deals 3 damage to each creature without flying.
|
// When Thunder Dragon enters the battlefield, it deals 3 damage to each creature without flying.
|
||||||
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageAllEffect(3, filter));
|
TriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DamageAllEffect(3, "it", filter));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -74,7 +74,7 @@ public class ThundermawHellkite extends CardImpl {
|
||||||
this.addAbility(HasteAbility.getInstance());
|
this.addAbility(HasteAbility.getInstance());
|
||||||
|
|
||||||
// When Thundermaw Hellkite enters the battlefield, it deals 1 damage to each creature with flying your opponents control. Tap those creatures.
|
// When Thundermaw Hellkite enters the battlefield, it deals 1 damage to each creature with flying your opponents control. Tap those creatures.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageAllEffect(1, filter));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageAllEffect(1, "it", filter));
|
||||||
ability.addEffect(new TapAllEffect(filter));
|
ability.addEffect(new TapAllEffect(filter));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,7 +57,7 @@ public class TrialOfZeal extends CardImpl {
|
||||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}");
|
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}");
|
||||||
|
|
||||||
// When Trial of Zeal enters the battlefield, it deals 3 damage to target creature or player.
|
// When Trial of Zeal enters the battlefield, it deals 3 damage to target creature or player.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3, "it"));
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,7 @@ public class TyrantsFamiliar extends CardImpl {
|
||||||
this.addAbility(HasteAbility.getInstance());
|
this.addAbility(HasteAbility.getInstance());
|
||||||
|
|
||||||
// Lieutenant - As long as you control your commander, Tyrant's Familiar gets +2/+2 and has "Whenever Tyrant's Familiar attacks, it deals 7 damage to target creature defending player controls."
|
// Lieutenant - As long as you control your commander, Tyrant's Familiar gets +2/+2 and has "Whenever Tyrant's Familiar attacks, it deals 7 damage to target creature defending player controls."
|
||||||
Ability gainedAbility = new AttacksTriggeredAbility(new DamageTargetEffect(7), false);
|
Ability gainedAbility = new AttacksTriggeredAbility(new DamageTargetEffect(7, "it"), false);
|
||||||
gainedAbility.addTarget(new TargetCreaturePermanent());
|
gainedAbility.addTarget(new TargetCreaturePermanent());
|
||||||
ContinuousEffect effect = new GainAbilitySourceEffect(gainedAbility);
|
ContinuousEffect effect = new GainAbilitySourceEffect(gainedAbility);
|
||||||
effect.setText("and has \"Whenever {this} attacks, it deals 7 damage to target creature defending player controls\"");
|
effect.setText("and has \"Whenever {this} attacks, it deals 7 damage to target creature defending player controls\"");
|
||||||
|
|
|
@ -68,7 +68,7 @@ public class VoraciousDragon extends CardImpl {
|
||||||
this.addAbility(new DevourAbility(DevourFactor.Devour1));
|
this.addAbility(new DevourAbility(DevourFactor.Devour1));
|
||||||
|
|
||||||
// When Voracious Dragon enters the battlefield, it deals damage to target creature or player equal to twice the number of Goblins it devoured.
|
// When Voracious Dragon enters the battlefield, it deals damage to target creature or player equal to twice the number of Goblins it devoured.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new TwiceDevouredGoblins()), false);
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new TwiceDevouredGoblins(), "it"), false);
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,9 +66,7 @@ public class WalkingBallista extends CardImpl {
|
||||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), new GenericManaCost(4)));
|
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), new GenericManaCost(4)));
|
||||||
|
|
||||||
// Remove a +1/+1 counter from Walking Ballista: It deals 1 damage to target creature or player.
|
// Remove a +1/+1 counter from Walking Ballista: It deals 1 damage to target creature or player.
|
||||||
Effect effect = new DamageTargetEffect(1);
|
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1, "It"), new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1)));
|
||||||
effect.setText("It deals 1 damage to target creature or player");
|
|
||||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1)));
|
|
||||||
ability.addTarget(new TargetCreatureOrPlayer());
|
ability.addTarget(new TargetCreatureOrPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ public class WhiptailMoloch extends CardImpl {
|
||||||
this.toughness = new MageInt(3);
|
this.toughness = new MageInt(3);
|
||||||
|
|
||||||
// When Whiptail Moloch enters the battlefield, it deals 3 damage to target creature you control.
|
// When Whiptail Moloch enters the battlefield, it deals 3 damage to target creature you control.
|
||||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3), false);
|
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(3, "it"), false);
|
||||||
ability.addTarget(new TargetControlledCreaturePermanent());
|
ability.addTarget(new TargetControlledCreaturePermanent());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,10 +64,13 @@ public class RivalsOfIxalan extends ExpansionSet {
|
||||||
cards.add(new SetCardInfo("Captain's Hook", 177, Rarity.RARE, mage.cards.c.CaptainsHook.class));
|
cards.add(new SetCardInfo("Captain's Hook", 177, Rarity.RARE, mage.cards.c.CaptainsHook.class));
|
||||||
cards.add(new SetCardInfo("Cinder Barrens", 205, Rarity.RARE, mage.cards.c.CinderBarrens.class));
|
cards.add(new SetCardInfo("Cinder Barrens", 205, Rarity.RARE, mage.cards.c.CinderBarrens.class));
|
||||||
cards.add(new SetCardInfo("Deeproot Elite", 127, Rarity.RARE, mage.cards.d.DeeprootElite.class));
|
cards.add(new SetCardInfo("Deeproot Elite", 127, Rarity.RARE, mage.cards.d.DeeprootElite.class));
|
||||||
|
cards.add(new SetCardInfo("Dire Fleet Neckbreaker", 156, Rarity.UNCOMMON, mage.cards.d.DireFleetNeckbreaker.class));
|
||||||
cards.add(new SetCardInfo("Dusk Charger", 69, Rarity.COMMON, mage.cards.d.DuskCharger.class));
|
cards.add(new SetCardInfo("Dusk Charger", 69, Rarity.COMMON, mage.cards.d.DuskCharger.class));
|
||||||
|
cards.add(new SetCardInfo("Dusk Legion Zealot", 70, Rarity.COMMON, mage.cards.d.DuskLegionZealot.class));
|
||||||
cards.add(new SetCardInfo("Elenda, the Dusk Rose", 157, Rarity.MYTHIC, mage.cards.e.ElendaTheDuskRose.class));
|
cards.add(new SetCardInfo("Elenda, the Dusk Rose", 157, Rarity.MYTHIC, mage.cards.e.ElendaTheDuskRose.class));
|
||||||
cards.add(new SetCardInfo("Etali, Primal Storm", 100, Rarity.RARE, mage.cards.e.EtaliPrimalStorm.class));
|
cards.add(new SetCardInfo("Etali, Primal Storm", 100, Rarity.RARE, mage.cards.e.EtaliPrimalStorm.class));
|
||||||
cards.add(new SetCardInfo("Evolving Wilds", 186, Rarity.COMMON, mage.cards.e.EvolvingWilds.class));
|
cards.add(new SetCardInfo("Evolving Wilds", 186, Rarity.COMMON, mage.cards.e.EvolvingWilds.class));
|
||||||
|
cards.add(new SetCardInfo("Fanatical Firebrand", 101, Rarity.COMMON, mage.cards.f.FanaticalFirebrand.class));
|
||||||
cards.add(new SetCardInfo("Forerunner of the Coalition", 72, Rarity.UNCOMMON, mage.cards.f.ForerunnerOfTheCoalition.class));
|
cards.add(new SetCardInfo("Forerunner of the Coalition", 72, Rarity.UNCOMMON, mage.cards.f.ForerunnerOfTheCoalition.class));
|
||||||
cards.add(new SetCardInfo("Forerunner of the Empire", 102, Rarity.UNCOMMON, mage.cards.f.ForerunnerOfTheEmpire.class));
|
cards.add(new SetCardInfo("Forerunner of the Empire", 102, Rarity.UNCOMMON, mage.cards.f.ForerunnerOfTheEmpire.class));
|
||||||
cards.add(new SetCardInfo("Forerunner of the Heralds", 129, Rarity.UNCOMMON, mage.cards.f.ForerunnerOfTheHeralds.class));
|
cards.add(new SetCardInfo("Forerunner of the Heralds", 129, Rarity.UNCOMMON, mage.cards.f.ForerunnerOfTheHeralds.class));
|
||||||
|
@ -92,6 +95,7 @@ public class RivalsOfIxalan extends ExpansionSet {
|
||||||
cards.add(new SetCardInfo("Silvergill Adept", 53, Rarity.UNCOMMON, mage.cards.s.SilvergillAdept.class));
|
cards.add(new SetCardInfo("Silvergill Adept", 53, Rarity.UNCOMMON, mage.cards.s.SilvergillAdept.class));
|
||||||
cards.add(new SetCardInfo("Skymarcher Aspirant", 21, Rarity.UNCOMMON, mage.cards.s.SkymarcherAspirant.class));
|
cards.add(new SetCardInfo("Skymarcher Aspirant", 21, Rarity.UNCOMMON, mage.cards.s.SkymarcherAspirant.class));
|
||||||
cards.add(new SetCardInfo("Sphinx's Decree", 24, Rarity.RARE, mage.cards.s.SphinxsDecree.class));
|
cards.add(new SetCardInfo("Sphinx's Decree", 24, Rarity.RARE, mage.cards.s.SphinxsDecree.class));
|
||||||
|
cards.add(new SetCardInfo("Storm Fleet Sprinter", 172, Rarity.UNCOMMON, mage.cards.s.StormFleetSprinter.class));
|
||||||
cards.add(new SetCardInfo("Storm the Vault", 173, Rarity.RARE, mage.cards.s.StormTheVault.class));
|
cards.add(new SetCardInfo("Storm the Vault", 173, Rarity.RARE, mage.cards.s.StormTheVault.class));
|
||||||
cards.add(new SetCardInfo("Swab Goblin", 203, Rarity.COMMON, mage.cards.s.SwabGoblin.class));
|
cards.add(new SetCardInfo("Swab Goblin", 203, Rarity.COMMON, mage.cards.s.SwabGoblin.class));
|
||||||
cards.add(new SetCardInfo("Tetzimoc, Primal Death", 86, Rarity.RARE, mage.cards.t.TetzimocPrimalDeath.class));
|
cards.add(new SetCardInfo("Tetzimoc, Primal Death", 86, Rarity.RARE, mage.cards.t.TetzimocPrimalDeath.class));
|
||||||
|
|
|
@ -121,6 +121,7 @@ public class Weatherlight extends ExpansionSet {
|
||||||
cards.add(new SetCardInfo("Guided Strike", 132, Rarity.COMMON, mage.cards.g.GuidedStrike.class));
|
cards.add(new SetCardInfo("Guided Strike", 132, Rarity.COMMON, mage.cards.g.GuidedStrike.class));
|
||||||
cards.add(new SetCardInfo("Harvest Wurm", 72, Rarity.COMMON, mage.cards.h.HarvestWurm.class));
|
cards.add(new SetCardInfo("Harvest Wurm", 72, Rarity.COMMON, mage.cards.h.HarvestWurm.class));
|
||||||
cards.add(new SetCardInfo("Haunting Misery", 13, Rarity.COMMON, mage.cards.h.HauntingMisery.class));
|
cards.add(new SetCardInfo("Haunting Misery", 13, Rarity.COMMON, mage.cards.h.HauntingMisery.class));
|
||||||
|
cards.add(new SetCardInfo("Heart of Bogardan", 106, Rarity.RARE, mage.cards.h.HeartOfBogardan.class));
|
||||||
cards.add(new SetCardInfo("Heat Stroke", 107, Rarity.RARE, mage.cards.h.HeatStroke.class));
|
cards.add(new SetCardInfo("Heat Stroke", 107, Rarity.RARE, mage.cards.h.HeatStroke.class));
|
||||||
cards.add(new SetCardInfo("Heavy Ballista", 133, Rarity.COMMON, mage.cards.h.HeavyBallista.class));
|
cards.add(new SetCardInfo("Heavy Ballista", 133, Rarity.COMMON, mage.cards.h.HeavyBallista.class));
|
||||||
cards.add(new SetCardInfo("Hidden Horror", 14, Rarity.UNCOMMON, mage.cards.h.HiddenHorror.class));
|
cards.add(new SetCardInfo("Hidden Horror", 14, Rarity.UNCOMMON, mage.cards.h.HiddenHorror.class));
|
||||||
|
|
|
@ -53,13 +53,16 @@ public class DamageAllEffect extends OneShotEffect {
|
||||||
|
|
||||||
public DamageAllEffect(int amount, String whoDealDamageName, FilterPermanent filter) {
|
public DamageAllEffect(int amount, String whoDealDamageName, FilterPermanent filter) {
|
||||||
this(new StaticValue(amount), filter);
|
this(new StaticValue(amount), filter);
|
||||||
|
|
||||||
this.sourceName = whoDealDamageName;
|
this.sourceName = whoDealDamageName;
|
||||||
|
setText(); // TODO: replace to @Override public String getText()
|
||||||
}
|
}
|
||||||
|
|
||||||
public DamageAllEffect(DynamicValue amount, FilterPermanent filter) {
|
public DamageAllEffect(DynamicValue amount, FilterPermanent filter) {
|
||||||
super(Outcome.Damage);
|
super(Outcome.Damage);
|
||||||
this.amount = amount;
|
this.amount = amount;
|
||||||
this.filter = filter;
|
this.filter = filter;
|
||||||
|
|
||||||
setText();
|
setText();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,7 +87,7 @@ public class DamageAllEffect extends OneShotEffect {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setText() {
|
public void setText() {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append(this.sourceName).append(" deals ").append(amount.toString()).append(" damage to each ").append(filter.getMessage());
|
sb.append(this.sourceName).append(" deals ").append(amount.toString()).append(" damage to each ").append(filter.getMessage());
|
||||||
String message = amount.getMessage();
|
String message = amount.getMessage();
|
||||||
|
|
|
@ -50,11 +50,19 @@ public class DamageEverythingEffect extends OneShotEffect {
|
||||||
private DynamicValue amount;
|
private DynamicValue amount;
|
||||||
private FilterPermanent filter;
|
private FilterPermanent filter;
|
||||||
private UUID damageSource;
|
private UUID damageSource;
|
||||||
|
private String sourceName = "{source}";
|
||||||
|
|
||||||
public DamageEverythingEffect(int amount) {
|
public DamageEverythingEffect(int amount) {
|
||||||
this(new StaticValue(amount), new FilterCreaturePermanent());
|
this(new StaticValue(amount), new FilterCreaturePermanent());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DamageEverythingEffect(int amount, String whoDealDamageName) {
|
||||||
|
this(new StaticValue(amount), new FilterCreaturePermanent());
|
||||||
|
|
||||||
|
this.sourceName = whoDealDamageName;
|
||||||
|
setText(); // TODO: replace to @Override public String getText()
|
||||||
|
}
|
||||||
|
|
||||||
public DamageEverythingEffect(DynamicValue amount) {
|
public DamageEverythingEffect(DynamicValue amount) {
|
||||||
this(amount, new FilterCreaturePermanent());
|
this(amount, new FilterCreaturePermanent());
|
||||||
}
|
}
|
||||||
|
@ -62,6 +70,7 @@ public class DamageEverythingEffect extends OneShotEffect {
|
||||||
public DamageEverythingEffect(int amount, FilterPermanent filter) {
|
public DamageEverythingEffect(int amount, FilterPermanent filter) {
|
||||||
this(new StaticValue(amount), filter);
|
this(new StaticValue(amount), filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DamageEverythingEffect(DynamicValue amount, FilterPermanent filter) {
|
public DamageEverythingEffect(DynamicValue amount, FilterPermanent filter) {
|
||||||
this(amount, filter, null);
|
this(amount, filter, null);
|
||||||
}
|
}
|
||||||
|
@ -71,7 +80,11 @@ public class DamageEverythingEffect extends OneShotEffect {
|
||||||
this.amount = amount;
|
this.amount = amount;
|
||||||
this.filter = filter;
|
this.filter = filter;
|
||||||
this.damageSource = damageSource;
|
this.damageSource = damageSource;
|
||||||
staticText = "{source} deals " + amount.toString() + " damage to each " + filter.getMessage() + " and each player";
|
setText();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setText() {
|
||||||
|
staticText = this.sourceName + " deals " + this.amount.toString() + " damage to each " + this.filter.getMessage() + " and each player";
|
||||||
}
|
}
|
||||||
|
|
||||||
public DamageEverythingEffect(final DamageEverythingEffect effect) {
|
public DamageEverythingEffect(final DamageEverythingEffect effect) {
|
||||||
|
@ -79,6 +92,7 @@ public class DamageEverythingEffect extends OneShotEffect {
|
||||||
this.amount = effect.amount;
|
this.amount = effect.amount;
|
||||||
this.filter = effect.filter;
|
this.filter = effect.filter;
|
||||||
this.damageSource = effect.damageSource;
|
this.damageSource = effect.damageSource;
|
||||||
|
this.sourceName = effect.sourceName;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -44,6 +44,7 @@ import mage.players.Player;
|
||||||
public class DamagePlayersEffect extends OneShotEffect {
|
public class DamagePlayersEffect extends OneShotEffect {
|
||||||
private DynamicValue amount;
|
private DynamicValue amount;
|
||||||
private TargetController controller;
|
private TargetController controller;
|
||||||
|
private String sourceName = "{source}";
|
||||||
|
|
||||||
public DamagePlayersEffect(int amount) {
|
public DamagePlayersEffect(int amount) {
|
||||||
this(Outcome.Damage, new StaticValue(amount));
|
this(Outcome.Damage, new StaticValue(amount));
|
||||||
|
@ -53,6 +54,13 @@ public class DamagePlayersEffect extends OneShotEffect {
|
||||||
this(Outcome.Damage, new StaticValue(amount), controller);
|
this(Outcome.Damage, new StaticValue(amount), controller);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DamagePlayersEffect(int amount, TargetController controller, String whoDealDamageName) {
|
||||||
|
this(Outcome.Damage, new StaticValue(amount), controller);
|
||||||
|
|
||||||
|
this.sourceName = whoDealDamageName;
|
||||||
|
setText(); // TODO: replace to @Override public String getText()
|
||||||
|
}
|
||||||
|
|
||||||
public DamagePlayersEffect(Outcome outcome, DynamicValue amount) {
|
public DamagePlayersEffect(Outcome outcome, DynamicValue amount) {
|
||||||
this(outcome, amount, TargetController.ANY);
|
this(outcome, amount, TargetController.ANY);
|
||||||
}
|
}
|
||||||
|
@ -69,6 +77,7 @@ public class DamagePlayersEffect extends OneShotEffect {
|
||||||
super(effect);
|
super(effect);
|
||||||
this.amount = effect.amount;
|
this.amount = effect.amount;
|
||||||
this.controller = effect.controller;
|
this.controller = effect.controller;
|
||||||
|
this.sourceName = effect.sourceName;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -103,7 +112,7 @@ public class DamagePlayersEffect extends OneShotEffect {
|
||||||
|
|
||||||
private void setText()
|
private void setText()
|
||||||
{
|
{
|
||||||
StringBuilder sb = new StringBuilder("{source} deals ").append(amount.toString());
|
StringBuilder sb = new StringBuilder().append(this.sourceName).append(" deals ").append(amount.toString());
|
||||||
switch (controller) {
|
switch (controller) {
|
||||||
case ANY:
|
case ANY:
|
||||||
sb.append(" damage to each player");
|
sb.append(" damage to each player");
|
||||||
|
|
|
@ -32705,40 +32705,50 @@ Radiant Destiny|Rivals of Ixalan|18|R|{2}{W}|Enchantment|||Ascend <i>(If you con
|
||||||
Skymarcher Aspirant|Rivals of Ixalan|21|U|{W}|Creature - Vampire Soldier|2|1|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Skymarcher Aspirant has flying as long as you have the city's blessing.|
|
Skymarcher Aspirant|Rivals of Ixalan|21|U|{W}|Creature - Vampire Soldier|2|1|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Skymarcher Aspirant has flying as long as you have the city's blessing.|
|
||||||
Slaughter the Strong|Rivals of Ixalan|22|R|{1}{W}{W}|Sorcery|||Each player chooses any number of creatures he or she controls with total power 4 or less, then sacrifices all other creatures he or she controls.|
|
Slaughter the Strong|Rivals of Ixalan|22|R|{1}{W}{W}|Sorcery|||Each player chooses any number of creatures he or she controls with total power 4 or less, then sacrifices all other creatures he or she controls.|
|
||||||
Sphinx's Decree|Rivals of Ixalan|24|R|{1}{W}|Sorcery|||Each opponent can't cast instant or sorcery spells during that player's next turn.|
|
Sphinx's Decree|Rivals of Ixalan|24|R|{1}{W}|Sorcery|||Each opponent can't cast instant or sorcery spells during that player's next turn.|
|
||||||
|
Sun-Crested Pterodon|Rivals of Ixalan|27|C|{4}{W}|Creature - Dinosaur|2|5|Flying$Sun-Crested Pterodon has vigilance as long as you control another Dinosaur.|
|
||||||
Temple Altisaur|Rivals of Ixalan|28|R|{4}{W}|Creature - Dinosaur|3|4|If a source would deal damage to another Dinosaur you control, prevent all but 1 of that damage.|
|
Temple Altisaur|Rivals of Ixalan|28|R|{4}{W}|Creature - Dinosaur|3|4|If a source would deal damage to another Dinosaur you control, prevent all but 1 of that damage.|
|
||||||
Vicious Cagemaw|Rivals of Ixalan|29|M|{3}{W}{W}|Creature - Dinosaur|5|5|<i>Enrage</i> — Whenever Vicious Cagemaw is dealt damage, exile target creature an opponent controls until Vicious Cagemaw leaves the battlefield.|
|
Vicious Cagemaw|Rivals of Ixalan|29|M|{3}{W}{W}|Creature - Dinosaur|5|5|<i>Enrage</i> — Whenever Vicious Cagemaw is dealt damage, exile target creature an opponent controls until Vicious Cagemaw leaves the battlefield.|
|
||||||
Zetalpa, Primal Dawn|Rivals of Ixalan|30|R|{6}{W}{W}|Legendary Creature - Elder Dinosaur|4|8|Flying, double strike, vigilance, trample, indestructible|
|
Zetalpa, Primal Dawn|Rivals of Ixalan|30|R|{6}{W}{W}|Legendary Creature - Elder Dinosaur|4|8|Flying, double strike, vigilance, trample, indestructible|
|
||||||
Admiral's Order|Rivals of Ixalan|31|R|{1}{U}{U}|Instant|||<i>Raid</i> — If you attacked with a creature this turn, you may pay {U} rather than pay this spell's mana cost.$Counter target spell.|
|
Admiral's Order|Rivals of Ixalan|31|R|{1}{U}{U}|Instant|||<i>Raid</i> — If you attacked with a creature this turn, you may pay {U} rather than pay this spell's mana cost.$Counter target spell.|
|
||||||
Aquatic Incursion|Rivals of Ixalan|32|U|{3}{U}|Enchantment|||When Aquatic Incursion enters the battlefield, create two 1/1 blue Merfolk creature tokens with hexproof. <i>(They can't be the target of spells or abilities your opponents control.)</i>${3}{U}: Target Merfolk can't be blocked this turn.|
|
Aquatic Incursion|Rivals of Ixalan|32|U|{3}{U}|Enchantment|||When Aquatic Incursion enters the battlefield, create two 1/1 blue Merfolk creature tokens with hexproof. <i>(They can't be the target of spells or abilities your opponents control.)</i>${3}{U}: Target Merfolk can't be blocked this turn.|
|
||||||
Crafty Cutpurse|Rivals of Ixalan|33|R|{3}{U}|Creature - Human Pirate|2|2|Flash$When Crafty Cutpurse enters the battlefield, each token that would be created under an opponent's control this turn is created your control instead.|
|
Crafty Cutpurse|Rivals of Ixalan|33|R|{3}{U}|Creature - Human Pirate|2|2|Flash$When Crafty Cutpurse enters the battlefield, each token that would be created under an opponent's control this turn is created your control instead.|
|
||||||
Deadeye Rig Hauler|Rivals of Ixalan|36|C|{3}{U}|Creature - Human Pirate|3|2|<i>Raid</i>— When Fathom Fleet Rig-Hauler enters the battlefield, if you attacked with a creature this turn, you may return target creature to its owner's hand.|
|
Deadeye Rig-Hauler|Rivals of Ixalan|36|C|{3}{U}|Creature - Human Pirate|3|2|<i>Raid</i>— When Deadeye Rig-Hauler enters the battlefield, if you attacked with a creature this turn, you may return target creature to its owner's hand.|
|
||||||
Flood of Recollection|Rivals of Ixalan|38|U|{U}{U}|Sorcery|||Return target instant or sorcery card from your graveyard to your hand. Exile Flood of Recollection.|
|
Flood of Recollection|Rivals of Ixalan|38|U|{U}{U}|Sorcery|||Return target instant or sorcery card from your graveyard to your hand. Exile Flood of Recollection.|
|
||||||
|
Hornswoggle|Rivals of Ixalan|39|U|{2}{U}|Instant|||Counter target creature spell. You create a colorless Treasure artifact token with "{T}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
||||||
Induced Amnesia|Rivals of Ixalan|40|R|{2}{U}|Enchantment|||When Induced Amnesia enters the battlefield, target player exiles all the cards in his or her hand face down, then draws that many cards.$When Induced Amnesia is put into a graveyard from the battlefield, return the exiled cards to their owner's hand.|
|
Induced Amnesia|Rivals of Ixalan|40|R|{2}{U}|Enchantment|||When Induced Amnesia enters the battlefield, target player exiles all the cards in his or her hand face down, then draws that many cards.$When Induced Amnesia is put into a graveyard from the battlefield, return the exiled cards to their owner's hand.|
|
||||||
Kumena's Awakening|Rivals of Ixalan|42|R|{2}{U}{U}|Enchantment|||Ascend <i>(If you control ten or more permenants, you get the city's blessing for the rest of the game.)</i>$At the beginning of your upkeep, each player draws a card. If you have the city's blessing, instead only you draw a card.|
|
Kumena's Awakening|Rivals of Ixalan|42|R|{2}{U}{U}|Enchantment|||Ascend <i>(If you control ten or more permenants, you get the city's blessing for the rest of the game.)</i>$At the beginning of your upkeep, each player draws a card. If you have the city's blessing, instead only you draw a card.|
|
||||||
Negate|Rivals of Ixalan|44|C|{1}{U}|Instant|||Counter target noncreature spell.|
|
Negate|Rivals of Ixalan|44|C|{1}{U}|Instant|||Counter target noncreature spell.|
|
||||||
Nezahal, Primal Tide|Rivals of Ixalan|45|M|{5}{U}{U}|Legendary Creature - Elder Dinosaur|7|7|Nezahal, Primal Tide can't be countered.$You have no maximum hand size.$Whenever an opponent casts a noncreature spell, draw a card.$Discard three cards: Exile Nezahal. Return it to the battlefield tapped under its owner's control at the beginning of the next end step.|
|
Nezahal, Primal Tide|Rivals of Ixalan|45|M|{5}{U}{U}|Legendary Creature - Elder Dinosaur|7|7|Nezahal, Primal Tide can't be countered.$You have no maximum hand size.$Whenever an opponent casts a noncreature spell, draw a card.$Discard three cards: Exile Nezahal. Return it to the battlefield tapped under its owner's control at the beginning of the next end step.|
|
||||||
Disperse in the Wind|Rivals of Ixalan|46|R|{2}{U}|Instant|||Exile target nonland permanent. For as long as that card remains exiled, it's owner may cast it without paying its mana cost.|
|
Return to the Wind|Rivals of Ixalan|46|R|{2}{U}|Instant|||Exile target nonland permanent. For as long as that card remains exiled, its owner may cast it without paying its mana cost.|
|
||||||
River Darter|Rivals of Ixalan|47|C|{2}{U}|Creature - Merfolk Warrior|2|3|River Darter can't be blocked by Dinosaurs.|
|
River Darter|Rivals of Ixalan|47|C|{2}{U}|Creature - Merfolk Warrior|2|3|River Darter can't be blocked by Dinosaurs.|
|
||||||
|
Sea Legs|Rivals of Ixalan|50|C|{U}|Enchantment - Aura|||Flash$Enchant creature$Enchanted creature gets +0/+2 as long as it's a Pirate. Otherwise, it gets -2/-0.|
|
||||||
Seafloor Oracle|Rivals of Ixalan|51|R|{2}{U}{U}|Creature - Merfolk Wizard|2|3|Whenever a Merfolk you controls deals combat damage to a player, draw a card.|
|
Seafloor Oracle|Rivals of Ixalan|51|R|{2}{U}{U}|Creature - Merfolk Wizard|2|3|Whenever a Merfolk you controls deals combat damage to a player, draw a card.|
|
||||||
Secrets of the Golden City|Rivals of Ixalan|52|C|{1}{U}{U}|Sorcery|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Draw two cards. If you have the city's blessing, draw three cards instead.|
|
Secrets of the Golden City|Rivals of Ixalan|52|C|{1}{U}{U}|Sorcery|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Draw two cards. If you have the city's blessing, draw three cards instead.|
|
||||||
Silvergill Adept|Rivals of Ixalan|53|U|{1}{U}|Creature - Merfolk Wizard|2|1|As an additional cost to cast Silvergill Adept, reveal a Merfolk card from your hand or pay {3}.$When Silvergill Adept enters the battlefield, draw a card.|
|
Silvergill Adept|Rivals of Ixalan|53|U|{1}{U}|Creature - Merfolk Wizard|2|1|As an additional cost to cast Silvergill Adept, reveal a Merfolk card from your hand or pay {3}.$When Silvergill Adept enters the battlefield, draw a card.|
|
||||||
Timestream Navigator|Rivals of Ixalan|59|M|{1}{U}|Creature - Human Pirate Wizard|1|1|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>${2}{U}{U}, {T}, Put Timestream Navigator on the bottom of its owner's library: Take an extra turn after this one. Activate this ability only if you have the city's blessing.|
|
Timestream Navigator|Rivals of Ixalan|59|M|{1}{U}|Creature - Human Pirate Wizard|1|1|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>${2}{U}{U}, {T}, Put Timestream Navigator on the bottom of its owner's library: Take an extra turn after this one. Activate this ability only if you have the city's blessing.|
|
||||||
Warsail Marauder|Rivals of Ixalan|60|R|{1}{U}|Creature - Human Pirate|2|1|Flying$Whenever Warsail Marauder attacks, target creature loses all abilities and has base power and toughness 0/1 until end of turn.|
|
Warkite Marauder|Rivals of Ixalan|60|R|{1}{U}|Creature - Human Pirate|2|1|Flying$Whenever Warkite Marauder attacks, target creature defending player controls loses all abilities and has base power and toughness 0/1 until end of turn.|
|
||||||
Arterial Flow|Rivals of Ixalan|62|U|{1}{B}{B}|Sorcery|||Each opponent discards two cards.$If you control a Vampire, each opponent loses 2 life and you gain 2 life.|
|
Arterial Flow|Rivals of Ixalan|62|U|{1}{B}{B}|Sorcery|||Each opponent discards two cards. If you control a Vampire, each opponent loses 2 life and you gain 2 life.|
|
||||||
|
Champion of Dusk|Rivals of Ixalan|64|R|{3}{B}{B}|Creature - Vampire Knight|4|4|When Champion of Dusk enters the battlefield, you draw X cards and you lose X life, where X is the number of Vampires you control.|
|
||||||
Dead Man's Chest|Rivals of Ixalan|66|R|{1}{B}|Enchantment - Aura|||Enchant creature an opponent controls$When enchanted creature dies, exile cards equal to its power from the top of its owner's library. You may cast nonland cards from among them as long as they remain exiled, and you may spend mana as though it were mana of any type to cast those spells.|
|
Dead Man's Chest|Rivals of Ixalan|66|R|{1}{B}|Enchantment - Aura|||Enchant creature an opponent controls$When enchanted creature dies, exile cards equal to its power from the top of its owner's library. You may cast nonland cards from among them as long as they remain exiled, and you may spend mana as though it were mana of any type to cast those spells.|
|
||||||
|
Dinosaur Hunter|Rivals of Ixalan|67|C|{1}{B}|Creature - Human Pirate|2|2|Whenever Dinosaur Hunter deals damage to a Dinosaur, destroy that creature.|
|
||||||
Dire Fleet Poisoner|Rivals of Ixalan|68|R|{1}{B}|Creature - Human Pirate|2|2|Flash$Deathtouch$When Dire Fleet Poisoner enters the battlefield, target attacking Pirate you control gets +1/+1 and gains deathtouch until end of turn.|
|
Dire Fleet Poisoner|Rivals of Ixalan|68|R|{1}{B}|Creature - Human Pirate|2|2|Flash$Deathtouch$When Dire Fleet Poisoner enters the battlefield, target attacking Pirate you control gets +1/+1 and gains deathtouch until end of turn.|
|
||||||
Dusk Charger|Rivals of Ixalan|69|C|{3}{B}|Creature - Horse|3|3|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Dusk Charger gets +2/+2 as long as you have the city's blessing.|
|
Dusk Charger|Rivals of Ixalan|69|C|{3}{B}|Creature - Horse|3|3|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Dusk Charger gets +2/+2 as long as you have the city's blessing.|
|
||||||
Dusk Legion Zealot|Rivals of Ixalan|70|C|{1}{B}|Creature - Vampire Soldier|1|1|When Dusk Legion Zealot enters the battlefield, you draw a card and you lose 1 life.|
|
Dusk Legion Zealot|Rivals of Ixalan|70|C|{1}{B}|Creature - Vampire Soldier|1|1|When Dusk Legion Zealot enters the battlefield, you draw a card and you lose 1 life.|
|
||||||
Forerunner of the Coalition|Rivals of Ixalan|72|U|{2}{B}|Creature - Human Pirate|2|2|When Forerunner of the Coalition enters the battlefield, you may search your library for a Pirate card, reveal it, then shuffle your library and put that card on top of it.$Whenever another Pirate enters the battlefield under your control, each opponent loses 1 life.|
|
Forerunner of the Coalition|Rivals of Ixalan|72|U|{2}{B}|Creature - Human Pirate|2|2|When Forerunner of the Coalition enters the battlefield, you may search your library for a Pirate card, reveal it, then shuffle your library and put that card on top of it.$Whenever another Pirate enters the battlefield under your control, each opponent loses 1 life.|
|
||||||
Golden Demise|Rivals of Ixalan|73|U|{1}{B}{B}|Sorcery|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$All creatures get -2/-2 until end of turn. If you have the city's blessing, instead only creatures your opponents control get -2/-2 until end of turn.|
|
Golden Demise|Rivals of Ixalan|73|U|{1}{B}{B}|Sorcery|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$All creatures get -2/-2 until end of turn. If you have the city's blessing, instead only creatures your opponents control get -2/-2 until end of turn.|
|
||||||
|
Mastermind's Acquisition|Rivals of Ixalan|77|R|{2}{B}{B}|Sorcery|||Choose one —$• Search your library for a card, put it into your hand, then shuffle your library.$• Choose a card you own from outside the game and put it into your hand.|
|
||||||
Moment of Craving|Rivals of Ixalan|79|C|{1}{B}|Instant|||Target creature gets -2/-2 until end of turn. You gain 2 life.|
|
Moment of Craving|Rivals of Ixalan|79|C|{1}{B}|Instant|||Target creature gets -2/-2 until end of turn. You gain 2 life.|
|
||||||
|
Pitiless Plunderer|Rivals of Ixalan|81|U|{3}{B}|Creature - Human Pirate|1|4|Whenever another creature you control dies, create a colorless Treasure artifact token with "{T}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
||||||
Ravenous Chupacabra|Rivals of Ixalan|82|U|{2}{B}{B}|Creature - Beast Horror|2|2|When Ravenous Chupacabra enters the battlefield, destroy target creature an opponent controls.|
|
Ravenous Chupacabra|Rivals of Ixalan|82|U|{2}{B}{B}|Creature - Beast Horror|2|2|When Ravenous Chupacabra enters the battlefield, destroy target creature an opponent controls.|
|
||||||
Tetzimoc, Primal Death|Rivals of Ixalan|86|R|{4}{B}{B}|Legendary Creature - Elder Dinosaur|6|6|Deathtouch${B}, Reveal Tetzimoc, Primal Death from your hand: Put a prey counter on target creature. Activate this ability only during your turn.$When Tetzimoc, Primal Death enters the battlefield, destroy each creature your opponents control with a prey counter on it.|
|
Tetzimoc, Primal Death|Rivals of Ixalan|86|R|{4}{B}{B}|Legendary Creature - Elder Dinosaur|6|6|Deathtouch${B}, Reveal Tetzimoc, Primal Death from your hand: Put a prey counter on target creature. Activate this ability only during your turn.$When Tetzimoc, Primal Death enters the battlefield, destroy each creature your opponents control with a prey counter on it.|
|
||||||
Tomb Robber|Rivals of Ixalan|87|R|{2}{B}|Creature - Human Pirate|1|1|Menace${1}, Discard a card: Tomb Robber explores. <i>(Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard.)</i>|
|
Tomb Robber|Rivals of Ixalan|87|R|{2}{B}|Creature - Human Pirate|1|1|Menace${1}, Discard a card: Tomb Robber explores. <i>(Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard.)</i>|
|
||||||
|
Twilight Prophet|Rivals of Ixalan|88|M|{2}{B}{B}|Creature - Vampire Cleric|2|4|Flying$Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$At the beginning of your upkeep, if you have the city's blessing, reveal the top card of your library and put it into your hand. Each opponent loses X life and you gain X life, where X is that card's converted mana cost.|
|
||||||
Vona's Hunger|Rivals of Ixalan|90|R|{2}{B}|Instant|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Each opponent sacrifices a creature. If you have the city's blessing, instead each opponent sacrifices half the creatures he or she controls rounded up.|
|
Vona's Hunger|Rivals of Ixalan|90|R|{2}{B}|Instant|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Each opponent sacrifices a creature. If you have the city's blessing, instead each opponent sacrifices half the creatures he or she controls rounded up.|
|
||||||
|
Blood Sun|Rivals of Ixalan|92|R|{2}{R}|Enchantment|||When Blood Sun enters the battlefield, draw a card.$All lands lose all abilities except mana abilities.|
|
||||||
Brass's Bounty|Rivals of Ixalan|94|R|{6}{R}|Sorcery|||For each land you control, create a colorless Treasure artifact token with "{t}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
Brass's Bounty|Rivals of Ixalan|94|R|{6}{R}|Sorcery|||For each land you control, create a colorless Treasure artifact token with "{t}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
||||||
|
Buccaneer's Bravado|Rivals of Ixalan|96|C|{1}{R}|Instant|||Choose one —$• Target creature gets +1/+1 and gains first strike until end of turn.$• Target Pirate gets +1/+1 and gains double strike until end of turn.|
|
||||||
Daring Buccaneer|Rivals of Ixalan|98|U|{R}|Creature - Human Pirate|2|2|As an additional cost to cast Daring Buccaneer, reveal a Pirate card from your hand or pay {2}.|
|
Daring Buccaneer|Rivals of Ixalan|98|U|{R}|Creature - Human Pirate|2|2|As an additional cost to cast Daring Buccaneer, reveal a Pirate card from your hand or pay {2}.|
|
||||||
Dire Fleet Daredevil|Rivals of Ixalan|99|R|{1}{R}|Creature - Human Pirate|2|1|First strike$When this enters the battlefield, exile target instant or sorcery card from an opponent's graveyard. You may cast that card this turn and you may spend mana as though it were mana of any color. If that card would be put into a graveyard this turn, exile it instead.|
|
Dire Fleet Daredevil|Rivals of Ixalan|99|R|{1}{R}|Creature - Human Pirate|2|1|First strike$When Dire Fleet Daredevil enters the battlefield, exile target instant or sorcery card from an opponent's graveyard. You may cast that card this turn, and you may spend mana as though it were mana of any type to cast that spell. If that card would be put into a graveyard this turn, exile it instead.|
|
||||||
Etali, Primal Storm|Rivals of Ixalan|100|R|{4}{R}{R}|Legendary Creature - Elder Dinosaur|6|6|Whenever Etali, Primal Storm attacks, exile the top card of each player's library, then you may cast any number of nonland cards exiled this way without paying their mana costs.|
|
Etali, Primal Storm|Rivals of Ixalan|100|R|{4}{R}{R}|Legendary Creature - Elder Dinosaur|6|6|Whenever Etali, Primal Storm attacks, exile the top card of each player's library, then you may cast any number of nonland cards exiled this way without paying their mana costs.|
|
||||||
Fanatical Firebrand|Rivals of Ixalan|101|C|{R}|Creature - Goblin Pirate|1|1|Haste${t}, Sacrifice Fanatical Firebrand: It deals one damage to target creature or player.|
|
Fanatical Firebrand|Rivals of Ixalan|101|C|{R}|Creature - Goblin Pirate|1|1|Haste${t}, Sacrifice Fanatical Firebrand: It deals one damage to target creature or player.|
|
||||||
Forerunner of the Empire|Rivals of Ixalan|102|U|{3}{R}|Creature - Human Soldier|1|3|When Forerunner of the Empire enters the battlefield, you may search your library for a Dinosaur card, reveal it, then shuffle your library and put that card on top of it.$Whenever a Dinosaur enters the battlefield under your control, you may have Forerunner of the Empire deal 1 damage to each creature.|
|
Forerunner of the Empire|Rivals of Ixalan|102|U|{3}{R}|Creature - Human Soldier|1|3|When Forerunner of the Empire enters the battlefield, you may search your library for a Dinosaur card, reveal it, then shuffle your library and put that card on top of it.$Whenever a Dinosaur enters the battlefield under your control, you may have Forerunner of the Empire deal 1 damage to each creature.|
|
||||||
|
@ -32748,6 +32758,7 @@ Mutiny|Rivals of Ixalan|106|C|{R}|Sorcery|||Target creature an opponent controls
|
||||||
Pirate's Pillage|Rivals of Ixalan|109|U|{3}{R}|Sorcery|||As an additional cost to cast Pirate's Pillage, discard a card.$Draw two cards and create two colorless Treasure artifacts with "{t}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
Pirate's Pillage|Rivals of Ixalan|109|U|{3}{R}|Sorcery|||As an additional cost to cast Pirate's Pillage, discard a card.$Draw two cards and create two colorless Treasure artifacts with "{t}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
||||||
Rekindling Phoenix|Rivals of Ixalan|111|M|{2}{R}{R}|Creature - Phoenix|4|3|Flying$When Rekindling Phoenix dies, create a 0/1 red Elemental creature token with "At the beginning of your upkeep, sacrifice this creature and return target card named Rekindling Phoenix from your graveyard to the battlefield. It gains haste until end of turn."|
|
Rekindling Phoenix|Rivals of Ixalan|111|M|{2}{R}{R}|Creature - Phoenix|4|3|Flying$When Rekindling Phoenix dies, create a 0/1 red Elemental creature token with "At the beginning of your upkeep, sacrifice this creature and return target card named Rekindling Phoenix from your graveyard to the battlefield. It gains haste until end of turn."|
|
||||||
Steelclad Ferocidons|Rivals of Ixalan|115|R|{5}{R}{R}|Creature - Dinosaur|8|5|<i>Enrage</i> — Whenever Steelclad Ferocidons is dealt damage, each opponent sacrifices a permanent.|
|
Steelclad Ferocidons|Rivals of Ixalan|115|R|{5}{R}{R}|Creature - Dinosaur|8|5|<i>Enrage</i> — Whenever Steelclad Ferocidons is dealt damage, each opponent sacrifices a permanent.|
|
||||||
|
Sun-Collared Raptor|Rivals of Ixalan|118|C|{1}{R}|Creature - Dinosaur|1|2|Trample${2}{R}: Sun-Collared Raptor gets +3/+0 until end of turn.|
|
||||||
Swaggering Corsair|Rivals of Ixalan|119|C|{2}{R}|Creature - Human Pirate|2|2|<i>Raid</i> — Swaggering Corsair enters the battlefield with a +1/+1 counter on it if you attacked with a creature this turn.|
|
Swaggering Corsair|Rivals of Ixalan|119|C|{2}{R}|Creature - Human Pirate|2|2|<i>Raid</i> — Swaggering Corsair enters the battlefield with a +1/+1 counter on it if you attacked with a creature this turn.|
|
||||||
Tilonalli's Summoner|Rivals of Ixalan|121|R|{1}{R}|Creature - Human Shaman|1|1|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Whenever Tilonalli's Summoner attacks, you may pay {X}{R}. If you do, create X 1/1 Elemental creature tokens that are tapped and attacking. At the beginning of the next end step, exile those tokens unless you have the city's blessing.|
|
Tilonalli's Summoner|Rivals of Ixalan|121|R|{1}{R}|Creature - Human Shaman|1|1|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Whenever Tilonalli's Summoner attacks, you may pay {X}{R}. If you do, create X 1/1 Elemental creature tokens that are tapped and attacking. At the beginning of the next end step, exile those tokens unless you have the city's blessing.|
|
||||||
Cherished Hatchling|Rivals of Ixalan|124|U|{1}{G}|Creature - Dinosaur|2|1|When Cherished Hatchling dies, you may cast Dinosaur spells this turn as though they had flash, and whenever you cast a Dinosaur spell this turn, it gains "When this creature enters the battlefield, you may have it fight another target creature."|
|
Cherished Hatchling|Rivals of Ixalan|124|U|{1}{G}|Creature - Dinosaur|2|1|When Cherished Hatchling dies, you may cast Dinosaur spells this turn as though they had flash, and whenever you cast a Dinosaur spell this turn, it gains "When this creature enters the battlefield, you may have it fight another target creature."|
|
||||||
|
@ -32756,46 +32767,52 @@ Enter the Unknown|Rivals of Ixalan|128|U|{G}|Sorcery|||Target creature you contr
|
||||||
Forerunner of the Heralds|Rivals of Ixalan|129|U|{3}{G}|Creature - Merfolk Scout|3|2|When Forerunner of the Heralds enters the battlefield, you may search your library for a Merfolk card, reveal it, then shuffle your library and put that card on top of it.$Whenever another Merfolk enters the battlefield under your control, put a +1/+1 counter on Forerunner of the Heralds.|
|
Forerunner of the Heralds|Rivals of Ixalan|129|U|{3}{G}|Creature - Merfolk Scout|3|2|When Forerunner of the Heralds enters the battlefield, you may search your library for a Merfolk card, reveal it, then shuffle your library and put that card on top of it.$Whenever another Merfolk enters the battlefield under your control, put a +1/+1 counter on Forerunner of the Heralds.|
|
||||||
Ghalta, Primal Hunger|Rivals of Ixalan|130|R|{1}{0}{G}{G}|Legendary Creature - Elder Dinosaur|12|12|Ghalta, Primal Hunger costs {X} less to cast, where X is the total power of creatures you control.$Trample|
|
Ghalta, Primal Hunger|Rivals of Ixalan|130|R|{1}{0}{G}{G}|Legendary Creature - Elder Dinosaur|12|12|Ghalta, Primal Hunger costs {X} less to cast, where X is the total power of creatures you control.$Trample|
|
||||||
Jadelight Ranger|Rivals of Ixalan|136|R|{1}{G}{G}|Creature - Merfolk Scout|2|1|When Jadelight Ranger enters the battlefield it explores, then it explores again. <i> (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard. Then repeat this process.) </i>|
|
Jadelight Ranger|Rivals of Ixalan|136|R|{1}{G}{G}|Creature - Merfolk Scout|2|1|When Jadelight Ranger enters the battlefield it explores, then it explores again. <i> (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard. Then repeat this process.) </i>|
|
||||||
Naturalize|Rivals of Ixalan|139|C|{1}{G}|Instant|||Destroy target artifact or enchantment|
|
Naturalize|Rivals of Ixalan|139|C|{1}{G}|Instant|||Destroy target artifact or enchantment.|
|
||||||
Path to Discovery|Rivals of Ixalan|142|R|{3}{G}|Enchantment|||Whenever a creature enters the battlefield under your control, it explores. <i>(Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on the creature, then put the card back or put it into your graveyard.)</i>|
|
Path to Discovery|Rivals of Ixalan|142|R|{3}{G}|Enchantment|||Whenever a creature enters the battlefield under your control, it explores. <i>(Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on the creature, then put the card back or put it into your graveyard.)</i>|
|
||||||
Polyraptor|Rivals of Ixalan|144|M|{6}{G}{G}|Creature - Dinosaur|5|5|<i>Enrage</i> — Whenever Polyraptor is dealt damage, create a token that is a copy of Polyraptor.|
|
Polyraptor|Rivals of Ixalan|144|M|{6}{G}{G}|Creature - Dinosaur|5|5|<i>Enrage</i> — Whenever Polyraptor is dealt damage, create a token that is a copy of Polyraptor.|
|
||||||
Swift Warden|Rivals of Ixalan|146|U|{1}{G}{G}|Creature - Merfolk Warrior|3|3|When Swift Warden enters the battlefield, target Merfolk you control gains hexproof until end of turn. <i>(It can't be the target of spells or abilities your opponents control.)</i>|
|
Swift Warden|Rivals of Ixalan|146|U|{1}{G}{G}|Creature - Merfolk Warrior|3|3|When Swift Warden enters the battlefield, target Merfolk you control gains hexproof until end of turn. <i>(It can't be the target of spells or abilities your opponents control.)</i>|
|
||||||
Tendershoot Dryad|Rivals of Ixalan|147|R|{4}{G}|Creature - Dryad|2|2|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$At the beginning of each upkeep, create a 1/1 green Saproling creature token.$Saprolings you control get +2/+2 as long as you have the city's blessing.|
|
Tendershoot Dryad|Rivals of Ixalan|147|R|{4}{G}|Creature - Dryad|2|2|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$At the beginning of each upkeep, create a 1/1 green Saproling creature token.$Saprolings you control get +2/+2 as long as you have the city's blessing.|
|
||||||
Thrashing Brontodon|Rivals of Ixalan|148|U|{1}{G}{G}|Creature - Dinosaur|3|4|{1}, Sacrificing Thrashing Brontodon: Destroy target artifact or enchantment.|
|
Thrashing Brontodon|Rivals of Ixalan|148|U|{1}{G}{G}|Creature - Dinosaur|3|4|{1}, Sacrificing Thrashing Brontodon: Destroy target artifact or enchantment.|
|
||||||
Thunderherd Migration|Rivals of Ixalan|149|U|{1}{G}|Sorcery|||As an additional cost to cast Thunderherd Migration, reveal a Dinosaur card from your hand or pay {1}.$Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.|
|
Thunderherd Migration|Rivals of Ixalan|149|U|{1}{G}|Sorcery|||As an additional cost to cast Thunderherd Migration, reveal a Dinosaur card from your hand or pay {1}.$Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.|
|
||||||
|
Wayward Swordtooth|Rivals of Ixalan|150|R|{2}{G}|Creature - Dinosaur|5|5|Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$You may play an additional land on each of your turns. $Wayward Sawtooth can't attack or block unless you have the city's blessing.|
|
||||||
World Shaper|Rivals of Ixalan|151|R|{3}{G}|Creature - Merfolk Shaman|3|3|Whenever World Shaper attacks, you may put the top three cards of your library into your graveyard.$When World Shaper dies, put all land cards from your graveyard onto the battlefield tapped.|
|
World Shaper|Rivals of Ixalan|151|R|{3}{G}|Creature - Merfolk Shaman|3|3|Whenever World Shaper attacks, you may put the top three cards of your library into your graveyard.$When World Shaper dies, put all land cards from your graveyard onto the battlefield tapped.|
|
||||||
Angrath, the Flame-Chained|Rivals of Ixalan|152|M|{3}{B}{R}|Legendary Planeswalker - Angrath|4|+1: Each opponent discards a card and loses 2 life.$-3: Gain control of target creature until end of turn. Untap it. It gains haste until end of turn. Sacrifice it at the beginning of the next end step if it has converted mana cost 3 or less.$-8: Each opponent loses life equal to the number of cards in his or her graveyard.|
|
Angrath, the Flame-Chained|Rivals of Ixalan|152|M|{3}{B}{R}|Legendary Planeswalker - Angrath|4|+1: Each opponent discards a card and loses 2 life.$-3: Gain control of target creature until end of turn. Untap it. It gains haste until end of turn. Sacrifice it at the beginning of the next end step if it has converted mana cost 3 or less.$-8: Each opponent loses life equal to the number of cards in his or her graveyard.|
|
||||||
Atzocan Seer|Rivals of Ixalan|153|U|{1}{G}{W}|Creature - Human Druid|2|3|{t}: Add one mana of any color to your manan pool.$Sacrifice Atzocan Seer: Return target Dinosaur card from your graveyard to your hand.|
|
Atzocan Seer|Rivals of Ixalan|153|U|{1}{G}{W}|Creature - Human Druid|2|3|{t}: Add one mana of any color to your manan pool.$Sacrifice Atzocan Seer: Return target Dinosaur card from your graveyard to your hand.|
|
||||||
Azor, the Lawbringer|Rivals of Ixalan|154|M|{2}{W}{W}{U}{U}|Legendary Creature - Sphinx|6|6|Flying$When Azor, the Lawbringer enters the battlefield, each opponent can't cast instant and sorcery spells during that player's next turn.$Whenever Azor attacks, you may pay {X}{W}{U}{U}. If you do, you gain X life and draw X cards.|
|
Azor, the Lawbringer|Rivals of Ixalan|154|M|{2}{W}{W}{U}{U}|Legendary Creature - Sphinx|6|6|Flying$When Azor, the Lawbringer enters the battlefield, each opponent can't cast instant and sorcery spells during that player's next turn.$Whenever Azor attacks, you may pay {X}{W}{U}{U}. If you do, you gain X life and draw X cards.|
|
||||||
Deadeye Brawler|Rivals of Ixalan|155|U|{2}{U}{B}|Creature - Human Pirate|2|4|Deathtouch$Ascend (If you control ten or more permanents, you get the city's blessing for the rest of the game.)$Whenever Deadeye Brawler deals combat damage to a player, if you have the city's blessing, draw a card.|
|
Deadeye Brawler|Rivals of Ixalan|155|U|{2}{U}{B}|Creature - Human Pirate|2|4|Deathtouch$Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>$Whenever Deadeye Brawler deals combat damage to a player, if you have the city's blessing, draw a card.|
|
||||||
Dire Fleet Neckbreaker|Rivals of Ixalan|156|U|{2}{B}{R}|Creature - Orc Pirate|3|2|Attacking Pirates you control get +2/+0.|
|
Dire Fleet Neckbreaker|Rivals of Ixalan|156|U|{2}{B}{R}|Creature - Orc Pirate|3|2|Attacking Pirates you control get +2/+0.|
|
||||||
Elenda, the Dusk Rose|Rivals of Ixalan|157|M|{2}{W}{B}|Legendary Creature - Vampire Knight|1|1|Lifelink$Whenever another creature dies, put a +1/+1 counter on Elenda, the Dusk Rose.$When Elenda dies, create X 1/1 white Vampire creature tokens with lifelink, where X is Elenda's power|
|
Elenda, the Dusk Rose|Rivals of Ixalan|157|M|{2}{W}{B}|Legendary Creature - Vampire Knight|1|1|Lifelink$Whenever another creature dies, put a +1/+1 counter on Elenda, the Dusk Rose.$When Elenda dies, create X 1/1 white Vampire creature tokens with lifelink, where X is Elenda's power|
|
||||||
|
Hadana's Climb|Rivals of Ixalan|158|R|{1}{G}{U}|Legendary Enchantment|||At the beginning of combat on your turn, put a +1/+1 counter on target creature you control. Then if that creature has three or more +1/+1 counters on it, transform Hadana's Climb.|
|
||||||
|
Winged Temple of Orazca|Rivals of Ixalan|158|R||Legendary Land|||<i>(Transforms from Hadana's Climb.)</i>${T}: Add one mana of any color to your mana pool.${1}{G}{U}, {T}: Target creature you control gains flying and gets +X/+X until end of turn, where X is its power.|
|
||||||
Huatli, Radiant Champion|Rivals of Ixalan|159|M|{2}{G}{W}|Legendary Planeswalker - Huatli|3|+1: Put a loyalty counter on Huatli, Radiant Champion for each creature you control.$-1: Target creature gets +X/+X until end of turn, where X is the number of creatures you control.$-8: You get an emblem with "Whenever a creature enters the battlefield under your control, you may draw a card."|
|
Huatli, Radiant Champion|Rivals of Ixalan|159|M|{2}{G}{W}|Legendary Planeswalker - Huatli|3|+1: Put a loyalty counter on Huatli, Radiant Champion for each creature you control.$-1: Target creature gets +X/+X until end of turn, where X is the number of creatures you control.$-8: You get an emblem with "Whenever a creature enters the battlefield under your control, you may draw a card."|
|
||||||
Journey to Eternity|Rivals of Ixalan|160|R|{1}{B}{G}|Legendary Enchantment - Aura|||Enchant creature you control$When enchanted creature dies, return it to the battlefield under your control, then return Journey to Eternity to the battlefield transformed under your control.|
|
Journey to Eternity|Rivals of Ixalan|160|R|{1}{B}{G}|Legendary Enchantment - Aura|||Enchant creature you control$When enchanted creature dies, return it to the battlefield under your control, then return Journey to Eternity to the battlefield transformed under your control.|
|
||||||
Atzal, Cave of Eternity|Rivals of Ixalan|160|R||Legendary Land|||<i>(Transforms from Journey to Eternity.)</i>${t}: Add one mana of any color to your mana pool.${3}{B}{G}, {t}: Return target creature card from your graveyard to the battlefield.|
|
Atzal, Cave of Eternity|Rivals of Ixalan|160|R||Legendary Land|||<i>(Transforms from Journey to Eternity.)</i>${t}: Add one mana of any color to your mana pool.${3}{B}{G}, {t}: Return target creature card from your graveyard to the battlefield.|
|
||||||
Jungle Creeper|Rivals of Ixalan|161|U|{1}{B}{G}|Creature - Elemental|3|3|{3}{B}{G}: Return Jungle Creeper from your graveyard to your hand.|
|
Jungle Creeper|Rivals of Ixalan|161|U|{1}{B}{G}|Creature - Elemental|3|3|{3}{B}{G}: Return Jungle Creeper from your graveyard to your hand.|
|
||||||
Kumena, Tyrant of Orzca|Rivals of Ixalan|162|M|{1}{G}{U}|Legendary Creature - Merfolk Shaman|2|4|Tap another untapped Merfolk you control: Kumena, Tyrant of Orzca can't be blocked this turn.$Tap three untapped Merfolk you control: Draw a card.$Tap five untapped Merfolk you control: Put a +1/+1 counter on each Merfolk you control.|
|
Kumena, Tyrant of Orazca|Rivals of Ixalan|162|M|{1}{G}{U}|Legendary Creature - Merfolk Shaman|2|4|Tap another untapped Merfolk you control: Kumena, Tyrant of Orzaca can't be blocked this turn.$Tap three untapped Merfolk you control: Draw a card.$Tap five untapped Merfolk you control: Put a +1/+1 counter on each Merfolk you control.|
|
||||||
Legion Lieutenant|Rivals of Ixalan|163|U|{W}{B}|Creature - Vampire Knight|2|2|Other Vampires you control get +1/+1.|
|
Legion Lieutenant|Rivals of Ixalan|163|U|{W}{B}|Creature - Vampire Knight|2|2|Other Vampires you control get +1/+1.|
|
||||||
Merfolk Mistbinder|Rivals of Ixalan|164|U|{G}{U}|Creature - Merfolk Shaman|2|2|Other Merfolk you control get +1/+1.|
|
Merfolk Mistbinder|Rivals of Ixalan|164|U|{G}{U}|Creature - Merfolk Shaman|2|2|Other Merfolk you control get +1/+1.|
|
||||||
Path of Mettle|Rivals of Ixalan|165|R|{R}{W}|Legendary Enchantment|||When ~ enters the battlefield, it deals 1 damage to each creature that doesn't have first strike, double strike, vigilance, or haste.$Whenever you attack with at least two creatures that have first strike, double strike, vigilance, and/or haste, transform ~.|
|
Path of Mettle|Rivals of Ixalan|165|R|{R}{W}|Legendary Enchantment|||When Path of Mettle enters the battlefield, it deals 1 damage to each creature that doesn't have first strike, double strike, vigilance, or haste.$Whenever you attack with at least two creatures that have first strike, double strike, vigilance, and/or haste, transform Path of Mettle.|
|
||||||
Metzali, Tower of Triumph|Rivals of Ixalan|165|R||Legendary Land|||{t}: Add one mana of any color to your mana pool.${1}{R}, {T}: Metzali, Tower of Triumph deals 2 damage to each opponent.${2}{W}, {T}: Choose a creature at random that attacked this turn. Destroy that creature.|
|
Metzali, Tower of Triumph|Rivals of Ixalan|165|R||Legendary Land|||<i>(Transforms from Path of Mettle.)</i>${t}: Add one mana of any color to your mana pool.${1}{R}, {T}: Metzali, Tower of Triumph deals 2 damage to each opponent.${2}{W}, {T}: Choose a creature at random that attacked this turn. Destroy that creature.|
|
||||||
Profane Procession|Rivals of Ixalan|166|R|{1}{W}{B}|Legendary Enchantment|||{3}{W}{B}: Exile target creature. Then if there are three or more cards exiled with Profane Procession, transform it.|
|
Profane Procession|Rivals of Ixalan|166|R|{1}{W}{B}|Legendary Enchantment|||{3}{W}{B}: Exile target creature. Then if there are three or more cards exiled with Profane Procession, transform it.|
|
||||||
Tomb of the Dusk Rose|Rivals of Ixalan|166|R||Legendary Land|||<i>(Transforms from Profane Procession.)</i>${T}: Add one mana of any color to your mana pool.${2}{W}{B},{T} : Put a creature card exiled with this permanent onto the battlefield under your control.|
|
Tomb of the Dusk Rose|Rivals of Ixalan|166|R||Legendary Land|||<i>(Transforms from Profane Procession.)</i>${T}: Add one mana of any color to your mana pool.${2}{W}{B},{T} : Put a creature card exiled with this permanent onto the battlefield under your control.|
|
||||||
Protean Raider|Rivals of Ixalan|167|R|{1}{U}{R}|Creature - Shapeshifter Pirate|2|2|<i>Raid</i> — If you attacked with a creature this turn, you may have Protean Raider enter the battlefield as a copy of any creature on the battlefield.|
|
Protean Raider|Rivals of Ixalan|167|R|{1}{U}{R}|Creature - Shapeshifter Pirate|2|2|<i>Raid</i> — If you attacked with a creature this turn, you may have Protean Raider enter the battlefield as a copy of any creature on the battlefield.|
|
||||||
|
Raging Regisaur|Rivals of Ixalan|168|U|{2}{R}{G}|Creature - Dinosaur|4|4|Whenever Raging Regisaur attacks, it deals 1 damage to target creature or player.|
|
||||||
|
Resplendent Griffin|Rivals of Ixalan|170|U|{1}{W}{U}|Creature - Griffin|2|2|Flying$Ascend <i>(If you control ten or more permenants, you get the city's blessing for the rest of the game.)</i>$Whenever Resplendent Griffin attacks, if you have the city's blessing, put a +1/+1 counter on it.|
|
||||||
Siegehorn Ceratops|Rivals of Ixalan|171|R|{G}{W}|Creature - Dinosaur|2|2|<i>Enrage</i> — Whenever Siegehorn Ceratops is dealt damage, put two +1/+1 counters on it. <i>(It must survive the damage to get the counters.)</i>|
|
Siegehorn Ceratops|Rivals of Ixalan|171|R|{G}{W}|Creature - Dinosaur|2|2|<i>Enrage</i> — Whenever Siegehorn Ceratops is dealt damage, put two +1/+1 counters on it. <i>(It must survive the damage to get the counters.)</i>|
|
||||||
Storm Fleet Sprinter|Rivals of Ixalan|172|U|{1}{U}{R}|Creature - Human Pirate|2|2|Haste$Storm Fleet Sprinter can't be blocked.|
|
Storm Fleet Sprinter|Rivals of Ixalan|172|U|{1}{U}{R}|Creature - Human Pirate|2|2|Haste$Storm Fleet Sprinter can't be blocked.|
|
||||||
Storm the Vault|Rivals of Ixalan|173|R|{2}{U}{R}|Legendary Enchantment|||Whenever one or more creatures you control deal combat damage to a player, create a colorless Treasure artifact token with "{T}, Sacrifice this artifact: Add one mana of any color to your mana pool."$At the beginning of your end step, if you control five or more artifacts, transform Storm the Vault.|
|
Storm the Vault|Rivals of Ixalan|173|R|{2}{U}{R}|Legendary Enchantment|||Whenever one or more creatures you control deal combat damage to a player, create a colorless Treasure artifact token with "{T}, Sacrifice this artifact: Add one mana of any color to your mana pool."$At the beginning of your end step, if you control five or more artifacts, transform Storm the Vault.|
|
||||||
Vault of Catlacan|Rivals of Ixalan|173|R||Legendary Land|||<i>(Transforms from Storm the Vault.)</i>${T}: Add one mana of any color to your mana pool.${T}: Add {U} to your mana pool for each artifact you control.|
|
Vault of Catlacan|Rivals of Ixalan|173|R||Legendary Land|||<i>(Transforms from Storm the Vault.)</i>${T}: Add one mana of any color to your mana pool.${T}: Add {U} to your mana pool for each artifact you control.|
|
||||||
|
Zacama, Primal Calamity|Rivals of Ixalan|174|M|{6}{R}{G}{W}|Legendary Creature - Elder Dinosaur|9|9|Vigilance, reach, trample$When Zacama, Primal Calamity enters the battlefield, if you cast it, untap all lands you control.${2}{R}: Zacama deals 3 damage to target creature.${2}{G}: Destroy target artifact or enchantment.${2}{W}: You gain 3 life.|
|
||||||
Awakened Amalgam|Rivals of Ixalan|175|R|{4}|Artifact Creature - Golem|0|0|Awakened Amalgam's power and toughness are each equal to the number of differently named lands you control.|
|
Awakened Amalgam|Rivals of Ixalan|175|R|{4}|Artifact Creature - Golem|0|0|Awakened Amalgam's power and toughness are each equal to the number of differently named lands you control.|
|
||||||
Azor's Gateway|Rivals of Ixalan|176|M|{2}|Legendary Artifact|||{1}, {t}: Draw a card, then exile a card from your hand. If cards with five or more different covernted mana costs are exiled with Azor's Gateway, you gain 5 life, untap Azor's Gateway, and transform it.|
|
Azor's Gateway|Rivals of Ixalan|176|M|{2}|Legendary Artifact|||{1}, {t}: Draw a card, then exile a card from your hand. If cards with five or more different converted mana costs are exiled with Azor's Gateway, you gain 5 life, untap Azor's Gateway, and transform it.|
|
||||||
Sanctum of the Sun|Rivals of Ixalan|176|M||Legendary Land|||(Transforms from Azor's Gateway.)${t}: Add X mana of any one color to your mana pool, where X is your life total.|
|
Sanctum of the Sun|Rivals of Ixalan|176|M||Legendary Land|||<i>(Transforms from Azor's Gateway.)</i>${t}: Add X mana of any one color to your mana pool, where X is your life total.|
|
||||||
Captain's Hook|Rivals of Ixalan|177|R|{3}|Artifact - Equipment|||Equipped creature gets +2/+0, has menace, and is a Pirate in addition to its other creature types.$Whenever Captain's Hook becomes unattached from a permanent, destroy that permanent.$Equip {1}|
|
Captain's Hook|Rivals of Ixalan|177|R|{3}|Artifact - Equipment|||Equipped creature gets +2/+0, has menace, and is a Pirate in addition to its other creature types.$Whenever Captain's Hook becomes unattached from a permanent, destroy that permanent.$Equip {1}|
|
||||||
Gleaming Barrier|Rivals of Ixalan|178|C|{2}|Artifact Creature - Wall|0|4|Defender$When Gleaming Barrier dies, create a colorless Treasure artifact token with "{t}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
Gleaming Barrier|Rivals of Ixalan|178|C|{2}|Artifact Creature - Wall|0|4|Defender$When Gleaming Barrier dies, create a colorless Treasure artifact token with "{t}, Sacrifice this artifact: Add one mana of any color to your mana pool."|
|
||||||
Golden Guardian|Rivals of Ixalan|179|R|{4}|Artifact Creature - Golem|4|4|Defender${2}: Golden Guardian fights another target creature you control. When Golden Guardian dies this turn, return it to the battlefield transformed under your control.|
|
Golden Guardian|Rivals of Ixalan|179|R|{4}|Artifact Creature - Golem|4|4|Defender${2}: Golden Guardian fights another target creature you control. When Golden Guardian dies this turn, return it to the battlefield transformed under your control.|
|
||||||
Gold-Forge Garrison|Rivals of Ixalan|179|R||Land|||<i>(Transforms from Golden Guardian.)</i>${t}: Add two mana of any one color to your mana pool.${4}, {T}: Create a 4/4 colorless Golem artifact creature token.|
|
Gold-Forge Garrison|Rivals of Ixalan|179|R||Land|||<i>(Transforms from Golden Guardian.)</i>${t}: Add two mana of any one color to your mana pool.${4}, {T}: Create a 4/4 colorless Golem artifact creature token.|
|
||||||
The Immortal Sun|Rivals of Ixalan|180|M|{6}|Legendary Artifact|||Players can't activate planeswalkers' loyalty abilities.$At the beginning of your draw step, draw an additional card.$Spells you cast cost {1} less to cast.$Creatures you control get +1/+1.|
|
The Immortal Sun|Rivals of Ixalan|180|M|{6}|Legendary Artifact|||Players can't activate planeswalkers' loyalty abilities.$At the beginning of your draw step, draw an additional card.$Spells you cast cost {1} less to cast.$Creatures you control get +1/+1.|
|
||||||
Silent Gravestone|Rivals of Ixalan|182|R|{1}|Artifact|||Cards in graveyards can't be the targets of spells or abilities.${4}, {t}: Exile Silent Gravestone and all cards from all graveyards. Draw a card.|
|
Silent Gravestone|Rivals of Ixalan|182|R|{1}|Artifact|||Cards in graveyards can't be the targets of spells or abilities.${4}, {t}: Exile Silent Gravestone and all cards from all graveyards. Draw a card.|
|
||||||
Arch of Orazca|Rivals of Ixalan|185|R||Land|||Ascend (If you control ten or more permanents, you get the city's blessing for the rest of the game.)${t}: Add {C} to your mana pool.${5}, {t}: Draw a card. Activate this ability only if you have the city's blessing.|
|
Arch of Orazca|Rivals of Ixalan|185|R||Land|||Ascend <i>(If you control ten or more permanents, you get the city's blessing for the rest of the game.)</i>${t}: Add {C} to your mana pool.${5}, {t}: Draw a card. Activate this ability only if you have the city's blessing.|
|
||||||
Evolving Wilds|Rivals of Ixalan|186|C||Land|||{T}, Sacrifice Evolving Wilds: Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.|
|
Evolving Wilds|Rivals of Ixalan|186|C||Land|||{T}, Sacrifice Evolving Wilds: Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.|
|
||||||
Vraska, Scheming Gorgon|Rivals of Ixalan|197|M|{4}{B}{B}|Legendary Planeswalker - Vraska|5|+2: Creatures you control get +1/+0 until end of turn.$-3: Destroy target creature.$-10: Until end of turn, creatures you control gain deathtouch and "Whenever this creature deals damage to an opponent, that player loses the game."|
|
Vraska, Scheming Gorgon|Rivals of Ixalan|197|M|{4}{B}{B}|Legendary Planeswalker - Vraska|5|+2: Creatures you control get +1/+0 until end of turn.$-3: Destroy target creature.$-10: Until end of turn, creatures you control gain deathtouch and "Whenever this creature deals damage to an opponent, that player loses the game."|
|
||||||
Vampire Champion|Rivals of Ixalan|198|C|{3}{B}|Creature - Vampire Soldier|3|3|Deathtouch <i>(Any amount of damage this deals to a creature is enough to destroy it.)</i>|
|
Vampire Champion|Rivals of Ixalan|198|C|{3}{B}|Creature - Vampire Soldier|3|3|Deathtouch <i>(Any amount of damage this deals to a creature is enough to destroy it.)</i>|
|
||||||
|
@ -32805,7 +32822,7 @@ Angrath, Minotaur Pirate|Rivals of Ixalan|201|M|{4}{B}{R}|Legendary Planeswalker
|
||||||
Angrath's Ambusher|Rivals of Ixalan|202|U|{2}{B}|Creature - Orc Pirate|2|3|Angrath's Ambusher gets +2/+0 as long as you control an Angrath planeswalker.|
|
Angrath's Ambusher|Rivals of Ixalan|202|U|{2}{B}|Creature - Orc Pirate|2|3|Angrath's Ambusher gets +2/+0 as long as you control an Angrath planeswalker.|
|
||||||
Swab Goblin|Rivals of Ixalan|203|C|{1}{R}|Creature - Goblin Pirate|2|2||
|
Swab Goblin|Rivals of Ixalan|203|C|{1}{R}|Creature - Goblin Pirate|2|2||
|
||||||
Angrath's Fury|Rivals of Ixalan|204|R|{3}{B}{R}|Sorcery|||Destroy target creature. Angrath's Fury deals 3 damage to target player. You may search your library and/or graveyard for a card named Angrath, Minotaur Pirate, reveal it, and put it into your hand. If you search your library this way, shuffle it.|
|
Angrath's Fury|Rivals of Ixalan|204|R|{3}{B}{R}|Sorcery|||Destroy target creature. Angrath's Fury deals 3 damage to target player. You may search your library and/or graveyard for a card named Angrath, Minotaur Pirate, reveal it, and put it into your hand. If you search your library this way, shuffle it.|
|
||||||
Cinder Barrens|Rivals of Ixalan|205|C||Land|||Cinder Barrens enters the battlefield tapped.${T}: Add {B} or {R} to your mana pool.|Angelic Rocket|Unstable|139|R|{8}|Host Creature - Angel|4|4|Flying$When this creature enters the battlefield, you may destroy target nonland permanent.|
|
Cinder Barrens|Rivals of Ixalan|205|C||Land|||Cinder Barrens enters the battlefield tapped.${T}: Add {B} or {R} to your mana pool.|
|
||||||
As Luck Would Have It|Unstable|102|R|{G}|Enchantment|||Hexproof$Whenever you roll a die, put a number of luck counters on As Luck Would Have It equal to the result. Then is there are 100 or more luck counters on As Luck Would Have It, you win the game. (Count both rolls if you reroll a die.)|
|
As Luck Would Have It|Unstable|102|R|{G}|Enchantment|||Hexproof$Whenever you roll a die, put a number of luck counters on As Luck Would Have It equal to the result. Then is there are 100 or more luck counters on As Luck Would Have It, you win the game. (Count both rolls if you reroll a die.)|
|
||||||
Baron Von Count|Unstable|127|M|{1}{B}{R}|Legendary Creature - Human Villain|3|3|Baron Von Count enters the battlefield with a doom counter on "5."$Whenever you cast a spell with the indicated numeral in its mana cost, text box, power, or toughness, move the doom counter one numeral to the left.$When the doom counter moves from "1," destroy target player and put that doom counter on "5."|
|
Baron Von Count|Unstable|127|M|{1}{B}{R}|Legendary Creature - Human Villain|3|3|Baron Von Count enters the battlefield with a doom counter on "5."$Whenever you cast a spell with the indicated numeral in its mana cost, text box, power, or toughness, move the doom counter one numeral to the left.$When the doom counter moves from "1," destroy target player and put that doom counter on "5."|
|
||||||
Big Boa Constrictor|Unstable|51|C|{3}{B}|Host Creature - Snake|1|2|When this creature enters the battlefield, roll a six-sided die. Target opponent loses life equal to the result.|
|
Big Boa Constrictor|Unstable|51|C|{3}{B}|Host Creature - Snake|1|2|When this creature enters the battlefield, roll a six-sided die. Target opponent loses life equal to the result.|
|
||||||
|
|
Loading…
Reference in a new issue