mirror of
https://github.com/correl/mage.git
synced 2024-12-24 11:50:45 +00:00
[NEO] Implemented Sokenzan Smelter
This commit is contained in:
parent
8e029d5261
commit
577da37f6e
3 changed files with 86 additions and 0 deletions
54
Mage.Sets/src/mage/cards/s/SokenzanSmelter.java
Normal file
54
Mage.Sets/src/mage/cards/s/SokenzanSmelter.java
Normal file
|
@ -0,0 +1,54 @@
|
|||
package mage.cards.s;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.BeginningOfCombatTriggeredAbility;
|
||||
import mage.abilities.costs.CompositeCost;
|
||||
import mage.abilities.costs.common.SacrificeTargetCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.effects.common.DoIfCostPaid;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.game.permanent.token.ConstructRedToken;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class SokenzanSmelter extends CardImpl {
|
||||
|
||||
public SokenzanSmelter(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}");
|
||||
|
||||
this.subtype.add(SubType.GOBLIN);
|
||||
this.subtype.add(SubType.ARTIFICER);
|
||||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
// At the beginning of combat on your turn, you may pay {1} and sacrifice an artifact. If you do, create a 3/1 red Construct artifact creature token with haste.
|
||||
this.addAbility(new BeginningOfCombatTriggeredAbility(new DoIfCostPaid(
|
||||
new CreateTokenEffect(new ConstructRedToken()),
|
||||
new CompositeCost(
|
||||
new GenericManaCost(1),
|
||||
new SacrificeTargetCost(new TargetControlledPermanent(
|
||||
StaticFilters.FILTER_CONTROLLED_PERMANENT_ARTIFACT_AN
|
||||
)), "pay {1} and sacrifice an artifact"
|
||||
)
|
||||
), TargetController.YOU, false));
|
||||
}
|
||||
|
||||
private SokenzanSmelter(final SokenzanSmelter card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SokenzanSmelter copy() {
|
||||
return new SokenzanSmelter(this);
|
||||
}
|
||||
}
|
|
@ -76,6 +76,7 @@ public final class KamigawaNeonDynasty extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Satoru Umezawa", 234, Rarity.RARE, mage.cards.s.SatoruUmezawa.class));
|
||||
cards.add(new SetCardInfo("Satsuki, the Living Lore", 235, Rarity.RARE, mage.cards.s.SatsukiTheLivingLore.class));
|
||||
cards.add(new SetCardInfo("Silver-Fur Master", 236, Rarity.UNCOMMON, mage.cards.s.SilverFurMaster.class));
|
||||
cards.add(new SetCardInfo("Sokenzan Smelter", 164, Rarity.UNCOMMON, mage.cards.s.SokenzanSmelter.class));
|
||||
cards.add(new SetCardInfo("Sokenzan, Crucible of Defiance", 276, Rarity.RARE, mage.cards.s.SokenzanCrucibleOfDefiance.class));
|
||||
cards.add(new SetCardInfo("Spirited Companion", 38, Rarity.COMMON, mage.cards.s.SpiritedCompanion.class));
|
||||
cards.add(new SetCardInfo("Sunblade Samurai", 39, Rarity.COMMON, mage.cards.s.SunbladeSamurai.class));
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
package mage.game.permanent.token;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class ConstructRedToken extends TokenImpl {
|
||||
|
||||
public ConstructRedToken() {
|
||||
super("Construct token", "3/1 red Construct artifact creature token with haste");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add(SubType.CONSTRUCT);
|
||||
color.setRed(true);
|
||||
power = new MageInt(3);
|
||||
toughness = new MageInt(1);
|
||||
addAbility(HasteAbility.getInstance());
|
||||
}
|
||||
|
||||
public ConstructRedToken(final ConstructRedToken token) {
|
||||
super(token);
|
||||
}
|
||||
|
||||
public ConstructRedToken copy() {
|
||||
return new ConstructRedToken(this);
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue