forked from External/mage
[BLB] Implement Thornplate Intimidator
This commit is contained in:
parent
7f80e9ee50
commit
ecefb6c8b0
4 changed files with 63 additions and 18 deletions
|
|
@ -17,8 +17,7 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.TargetController;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetOpponent;
|
||||
import mage.watchers.common.PlayerGainedLifeWatcher;
|
||||
|
||||
|
|
@ -29,12 +28,6 @@ import java.util.UUID;
|
|||
*/
|
||||
public final class StarseerMentor extends CardImpl {
|
||||
|
||||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("nonland permanent");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(CardType.LAND.getPredicate()));
|
||||
}
|
||||
|
||||
public StarseerMentor(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{W}{B}");
|
||||
|
||||
|
|
@ -56,7 +49,7 @@ public final class StarseerMentor extends CardImpl {
|
|||
new LoseLifeTargetEffect(3),
|
||||
new OrCost(
|
||||
"sacrifice a nonland permanent or discard a card",
|
||||
new SacrificeTargetCost(filter),
|
||||
new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_NON_LAND),
|
||||
new DiscardCardCost()
|
||||
),
|
||||
"Sacrifice a nonland permanent or discard a card to prevent losing 3 life?"
|
||||
|
|
|
|||
|
|
@ -17,8 +17,7 @@ import mage.cards.Card;
|
|||
import mage.cards.CardSetInfo;
|
||||
import mage.cards.ModalDoubleFacedCard;
|
||||
import mage.constants.*;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
|
@ -34,12 +33,6 @@ import java.util.UUID;
|
|||
*/
|
||||
public final class TergridGodOfFright extends ModalDoubleFacedCard {
|
||||
|
||||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("nonland permanent");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.not(CardType.LAND.getPredicate()));
|
||||
}
|
||||
|
||||
public TergridGodOfFright(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(
|
||||
ownerId, setInfo,
|
||||
|
|
@ -68,7 +61,7 @@ public final class TergridGodOfFright extends ModalDoubleFacedCard {
|
|||
new LoseLifeTargetEffect(3),
|
||||
new OrCost(
|
||||
"sacrifice a nonland permanent or discard a card",
|
||||
new SacrificeTargetCost(filter),
|
||||
new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_NON_LAND),
|
||||
new DiscardCardCost()
|
||||
),
|
||||
"Sacrifice a nonland permanent or discard a card to prevent losing 3 life?"
|
||||
|
|
|
|||
58
Mage.Sets/src/mage/cards/t/ThornplateIntimidator.java
Normal file
58
Mage.Sets/src/mage/cards/t/ThornplateIntimidator.java
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
package mage.cards.t;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.costs.OrCost;
|
||||
import mage.abilities.costs.common.DiscardCardCost;
|
||||
import mage.abilities.costs.common.SacrificeTargetCost;
|
||||
import mage.abilities.effects.common.DoUnlessTargetPlayerOrTargetsControllerPaysEffect;
|
||||
import mage.abilities.effects.common.LoseLifeTargetEffect;
|
||||
import mage.abilities.keyword.OffspringAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetOpponent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class ThornplateIntimidator extends CardImpl {
|
||||
|
||||
public ThornplateIntimidator(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{B}");
|
||||
|
||||
this.subtype.add(SubType.RAT);
|
||||
this.subtype.add(SubType.ROGUE);
|
||||
this.power = new MageInt(4);
|
||||
this.toughness = new MageInt(3);
|
||||
|
||||
// Offspring {3}
|
||||
this.addAbility(new OffspringAbility("{3}"));
|
||||
|
||||
// When this creature enters, target opponent loses 3 life unless they sacrifice a nonland permanent or discard a card.
|
||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DoUnlessTargetPlayerOrTargetsControllerPaysEffect(
|
||||
new LoseLifeTargetEffect(3),
|
||||
new OrCost(
|
||||
"sacrifice a nonland permanent or discard a card",
|
||||
new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_NON_LAND), new DiscardCardCost()
|
||||
),
|
||||
"Sacrifice a nonland permanent or discard a card to prevent losing 3 life?"
|
||||
));
|
||||
ability.addTarget(new TargetOpponent());
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
private ThornplateIntimidator(final ThornplateIntimidator card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ThornplateIntimidator copy() {
|
||||
return new ThornplateIntimidator(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -204,6 +204,7 @@ public final class Bloomburrow extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Tender Wildguide", 196, Rarity.RARE, mage.cards.t.TenderWildguide.class));
|
||||
cards.add(new SetCardInfo("Thieving Otter", 390, Rarity.COMMON, mage.cards.t.ThievingOtter.class));
|
||||
cards.add(new SetCardInfo("Thistledown Players", 35, Rarity.COMMON, mage.cards.t.ThistledownPlayers.class));
|
||||
cards.add(new SetCardInfo("Thornplate Intimidator", 117, Rarity.COMMON, mage.cards.t.ThornplateIntimidator.class));
|
||||
cards.add(new SetCardInfo("Thornvault Forager", 197, Rarity.RARE, mage.cards.t.ThornvaultForager.class));
|
||||
cards.add(new SetCardInfo("Three Tree Mascot", 251, Rarity.COMMON, mage.cards.t.ThreeTreeMascot.class));
|
||||
cards.add(new SetCardInfo("Three Tree Rootweaver", 198, Rarity.COMMON, mage.cards.t.ThreeTreeRootweaver.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue