mirror of
https://github.com/correl/mage.git
synced 2024-12-25 03:00:15 +00:00
[KHM] Implemented Snow Dual Lands (#7342)
This commit is contained in:
parent
bbe6809ed1
commit
28513e2bc6
12 changed files with 450 additions and 0 deletions
43
Mage.Sets/src/mage/cards/a/AlpineMeadow.java
Normal file
43
Mage.Sets/src/mage/cards/a/AlpineMeadow.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.a;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.RedManaAbility;
|
||||||
|
import mage.abilities.mana.WhiteManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class AlpineMeadow extends CardImpl {
|
||||||
|
|
||||||
|
public AlpineMeadow(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.MOUNTAIN);
|
||||||
|
this.subtype.add(SubType.PLAINS);
|
||||||
|
|
||||||
|
// {tap}: Add {R} or {W}.
|
||||||
|
this.addAbility(new RedManaAbility());
|
||||||
|
this.addAbility(new WhiteManaAbility());
|
||||||
|
|
||||||
|
// Alpine Meadow enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private AlpineMeadow(final AlpineMeadow card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AlpineMeadow copy() {
|
||||||
|
return new AlpineMeadow(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/a/ArcticTreeline.java
Normal file
43
Mage.Sets/src/mage/cards/a/ArcticTreeline.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.a;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.GreenManaAbility;
|
||||||
|
import mage.abilities.mana.WhiteManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class ArcticTreeline extends CardImpl {
|
||||||
|
|
||||||
|
public ArcticTreeline(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.FOREST);
|
||||||
|
this.subtype.add(SubType.PLAINS);
|
||||||
|
|
||||||
|
// {tap}: Add {G} or {W}.
|
||||||
|
this.addAbility(new GreenManaAbility());
|
||||||
|
this.addAbility(new WhiteManaAbility());
|
||||||
|
|
||||||
|
// Arctic Treeline enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private ArcticTreeline(final ArcticTreeline card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ArcticTreeline copy() {
|
||||||
|
return new ArcticTreeline(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/g/GlacialFloodplain.java
Normal file
43
Mage.Sets/src/mage/cards/g/GlacialFloodplain.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.g;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlueManaAbility;
|
||||||
|
import mage.abilities.mana.WhiteManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class GlacialFloodplain extends CardImpl {
|
||||||
|
|
||||||
|
public GlacialFloodplain(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.PLAINS);
|
||||||
|
this.subtype.add(SubType.ISLAND);
|
||||||
|
|
||||||
|
// {tap}: Add {W} or {U}.
|
||||||
|
this.addAbility(new WhiteManaAbility());
|
||||||
|
this.addAbility(new BlueManaAbility());
|
||||||
|
|
||||||
|
// Glacial Floodplain enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private GlacialFloodplain(final GlacialFloodplain card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GlacialFloodplain copy() {
|
||||||
|
return new GlacialFloodplain(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/h/HighlandForest.java
Normal file
43
Mage.Sets/src/mage/cards/h/HighlandForest.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.h;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.GreenManaAbility;
|
||||||
|
import mage.abilities.mana.RedManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class HighlandForest extends CardImpl {
|
||||||
|
|
||||||
|
public HighlandForest(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.MOUNTAIN);
|
||||||
|
this.subtype.add(SubType.FOREST);
|
||||||
|
|
||||||
|
// {tap}: Add {R} or {G}.
|
||||||
|
this.addAbility(new RedManaAbility());
|
||||||
|
this.addAbility(new GreenManaAbility());
|
||||||
|
|
||||||
|
// Highland Forest enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private HighlandForest(final HighlandForest card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HighlandForest copy() {
|
||||||
|
return new HighlandForest(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/i/IceTunnel.java
Normal file
43
Mage.Sets/src/mage/cards/i/IceTunnel.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.i;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlackManaAbility;
|
||||||
|
import mage.abilities.mana.BlueManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class IceTunnel extends CardImpl {
|
||||||
|
|
||||||
|
public IceTunnel(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.ISLAND);
|
||||||
|
this.subtype.add(SubType.SWAMP);
|
||||||
|
|
||||||
|
// {tap}: Add {U} or {B}.
|
||||||
|
this.addAbility(new BlueManaAbility());
|
||||||
|
this.addAbility(new BlackManaAbility());
|
||||||
|
|
||||||
|
// Ice Tunnel enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private IceTunnel(final IceTunnel card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IceTunnel copy() {
|
||||||
|
return new IceTunnel(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/r/RimewoodFalls.java
Normal file
43
Mage.Sets/src/mage/cards/r/RimewoodFalls.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.r;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlueManaAbility;
|
||||||
|
import mage.abilities.mana.GreenManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class RimewoodFalls extends CardImpl {
|
||||||
|
|
||||||
|
public RimewoodFalls(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.FOREST);
|
||||||
|
this.subtype.add(SubType.ISLAND);
|
||||||
|
|
||||||
|
// {tap}: Add {G} or {U}.
|
||||||
|
this.addAbility(new GreenManaAbility());
|
||||||
|
this.addAbility(new BlueManaAbility());
|
||||||
|
|
||||||
|
// Rimewood Falls enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private RimewoodFalls(final RimewoodFalls card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public RimewoodFalls copy() {
|
||||||
|
return new RimewoodFalls(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/s/SnowfieldSinkhole.java
Normal file
43
Mage.Sets/src/mage/cards/s/SnowfieldSinkhole.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.s;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlackManaAbility;
|
||||||
|
import mage.abilities.mana.WhiteManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class SnowfieldSinkhole extends CardImpl {
|
||||||
|
|
||||||
|
public SnowfieldSinkhole(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.PLAINS);
|
||||||
|
this.subtype.add(SubType.SWAMP);
|
||||||
|
|
||||||
|
// {tap}: Add {W} or {B}.
|
||||||
|
this.addAbility(new WhiteManaAbility());
|
||||||
|
this.addAbility(new BlackManaAbility());
|
||||||
|
|
||||||
|
// Snowfield Sinkhole enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private SnowfieldSinkhole(final SnowfieldSinkhole card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SnowfieldSinkhole copy() {
|
||||||
|
return new SnowfieldSinkhole(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/s/SulfurousMine.java
Normal file
43
Mage.Sets/src/mage/cards/s/SulfurousMine.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.s;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlackManaAbility;
|
||||||
|
import mage.abilities.mana.RedManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class SulfurousMine extends CardImpl {
|
||||||
|
|
||||||
|
public SulfurousMine(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.SWAMP);
|
||||||
|
this.subtype.add(SubType.MOUNTAIN);
|
||||||
|
|
||||||
|
// {tap}: Add {B} or {R}.
|
||||||
|
this.addAbility(new BlackManaAbility());
|
||||||
|
this.addAbility(new RedManaAbility());
|
||||||
|
|
||||||
|
// Sulfurous Mine enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private SulfurousMine(final SulfurousMine card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SulfurousMine copy() {
|
||||||
|
return new SulfurousMine(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/v/VolatileFjord.java
Normal file
43
Mage.Sets/src/mage/cards/v/VolatileFjord.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.v;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlueManaAbility;
|
||||||
|
import mage.abilities.mana.RedManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class VolatileFjord extends CardImpl {
|
||||||
|
|
||||||
|
public VolatileFjord(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.ISLAND);
|
||||||
|
this.subtype.add(SubType.MOUNTAIN);
|
||||||
|
|
||||||
|
// {tap}: Add {U} or {R}.
|
||||||
|
this.addAbility(new BlueManaAbility());
|
||||||
|
this.addAbility(new RedManaAbility());
|
||||||
|
|
||||||
|
// Volatile Fjord enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private VolatileFjord(final VolatileFjord card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public VolatileFjord copy() {
|
||||||
|
return new VolatileFjord(this);
|
||||||
|
}
|
||||||
|
}
|
43
Mage.Sets/src/mage/cards/w/WoodlandChasm.java
Normal file
43
Mage.Sets/src/mage/cards/w/WoodlandChasm.java
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
package mage.cards.w;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||||
|
import mage.abilities.mana.BlackManaAbility;
|
||||||
|
import mage.abilities.mana.GreenManaAbility;
|
||||||
|
import mage.constants.SubType;
|
||||||
|
import mage.constants.SuperType;
|
||||||
|
import mage.cards.CardImpl;
|
||||||
|
import mage.cards.CardSetInfo;
|
||||||
|
import mage.constants.CardType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author weirddan455
|
||||||
|
*/
|
||||||
|
public final class WoodlandChasm extends CardImpl {
|
||||||
|
|
||||||
|
public WoodlandChasm(UUID ownerId, CardSetInfo setInfo) {
|
||||||
|
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||||
|
|
||||||
|
this.addSuperType(SuperType.SNOW);
|
||||||
|
this.subtype.add(SubType.SWAMP);
|
||||||
|
this.subtype.add(SubType.FOREST);
|
||||||
|
|
||||||
|
// {tap}: Add {B} or {G}.
|
||||||
|
this.addAbility(new BlackManaAbility());
|
||||||
|
this.addAbility(new GreenManaAbility());
|
||||||
|
|
||||||
|
// Woodland Chasm enters the battlefield tapped.
|
||||||
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
}
|
||||||
|
|
||||||
|
private WoodlandChasm(final WoodlandChasm card) {
|
||||||
|
super(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public WoodlandChasm copy() {
|
||||||
|
return new WoodlandChasm(this);
|
||||||
|
}
|
||||||
|
}
|
|
@ -29,6 +29,8 @@ public final class Kaldheim extends ExpansionSet {
|
||||||
this.maxCardNumberInBooster = 285;
|
this.maxCardNumberInBooster = 285;
|
||||||
|
|
||||||
cards.add(new SetCardInfo("Absorb Identity", 383, Rarity.UNCOMMON, mage.cards.a.AbsorbIdentity.class));
|
cards.add(new SetCardInfo("Absorb Identity", 383, Rarity.UNCOMMON, mage.cards.a.AbsorbIdentity.class));
|
||||||
|
cards.add(new SetCardInfo("Alpine Meadow", 248, Rarity.COMMON, mage.cards.a.AlpineMeadow.class));
|
||||||
|
cards.add(new SetCardInfo("Arctic Treeline", 249, Rarity.COMMON, mage.cards.a.ArcticTreeline.class));
|
||||||
cards.add(new SetCardInfo("Armed and Armored", 379, Rarity.UNCOMMON, mage.cards.a.ArmedAndArmored.class));
|
cards.add(new SetCardInfo("Armed and Armored", 379, Rarity.UNCOMMON, mage.cards.a.ArmedAndArmored.class));
|
||||||
cards.add(new SetCardInfo("Barkchannel Pathway", 251, Rarity.RARE, mage.cards.b.BarkchannelPathway.class));
|
cards.add(new SetCardInfo("Barkchannel Pathway", 251, Rarity.RARE, mage.cards.b.BarkchannelPathway.class));
|
||||||
cards.add(new SetCardInfo("Bearded Axe", 388, Rarity.UNCOMMON, mage.cards.b.BeardedAxe.class));
|
cards.add(new SetCardInfo("Bearded Axe", 388, Rarity.UNCOMMON, mage.cards.b.BeardedAxe.class));
|
||||||
|
@ -41,9 +43,12 @@ public final class Kaldheim extends ExpansionSet {
|
||||||
cards.add(new SetCardInfo("Fire Giant's Fury", 389, Rarity.UNCOMMON, mage.cards.f.FireGiantsFury.class));
|
cards.add(new SetCardInfo("Fire Giant's Fury", 389, Rarity.UNCOMMON, mage.cards.f.FireGiantsFury.class));
|
||||||
cards.add(new SetCardInfo("Giant's Grasp", 384, Rarity.UNCOMMON, mage.cards.g.GiantsGrasp.class));
|
cards.add(new SetCardInfo("Giant's Grasp", 384, Rarity.UNCOMMON, mage.cards.g.GiantsGrasp.class));
|
||||||
cards.add(new SetCardInfo("Gilded Assault Cart", 390, Rarity.UNCOMMON, mage.cards.g.GildedAssaultCart.class));
|
cards.add(new SetCardInfo("Gilded Assault Cart", 390, Rarity.UNCOMMON, mage.cards.g.GildedAssaultCart.class));
|
||||||
|
cards.add(new SetCardInfo("Glacial Floodplain", 257, Rarity.COMMON, mage.cards.g.GlacialFloodplain.class));
|
||||||
cards.add(new SetCardInfo("Gladewalker Ritualist", 392, Rarity.UNCOMMON, mage.cards.g.GladewalkerRitualist.class));
|
cards.add(new SetCardInfo("Gladewalker Ritualist", 392, Rarity.UNCOMMON, mage.cards.g.GladewalkerRitualist.class));
|
||||||
cards.add(new SetCardInfo("Halvar, God of Battle", 15, Rarity.MYTHIC, mage.cards.h.HalvarGodOfBattle.class));
|
cards.add(new SetCardInfo("Halvar, God of Battle", 15, Rarity.MYTHIC, mage.cards.h.HalvarGodOfBattle.class));
|
||||||
cards.add(new SetCardInfo("Hengegate Pathway", 260, Rarity.RARE, mage.cards.h.HengegatePathway.class));
|
cards.add(new SetCardInfo("Hengegate Pathway", 260, Rarity.RARE, mage.cards.h.HengegatePathway.class));
|
||||||
|
cards.add(new SetCardInfo("Highland Forest", 261, Rarity.COMMON, mage.cards.h.HighlandForest.class));
|
||||||
|
cards.add(new SetCardInfo("Ice Tunnel", 262, Rarity.COMMON, mage.cards.i.IceTunnel.class));
|
||||||
cards.add(new SetCardInfo("Invasion of the Giants", 215, Rarity.UNCOMMON, mage.cards.i.InvasionOfTheGiants.class));
|
cards.add(new SetCardInfo("Invasion of the Giants", 215, Rarity.UNCOMMON, mage.cards.i.InvasionOfTheGiants.class));
|
||||||
cards.add(new SetCardInfo("Kaya the Inexorable", 218, Rarity.MYTHIC, mage.cards.k.KayaTheInexorable.class));
|
cards.add(new SetCardInfo("Kaya the Inexorable", 218, Rarity.MYTHIC, mage.cards.k.KayaTheInexorable.class));
|
||||||
cards.add(new SetCardInfo("Magda, Brazen Outlaw", 142, Rarity.RARE, mage.cards.m.MagdaBrazenOutlaw.class));
|
cards.add(new SetCardInfo("Magda, Brazen Outlaw", 142, Rarity.RARE, mage.cards.m.MagdaBrazenOutlaw.class));
|
||||||
|
@ -51,15 +56,20 @@ public final class Kaldheim extends ExpansionSet {
|
||||||
cards.add(new SetCardInfo("Rampage of the Valkyries", 393, Rarity.UNCOMMON, mage.cards.r.RampageOfTheValkyries.class));
|
cards.add(new SetCardInfo("Rampage of the Valkyries", 393, Rarity.UNCOMMON, mage.cards.r.RampageOfTheValkyries.class));
|
||||||
cards.add(new SetCardInfo("Realmwalker", 188, Rarity.RARE, mage.cards.r.Realmwalker.class));
|
cards.add(new SetCardInfo("Realmwalker", 188, Rarity.RARE, mage.cards.r.Realmwalker.class));
|
||||||
cards.add(new SetCardInfo("Renegade Reaper", 386, Rarity.UNCOMMON, mage.cards.r.RenegadeReaper.class));
|
cards.add(new SetCardInfo("Renegade Reaper", 386, Rarity.UNCOMMON, mage.cards.r.RenegadeReaper.class));
|
||||||
|
cards.add(new SetCardInfo("Rimewood Falls", 266, Rarity.COMMON, mage.cards.r.RimewoodFalls.class));
|
||||||
cards.add(new SetCardInfo("Sarulf, Realm Eater", 228, Rarity.RARE, mage.cards.s.SarulfRealmEater.class));
|
cards.add(new SetCardInfo("Sarulf, Realm Eater", 228, Rarity.RARE, mage.cards.s.SarulfRealmEater.class));
|
||||||
cards.add(new SetCardInfo("Showdown of the Skalds", 229, Rarity.RARE, mage.cards.s.ShowdownOfTheSkalds.class));
|
cards.add(new SetCardInfo("Showdown of the Skalds", 229, Rarity.RARE, mage.cards.s.ShowdownOfTheSkalds.class));
|
||||||
|
cards.add(new SetCardInfo("Snowfield Sinkhole", 269, Rarity.COMMON, mage.cards.s.SnowfieldSinkhole.class));
|
||||||
cards.add(new SetCardInfo("Starnheim Aspirant", 380, Rarity.UNCOMMON, mage.cards.s.StarnheimAspirant.class));
|
cards.add(new SetCardInfo("Starnheim Aspirant", 380, Rarity.UNCOMMON, mage.cards.s.StarnheimAspirant.class));
|
||||||
|
cards.add(new SetCardInfo("Sulfurous Mine", 270, Rarity.COMMON, mage.cards.s.SulfurousMine.class));
|
||||||
cards.add(new SetCardInfo("Surtland Elementalist", 375, Rarity.RARE, mage.cards.s.SurtlandElementalist.class));
|
cards.add(new SetCardInfo("Surtland Elementalist", 375, Rarity.RARE, mage.cards.s.SurtlandElementalist.class));
|
||||||
cards.add(new SetCardInfo("Surtland Flinger", 377, Rarity.RARE, mage.cards.s.SurtlandFlinger.class));
|
cards.add(new SetCardInfo("Surtland Flinger", 377, Rarity.RARE, mage.cards.s.SurtlandFlinger.class));
|
||||||
cards.add(new SetCardInfo("Thornmantle Striker", 387, Rarity.UNCOMMON, mage.cards.t.ThornmantleStriker.class));
|
cards.add(new SetCardInfo("Thornmantle Striker", 387, Rarity.UNCOMMON, mage.cards.t.ThornmantleStriker.class));
|
||||||
cards.add(new SetCardInfo("Toski, Bearer of Secrets", 197, Rarity.RARE, mage.cards.t.ToskiBearerOfSecrets.class));
|
cards.add(new SetCardInfo("Toski, Bearer of Secrets", 197, Rarity.RARE, mage.cards.t.ToskiBearerOfSecrets.class));
|
||||||
cards.add(new SetCardInfo("Valkyrie Harbinger", 374, Rarity.RARE, mage.cards.v.ValkyrieHarbinger.class));
|
cards.add(new SetCardInfo("Valkyrie Harbinger", 374, Rarity.RARE, mage.cards.v.ValkyrieHarbinger.class));
|
||||||
|
cards.add(new SetCardInfo("Volatile Fjord", 273, Rarity.COMMON, mage.cards.v.VolatileFjord.class));
|
||||||
cards.add(new SetCardInfo("Warchanter Skald", 381, Rarity.UNCOMMON, mage.cards.w.WarchanterSkald.class));
|
cards.add(new SetCardInfo("Warchanter Skald", 381, Rarity.UNCOMMON, mage.cards.w.WarchanterSkald.class));
|
||||||
|
cards.add(new SetCardInfo("Woodland Chasm", 274, Rarity.COMMON, mage.cards.w.WoodlandChasm.class));
|
||||||
cards.add(new SetCardInfo("Youthful Valkyrie", 382, Rarity.UNCOMMON, mage.cards.y.YouthfulValkyrie.class));
|
cards.add(new SetCardInfo("Youthful Valkyrie", 382, Rarity.UNCOMMON, mage.cards.y.YouthfulValkyrie.class));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -40029,14 +40029,24 @@ Kaya the Inexorable|Kaldheim|218|M|{3}{W}{B}|Legendary Planeswalker - Kaya|5|+1:
|
||||||
Sarulf, Realm Eater|Kaldheim|228|R|{1}{B}{G}|Legendary Creature - Wolf|3|3|Whenever a permanent an opponent controls is put into a graveyard from the battlefield, put a +1/+1 counter on Sarulf, Realm Eater.$At the beginning of your upkeep, if Sarulf has one or more +1/+1 counters on it, you may remove all of them. If you do, exile each other nonland permanent with converted mana cost less than or equal to the number of counters removed this way.|
|
Sarulf, Realm Eater|Kaldheim|228|R|{1}{B}{G}|Legendary Creature - Wolf|3|3|Whenever a permanent an opponent controls is put into a graveyard from the battlefield, put a +1/+1 counter on Sarulf, Realm Eater.$At the beginning of your upkeep, if Sarulf has one or more +1/+1 counters on it, you may remove all of them. If you do, exile each other nonland permanent with converted mana cost less than or equal to the number of counters removed this way.|
|
||||||
Showdown of the Skalds|Kaldheim|229|R|{2}{R}{W}|Enchantment - Saga|||(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)$I — Exile the top four cards of your library. Until the end of your next turn, you may play those cards.$II, III — Whenever you cast a spell this turn, put a +1/+1 counter on target creature you control.|
|
Showdown of the Skalds|Kaldheim|229|R|{2}{R}{W}|Enchantment - Saga|||(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)$I — Exile the top four cards of your library. Until the end of your next turn, you may play those cards.$II, III — Whenever you cast a spell this turn, put a +1/+1 counter on target creature you control.|
|
||||||
Pyre of Heroes|Kaldheim|241|R|{2}|Artifact|||{2}, {T}, Sacrifice a creature: Search your library for a creature card that shares a creature type with the sacrificed creature and has converted mana cost equal to 1 plus that creature's converted mana cost. Put that card onto the battlefield, then shuffle your library. Activate this ability only any time you could cast a sorcery.|
|
Pyre of Heroes|Kaldheim|241|R|{2}|Artifact|||{2}, {T}, Sacrifice a creature: Search your library for a creature card that shares a creature type with the sacrificed creature and has converted mana cost equal to 1 plus that creature's converted mana cost. Put that card onto the battlefield, then shuffle your library. Activate this ability only any time you could cast a sorcery.|
|
||||||
|
Alpine Meadow|Kaldheim|248|C||Snow Land - Mountain Plains|||<i>({tap}: Add {R} or {W}.)</i>$Alpine Meadow enters the battlefield tapped.|
|
||||||
|
Arctic Treeline|Kaldheim|249|C||Snow Land - Forest Plains|||<i>({tap}: Add {G} or {W}.)</i>$Arctic Treeline enters the battlefield tapped.|
|
||||||
Barkchannel Pathway|Kaldheim|251|R||Land|||{T}: Add {G}.|
|
Barkchannel Pathway|Kaldheim|251|R||Land|||{T}: Add {G}.|
|
||||||
Tidechannel Pathway|Kaldheim|251|R||Land|||{T}: Add {U}.|
|
Tidechannel Pathway|Kaldheim|251|R||Land|||{T}: Add {U}.|
|
||||||
Blightstep Pathway|Kaldheim|252|R||Land|||{T}: Add {B}.|
|
Blightstep Pathway|Kaldheim|252|R||Land|||{T}: Add {B}.|
|
||||||
Searstep Pathway|Kaldheim|252|R||Land|||{T}: Add {R}.|
|
Searstep Pathway|Kaldheim|252|R||Land|||{T}: Add {R}.|
|
||||||
Darkbore Pathway|Kaldheim|254|R||Land|||{T}: Add {B}.|
|
Darkbore Pathway|Kaldheim|254|R||Land|||{T}: Add {B}.|
|
||||||
Slitherbore Pathway|Kaldheim|254|R||Land|||{T}: Add {G}.|
|
Slitherbore Pathway|Kaldheim|254|R||Land|||{T}: Add {G}.|
|
||||||
|
Glacial Floodplain|Kaldheim|257|C||Snow Land - Plains Island|||<i>({tap}: Add {W} or {U}.)</i>$Glacial Floodplain enters the battlefield tapped.|
|
||||||
Hengegate Pathway|Kaldheim|260|R||Land|||{T}: Add {W}.|
|
Hengegate Pathway|Kaldheim|260|R||Land|||{T}: Add {W}.|
|
||||||
Mistgate Pathway|Kaldheim|260|R||Land|||{T}: Add {U}.|
|
Mistgate Pathway|Kaldheim|260|R||Land|||{T}: Add {U}.|
|
||||||
|
Highland Forest|Kaldheim|261|C||Snow Land - Mountain Forest|||<i>({tap}: Add {R} or {G}.)</i>$Highland Forest enters the battlefield tapped.|
|
||||||
|
Ice Tunnel|Kaldheim|262|C||Snow Land - Island Swamp|||<i>({tap}: Add {U} or {B}.)</i>$Ice Tunnel enters the battlefield tapped.|
|
||||||
|
Rimewood Falls|Kaldheim|266|C||Snow Land - Forest Island|||<i>({tap}: Add {G} or {U}.)</i>$Rimewood Falls enters the battlefield tapped.|
|
||||||
|
Snowfield Sinkhole|Kaldheim|269|C||Snow Land - Plains Swamp|||<i>({tap}: Add {W} or {B}.)</i>$Snowfield Sinkhole enters the battlefield tapped.|
|
||||||
|
Sulfurous Mine|Kaldheim|270|C||Snow Land - Swamp Mountain|||<i>({tap}: Add {B} or {R}.)</i>$Sulfurous Mine enters the battlefield tapped.|
|
||||||
|
Volatile Fjord|Kaldheim|273|C||Snow Land - Island Mountain|||<i>({tap}: Add {U} or {R}.)</i>$Volatile Fjord enters the battlefield tapped.|
|
||||||
|
Woodland Chasm|Kaldheim|274|C||Snow Land - Swamp Forest|||<i>({tap}: Add {B} or {G}.)</i>$Woodland Chasm enters the battlefield tapped.|
|
||||||
Valkyrie Harbinger|Kaldheim|374|R|{4}{W}{W}|Creature - Angel Cleric|4|5|Flying, lifelink$At the beginning of each end step, if you gained 4 or more life this turn, create a 4/4 white Angel creature token with flying and vigilance.|
|
Valkyrie Harbinger|Kaldheim|374|R|{4}{W}{W}|Creature - Angel Cleric|4|5|Flying, lifelink$At the beginning of each end step, if you gained 4 or more life this turn, create a 4/4 white Angel creature token with flying and vigilance.|
|
||||||
Surtland Elementalist|Kaldheim|375|R|{5}{U}{U}|Creature - Giant Wizard|8|8|As an additional cost to cast this spell, reveal a Giant card from your hand or pay {2}.$Whenever Surtland Elementalist attacks, you may cast an instant or sorcery spell from your hand without paying its mana cost.|
|
Surtland Elementalist|Kaldheim|375|R|{5}{U}{U}|Creature - Giant Wizard|8|8|As an additional cost to cast this spell, reveal a Giant card from your hand or pay {2}.$Whenever Surtland Elementalist attacks, you may cast an instant or sorcery spell from your hand without paying its mana cost.|
|
||||||
Cleaving Reaper|Kaldheim|376|R|{3}{B}{B}|Creature - Angel Berserker|5|3|Flying, trample$Pay 3 life: Return Cleaving Reaper from your graveyard to your hand. Activate this ability only if you had an Angel or Berserker enter the battlefield under your control this turn.|
|
Cleaving Reaper|Kaldheim|376|R|{3}{B}{B}|Creature - Angel Berserker|5|3|Flying, trample$Pay 3 life: Return Cleaving Reaper from your graveyard to your hand. Activate this ability only if you had an Angel or Berserker enter the battlefield under your control this turn.|
|
||||||
|
|
Loading…
Reference in a new issue