mirror of
https://github.com/magefree/mage.git
synced 2026-01-10 21:02:08 -08:00
[FDN] Implement Soulstone Sanctuary
This commit is contained in:
parent
80bdc4f232
commit
92ab917f42
2 changed files with 69 additions and 0 deletions
68
Mage.Sets/src/mage/cards/s/SoulstoneSanctuary.java
Normal file
68
Mage.Sets/src/mage/cards/s/SoulstoneSanctuary.java
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
package mage.cards.s;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.continuous.BecomesCreatureSourceEffect;
|
||||
import mage.abilities.keyword.VigilanceAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Zone;
|
||||
import mage.game.permanent.token.TokenImpl;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author ciaccona007
|
||||
*/
|
||||
public final class SoulstoneSanctuary extends CardImpl {
|
||||
|
||||
public SoulstoneSanctuary(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||
|
||||
|
||||
// {T}: Add {C}.
|
||||
this.addAbility(new ColorlessManaAbility());
|
||||
|
||||
// {4}: This land becomes a 3/3 creature with vigilance and all creature types. It's still a land.
|
||||
this.addAbility(new SimpleActivatedAbility(
|
||||
Zone.BATTLEFIELD,
|
||||
new BecomesCreatureSourceEffect(new SoulStoneSanctuaryToken(), CardType.LAND, Duration.WhileOnBattlefield)
|
||||
.setText("this land becomes a 3/3 creature with vigilance and all creature types. It's still a land"),
|
||||
new GenericManaCost(4)
|
||||
));
|
||||
}
|
||||
|
||||
private SoulstoneSanctuary(final SoulstoneSanctuary card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SoulstoneSanctuary copy() {
|
||||
return new SoulstoneSanctuary(this);
|
||||
}
|
||||
}
|
||||
|
||||
class SoulStoneSanctuaryToken extends TokenImpl {
|
||||
|
||||
public SoulStoneSanctuaryToken() {
|
||||
super("", "3/3 creature with vigilance and all creature types");
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.setIsAllCreatureTypes(true);
|
||||
power = new MageInt(3);
|
||||
toughness = new MageInt(3);
|
||||
|
||||
this.addAbility(VigilanceAbility.getInstance());
|
||||
}
|
||||
private SoulStoneSanctuaryToken(final SoulStoneSanctuaryToken token) {
|
||||
super(token);
|
||||
}
|
||||
|
||||
public SoulStoneSanctuaryToken copy() {
|
||||
return new SoulStoneSanctuaryToken(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -433,6 +433,7 @@ public final class Foundations extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Sorcerous Spyglass", 679, Rarity.UNCOMMON, mage.cards.s.SorcerousSpyglass.class));
|
||||
cards.add(new SetCardInfo("Soul-Guide Lantern", 680, Rarity.UNCOMMON, mage.cards.s.SoulGuideLantern.class));
|
||||
cards.add(new SetCardInfo("Soul-Shackled Zombie", 70, Rarity.COMMON, mage.cards.s.SoulShackledZombie.class));
|
||||
cards.add(new SetCardInfo("Soulstone Sanctuary", 133, Rarity.RARE, mage.cards.s.SoulstoneSanctuary.class));
|
||||
cards.add(new SetCardInfo("Sower of Chaos", 95, Rarity.COMMON, mage.cards.s.SowerOfChaos.class));
|
||||
cards.add(new SetCardInfo("Spectral Sailor", 164, Rarity.UNCOMMON, mage.cards.s.SpectralSailor.class));
|
||||
cards.add(new SetCardInfo("Sphinx of the Final Word", 597, Rarity.MYTHIC, mage.cards.s.SphinxOfTheFinalWord.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue