Implemented Spinehorn Minotaur

This commit is contained in:
Evan Kranzler 2019-05-31 22:04:12 -04:00
parent 441df31eeb
commit 863112b874
2 changed files with 60 additions and 0 deletions

View file

@ -0,0 +1,59 @@
package mage.cards.s;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.Condition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.keyword.DoubleStrikeAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.game.Game;
import mage.watchers.common.CardsDrawnThisTurnWatcher;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class SpinehornMinotaur extends CardImpl {
public SpinehornMinotaur(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}");
this.subtype.add(SubType.MINOTAUR);
this.subtype.add(SubType.BERSERKER);
this.power = new MageInt(2);
this.toughness = new MageInt(3);
// As long as you've drawn two or more cards this turn, Spinehorn Minotaur has double strike.
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
new GainAbilitySourceEffect(DoubleStrikeAbility.getInstance(), Duration.WhileOnBattlefield),
SpinehornMinotaurCondition.instance, "As long as you've drawn two or more cards this turn, " +
"{this} has double strike"
)), new CardsDrawnThisTurnWatcher());
}
private SpinehornMinotaur(final SpinehornMinotaur card) {
super(card);
}
@Override
public SpinehornMinotaur copy() {
return new SpinehornMinotaur(this);
}
}
enum SpinehornMinotaurCondition implements Condition {
instance;
@Override
public boolean apply(Game game, Ability source) {
CardsDrawnThisTurnWatcher watcher = game.getState().getWatcher(CardsDrawnThisTurnWatcher.class);
return watcher != null && watcher.getCardsDrawnThisTurn(source.getControllerId()) > 1;
}
}

View file

@ -198,6 +198,7 @@ public final class ModernHorizons extends ExpansionSet {
cards.add(new SetCardInfo("Snow-Covered Swamp", 252, Rarity.LAND, mage.cards.s.SnowCoveredSwamp.class, FULL_ART_BFZ_VARIOUS));
cards.add(new SetCardInfo("Soul-Strike Technique", 30, Rarity.COMMON, mage.cards.s.SoulStrikeTechnique.class));
cards.add(new SetCardInfo("Spell Snuff", 70, Rarity.COMMON, mage.cards.s.SpellSnuff.class));
cards.add(new SetCardInfo("Spinehorn Minotaur", 147, Rarity.COMMON, mage.cards.s.SpinehornMinotaur.class));
cards.add(new SetCardInfo("Splicer's Skill", 31, Rarity.UNCOMMON, mage.cards.s.SplicersSkill.class));
cards.add(new SetCardInfo("Spore Frog", 180, Rarity.COMMON, mage.cards.s.SporeFrog.class));
cards.add(new SetCardInfo("Springbloom Druid", 181, Rarity.COMMON, mage.cards.s.SpringbloomDruid.class));