[KHM] Implemented Great Hall of Starnheim

This commit is contained in:
Daniel Bomar 2021-01-20 09:15:59 -06:00
parent 5f3a433e41
commit 91003b79dd
No known key found for this signature in database
GPG key ID: C86C8658F4023918
2 changed files with 62 additions and 0 deletions

View file

@ -0,0 +1,61 @@
package mage.cards.g;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.ActivateAsSorceryActivatedAbility;
import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.costs.Cost;
import mage.abilities.costs.common.SacrificeSourceCost;
import mage.abilities.costs.common.SacrificeTargetCost;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
import mage.game.permanent.token.AngelWarriorVigilanceToken;
import mage.target.common.TargetControlledCreaturePermanent;
/**
*
* @author weirddan455
*/
public final class GreatHallOfStarnheim extends CardImpl {
public GreatHallOfStarnheim(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
// Great Hall of Starnheim enters the battlefield tapped.
this.addAbility(new EntersBattlefieldTappedAbility());
// {T}: Add {B}.
this.addAbility(new BlackManaAbility());
// {W}{W}{B}, {T}, Sacrifice Great Hall of Starnheim and a creature you control:
// Create a 4/4 white Angel Warrior creature token with flying and vigilance.
// Activate this ability only any time you could cast a sorcery.
Ability ability = new ActivateAsSorceryActivatedAbility(
Zone.BATTLEFIELD,
new CreateTokenEffect(new AngelWarriorVigilanceToken()),
new ManaCostsImpl<>("{W}{W}{B}")
);
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
Cost cost = new SacrificeTargetCost(new TargetControlledCreaturePermanent());
cost.setText("and a creature you control");
ability.addCost(cost);
this.addAbility(ability);
}
private GreatHallOfStarnheim(final GreatHallOfStarnheim card) {
super(card);
}
@Override
public GreatHallOfStarnheim copy() {
return new GreatHallOfStarnheim(this);
}
}

View file

@ -178,6 +178,7 @@ public final class Kaldheim extends ExpansionSet {
cards.add(new SetCardInfo("Goldmaw Champion", 14, Rarity.COMMON, mage.cards.g.GoldmawChampion.class));
cards.add(new SetCardInfo("Goldspan Dragon", 139, Rarity.MYTHIC, mage.cards.g.GoldspanDragon.class));
cards.add(new SetCardInfo("Goldvein Pick", 239, Rarity.COMMON, mage.cards.g.GoldveinPick.class));
cards.add(new SetCardInfo("Great Hall of Starnheim", 259, Rarity.UNCOMMON, mage.cards.g.GreatHallOfStarnheim.class));
cards.add(new SetCardInfo("Grim Draugr", 96, Rarity.COMMON, mage.cards.g.GrimDraugr.class));
cards.add(new SetCardInfo("Grizzled Outrider", 173, Rarity.COMMON, mage.cards.g.GrizzledOutrider.class));
cards.add(new SetCardInfo("Guardian Gladewalker", 174, Rarity.COMMON, mage.cards.g.GuardianGladewalker.class));