mirror of
https://github.com/magefree/mage.git
synced 2025-12-27 22:12:03 -08:00
[DFT] Implement Broodheart Engine
This commit is contained in:
parent
13ce2aacd2
commit
11edf9dd7a
2 changed files with 60 additions and 0 deletions
59
Mage.Sets/src/mage/cards/b/BroodheartEngine.java
Normal file
59
Mage.Sets/src/mage/cards/b/BroodheartEngine.java
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
package mage.cards.b;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.ActivateAsSorceryActivatedAbility;
|
||||
import mage.abilities.costs.common.SacrificeSourceCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect;
|
||||
import mage.abilities.effects.keyword.SurveilEffect;
|
||||
import mage.abilities.triggers.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.target.common.TargetCardInYourGraveyard;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class BroodheartEngine extends CardImpl {
|
||||
|
||||
private static final FilterCard filter = new FilterCard("creature or Vehicle card from your graveyard");
|
||||
|
||||
static {
|
||||
filter.add(Predicates.or(
|
||||
CardType.CREATURE.getPredicate(),
|
||||
SubType.VEHICLE.getPredicate()
|
||||
));
|
||||
}
|
||||
|
||||
public BroodheartEngine(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{B}{G}");
|
||||
|
||||
// At the beginning of your upkeep, surveil 1.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SurveilEffect(1)));
|
||||
|
||||
// {2}{B}{G}, {T}, Sacrifice this artifact: Return target creature or Vehicle card from your graveyard to the battlefield. Activate only as a sorcery.
|
||||
Ability ability = new ActivateAsSorceryActivatedAbility(
|
||||
new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl<>("{2}{B}{G}")
|
||||
);
|
||||
ability.addCost(new TapSourceCost());
|
||||
ability.addCost(new SacrificeSourceCost());
|
||||
ability.addTarget(new TargetCardInYourGraveyard(filter));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
private BroodheartEngine(final BroodheartEngine card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BroodheartEngine copy() {
|
||||
return new BroodheartEngine(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -52,6 +52,7 @@ public final class Aetherdrift extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Broadcast Rambler", 6, Rarity.COMMON, mage.cards.b.BroadcastRambler.class));
|
||||
cards.add(new SetCardInfo("Broadside Barrage", 192, Rarity.UNCOMMON, mage.cards.b.BroadsideBarrage.class));
|
||||
cards.add(new SetCardInfo("Broken Wings", 156, Rarity.COMMON, mage.cards.b.BrokenWings.class));
|
||||
cards.add(new SetCardInfo("Broodheart Engine", 193, Rarity.UNCOMMON, mage.cards.b.BroodheartEngine.class));
|
||||
cards.add(new SetCardInfo("Bulwark Ox", 7, Rarity.RARE, mage.cards.b.BulwarkOx.class));
|
||||
cards.add(new SetCardInfo("Burner Rocket", 114, Rarity.COMMON, mage.cards.b.BurnerRocket.class));
|
||||
cards.add(new SetCardInfo("Burnout Bashtronaut", 115, Rarity.RARE, mage.cards.b.BurnoutBashtronaut.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue