[LCI] Implement Kaslem's Stonetree / Kaslem's Strider

This commit is contained in:
theelk801 2023-11-02 21:25:52 -04:00
parent 12673fa130
commit eb0e5656c6
3 changed files with 79 additions and 0 deletions

View file

@ -0,0 +1,43 @@
package mage.cards.k;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
import mage.abilities.keyword.CraftAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.PutCards;
import mage.constants.SubType;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class KaslemsStonetree extends CardImpl {
public KaslemsStonetree(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}{G}");
this.secondSideCardClazz = mage.cards.k.KaslemsStrider.class;
// When Kaslem's Stonetree enters the battlefield, look at the top six cards of your library. You may put a land card from among them onto the battlefield tapped. Put the rest on the bottom in a random order.
this.addAbility(new EntersBattlefieldTriggeredAbility(new LookLibraryAndPickControllerEffect(
6, 1, PutCards.BATTLEFIELD_TAPPED, PutCards.BOTTOM_RANDOM
)));
// Craft with Cave {5}{G}
this.addAbility(new CraftAbility(
"{5}{G}", "Cave", "another Cave you " +
"control or a Cave card in your graveyard", SubType.CAVE.getPredicate()
));
}
private KaslemsStonetree(final KaslemsStonetree card) {
super(card);
}
@Override
public KaslemsStonetree copy() {
return new KaslemsStonetree(this);
}
}

View file

@ -0,0 +1,34 @@
package mage.cards.k;
import mage.MageInt;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class KaslemsStrider extends CardImpl {
public KaslemsStrider(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "");
this.subtype.add(SubType.GOLEM);
this.power = new MageInt(5);
this.toughness = new MageInt(5);
this.nightCard = true;
this.color.setGreen(true);
}
private KaslemsStrider(final KaslemsStrider card) {
super(card);
}
@Override
public KaslemsStrider copy() {
return new KaslemsStrider(this);
}
}

View file

@ -108,6 +108,8 @@ public final class TheLostCavernsOfIxalan extends ExpansionSet {
cards.add(new SetCardInfo("Island", 395, Rarity.LAND, mage.cards.basiclands.Island.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Itlimoc, Cradle of the Sun", 188, Rarity.RARE, mage.cards.i.ItlimocCradleOfTheSun.class));
cards.add(new SetCardInfo("Jadelight Spelunker", 196, Rarity.RARE, mage.cards.j.JadelightSpelunker.class));
cards.add(new SetCardInfo("Kaslem's Stonetree", 197, Rarity.COMMON, mage.cards.k.KaslemsStonetree.class));
cards.add(new SetCardInfo("Kaslem's Strider", 197, Rarity.COMMON, mage.cards.k.KaslemsStrider.class));
cards.add(new SetCardInfo("Kellan, Daring Traveler", 231, Rarity.RARE, mage.cards.k.KellanDaringTraveler.class));
cards.add(new SetCardInfo("Kinjalli's Dawnrunner", 19, Rarity.UNCOMMON, mage.cards.k.KinjallisDawnrunner.class));
cards.add(new SetCardInfo("Kutzil's Flanker", 20, Rarity.RARE, mage.cards.k.KutzilsFlanker.class));