mirror of
https://github.com/magefree/mage.git
synced 2026-01-26 21:29:17 -08:00
[TMT] Implement Raphael, Ninja Destroyer
This commit is contained in:
parent
b3a44b31e8
commit
154184a894
2 changed files with 80 additions and 0 deletions
79
Mage.Sets/src/mage/cards/r/RaphaelNinjaDestroyer.java
Normal file
79
Mage.Sets/src/mage/cards/r/RaphaelNinjaDestroyer.java
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
package mage.cards.r;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DealtDamageToSourceTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.dynamicvalue.common.SavedDamageValue;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.combat.MustBeBlockedByAtLeastOneSourceEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class RaphaelNinjaDestroyer extends CardImpl {
|
||||
|
||||
public RaphaelNinjaDestroyer(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{R}");
|
||||
|
||||
this.supertype.add(SuperType.LEGENDARY);
|
||||
this.subtype.add(SubType.MUTANT);
|
||||
this.subtype.add(SubType.NINJA);
|
||||
this.subtype.add(SubType.TURTLE);
|
||||
this.power = new MageInt(4);
|
||||
this.toughness = new MageInt(4);
|
||||
|
||||
// Raphael must be blocked if able.
|
||||
this.addAbility(new SimpleStaticAbility(new MustBeBlockedByAtLeastOneSourceEffect(Duration.WhileOnBattlefield)));
|
||||
|
||||
// Enrage -- Whenever Raphael is dealt damage, add that much {R}. Until end of turn, you don't lose this mana as steps and phases end.
|
||||
this.addAbility(new DealtDamageToSourceTriggeredAbility(
|
||||
new RaphaelNinjaDestroyerEffect(), false, true
|
||||
));
|
||||
}
|
||||
|
||||
private RaphaelNinjaDestroyer(final RaphaelNinjaDestroyer card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public RaphaelNinjaDestroyer copy() {
|
||||
return new RaphaelNinjaDestroyer(this);
|
||||
}
|
||||
}
|
||||
|
||||
class RaphaelNinjaDestroyerEffect extends OneShotEffect {
|
||||
|
||||
RaphaelNinjaDestroyerEffect() {
|
||||
super(Outcome.Benefit);
|
||||
staticText = "add that much {R}. Until end of turn, you don't lose this mana as steps and phases end";
|
||||
}
|
||||
|
||||
private RaphaelNinjaDestroyerEffect(final RaphaelNinjaDestroyerEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public RaphaelNinjaDestroyerEffect copy() {
|
||||
return new RaphaelNinjaDestroyerEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
Player player = game.getPlayer(source.getControllerId());
|
||||
int count = SavedDamageValue.AMOUNT.calculate(game, source, this);
|
||||
if (player == null || count < 1) {
|
||||
return false;
|
||||
}
|
||||
player.getManaPool().addMana(Mana.RedMana(count), game, source, true);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -55,6 +55,7 @@ public final class TeenageMutantNinjaTurtles extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Plains", 310, Rarity.LAND, mage.cards.basiclands.Plains.class, FULL_ART_BFZ_VARIOUS));
|
||||
cards.add(new SetCardInfo("Prehistoric Pet", 22, Rarity.RARE, mage.cards.p.PrehistoricPet.class));
|
||||
cards.add(new SetCardInfo("Raphael's Technique", 105, Rarity.RARE, mage.cards.r.RaphaelsTechnique.class));
|
||||
cards.add(new SetCardInfo("Raphael, Ninja Destroyer", 102, Rarity.MYTHIC, mage.cards.r.RaphaelNinjaDestroyer.class));
|
||||
cards.add(new SetCardInfo("Raphael, the Nightwatcher", 103, Rarity.RARE, mage.cards.r.RaphaelTheNightwatcher.class));
|
||||
cards.add(new SetCardInfo("Ravenous Robots", 106, Rarity.RARE, mage.cards.r.RavenousRobots.class));
|
||||
cards.add(new SetCardInfo("Sally Pride, Lioness Leader", 24, Rarity.RARE, mage.cards.s.SallyPrideLionessLeader.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue