mirror of
https://github.com/correl/mage.git
synced 2024-12-25 19:25:41 +00:00
[ZNR] Implemented Throne of Makindi
This commit is contained in:
parent
de092a7ea7
commit
152d841256
2 changed files with 78 additions and 0 deletions
77
Mage.Sets/src/mage/cards/t/ThroneOfMakindi.java
Normal file
77
Mage.Sets/src/mage/cards/t/ThroneOfMakindi.java
Normal file
|
@ -0,0 +1,77 @@
|
|||
package mage.cards.t;
|
||||
|
||||
import mage.ConditionalMana;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.common.RemoveCountersSourceCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.abilities.mana.ConditionalAnyColorManaAbility;
|
||||
import mage.abilities.mana.builder.ConditionalManaBuilder;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class ThroneOfMakindi extends CardImpl {
|
||||
|
||||
public ThroneOfMakindi(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.LAND}, "");
|
||||
|
||||
// {T}: Add {C}.
|
||||
this.addAbility(new ColorlessManaAbility());
|
||||
|
||||
// {1}, {T}: Put a charge counter on Throne of Makindi.
|
||||
Ability ability = new SimpleActivatedAbility(
|
||||
new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new GenericManaCost(1)
|
||||
);
|
||||
ability.addCost(new TapSourceCost());
|
||||
this.addAbility(ability);
|
||||
|
||||
// {T}, Remove a charge counter from Throne of Makindi: Add two mana of any one color. Spend this mana only to cast kicked spells.
|
||||
ability = new ConditionalAnyColorManaAbility(
|
||||
new TapSourceCost(), 3, new ThroneOfMakindiManaBuilder(), true
|
||||
);
|
||||
ability.addCost(new RemoveCountersSourceCost(CounterType.CHARGE.createInstance()));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
private ThroneOfMakindi(final ThroneOfMakindi card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ThroneOfMakindi copy() {
|
||||
return new ThroneOfMakindi(this);
|
||||
}
|
||||
}
|
||||
|
||||
class ThroneOfMakindiManaBuilder extends ConditionalManaBuilder {
|
||||
|
||||
@Override
|
||||
public ConditionalMana build(Object... options) {
|
||||
return new ThroneOfMakindiConditionalMana(this.mana);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRule() {
|
||||
return "Spend this mana only to cast kicked spells";
|
||||
}
|
||||
}
|
||||
|
||||
class ThroneOfMakindiConditionalMana extends ConditionalMana {
|
||||
|
||||
ThroneOfMakindiConditionalMana(Mana mana) {
|
||||
super(mana);
|
||||
addCondition(KickedCondition.instance);
|
||||
}
|
||||
}
|
|
@ -366,6 +366,7 @@ public final class ZendikarRising extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Tazri, Beacon of Unity", 44, Rarity.MYTHIC, mage.cards.t.TazriBeaconOfUnity.class));
|
||||
cards.add(new SetCardInfo("Teeterpeak Ambusher", 169, Rarity.COMMON, mage.cards.t.TeeterpeakAmbusher.class));
|
||||
cards.add(new SetCardInfo("Territorial Scythecat", 213, Rarity.COMMON, mage.cards.t.TerritorialScythecat.class));
|
||||
cards.add(new SetCardInfo("Throne of Makindi", 265, Rarity.RARE, mage.cards.t.ThroneOfMakindi.class));
|
||||
cards.add(new SetCardInfo("Thundering Rebuke", 170, Rarity.UNCOMMON, mage.cards.t.ThunderingRebuke.class));
|
||||
cards.add(new SetCardInfo("Thundering Sparkmage", 171, Rarity.UNCOMMON, mage.cards.t.ThunderingSparkmage.class));
|
||||
cards.add(new SetCardInfo("Thwart the Grave", 130, Rarity.UNCOMMON, mage.cards.t.ThwartTheGrave.class));
|
||||
|
|
Loading…
Reference in a new issue