mirror of
https://github.com/correl/mage.git
synced 2024-12-25 03:00:15 +00:00
added Heat of Battle and Suq'Ata Firewalker
This commit is contained in:
parent
b4553641eb
commit
d900df0dad
4 changed files with 125 additions and 1 deletions
70
Mage.Sets/src/mage/cards/h/HeatOfBattle.java
Normal file
70
Mage.Sets/src/mage/cards/h/HeatOfBattle.java
Normal file
|
@ -0,0 +1,70 @@
|
|||
package mage.cards.h;
|
||||
|
||||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Zone;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.targetpointer.FixedTarget;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class HeatOfBattle extends CardImpl {
|
||||
|
||||
public HeatOfBattle(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{R}");
|
||||
|
||||
|
||||
// Whenever a creature blocks, Heat of Battle deals 1 damage to that creature's controller.
|
||||
this.addAbility(new HeatOfBattleTriggeredAbility());
|
||||
}
|
||||
|
||||
public HeatOfBattle(final HeatOfBattle card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
public HeatOfBattle copy() {
|
||||
return new HeatOfBattle(this);
|
||||
}
|
||||
}
|
||||
|
||||
class HeatOfBattleTriggeredAbility extends TriggeredAbilityImpl {
|
||||
|
||||
public HeatOfBattleTriggeredAbility() {
|
||||
super(Zone.BATTLEFIELD, new DamageTargetEffect(1));
|
||||
}
|
||||
|
||||
public HeatOfBattleTriggeredAbility(HeatOfBattleTriggeredAbility ability) {
|
||||
super(ability);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HeatOfBattleTriggeredAbility copy() {
|
||||
return new HeatOfBattleTriggeredAbility(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkEventType(GameEvent event, Game game) {
|
||||
return event.getType() == GameEvent.EventType.BLOCKER_DECLARED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkTrigger(GameEvent event, Game game) {
|
||||
Permanent blocker = game.getPermanent(event.getSourceId());
|
||||
if (blocker != null) {
|
||||
getEffects().get(0).setTargetPointer(new FixedTarget(blocker.getControllerId()));
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRule() {
|
||||
return "Whenever a creature blocks, {this} deals 1 damage to that creature's controller.";
|
||||
}
|
||||
}
|
||||
|
53
Mage.Sets/src/mage/cards/s/SuqAtaFirewalker.java
Normal file
53
Mage.Sets/src/mage/cards/s/SuqAtaFirewalker.java
Normal file
|
@ -0,0 +1,53 @@
|
|||
package mage.cards.s;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.ObjectColor;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.CantBeTargetedSourceEffect;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterObject;
|
||||
import mage.filter.FilterStackObject;
|
||||
import mage.filter.predicate.mageobject.ColorPredicate;
|
||||
import mage.target.common.TargetCreatureOrPlayer;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class SuqAtaFirewalker extends CardImpl {
|
||||
|
||||
private static final FilterObject filterRed = new FilterStackObject("red spells or abilities from red sources");
|
||||
static {
|
||||
filterRed.add(new ColorPredicate(ObjectColor.RED));
|
||||
}
|
||||
public SuqAtaFirewalker(UUID cardId, CardSetInfo cardSetInfo){
|
||||
super(cardId, cardSetInfo, new CardType[]{CardType.CREATURE}, "{1}{U}{U}");
|
||||
subtype.add("Human");
|
||||
subtype.add("Wizard");
|
||||
power = new MageInt(0);
|
||||
toughness = new MageInt(1);
|
||||
color.setBlue(true);
|
||||
|
||||
|
||||
// Suq'Ata Firewalker can't be the target of black spells or abilities from black sources.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeTargetedSourceEffect(filterRed, Duration.WhileOnBattlefield)));
|
||||
|
||||
//{T}: Suq'Ata Firewalker deals 1 damage to target creature or player.
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
|
||||
ability.addTarget(new TargetCreatureOrPlayer());
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
||||
public SuqAtaFirewalker(SuqAtaFirewalker other){
|
||||
super(other);
|
||||
}
|
||||
|
||||
public SuqAtaFirewalker copy(){
|
||||
return new SuqAtaFirewalker(this);
|
||||
}
|
||||
}
|
|
@ -32,7 +32,6 @@ import mage.constants.Rarity;
|
|||
import mage.constants.SetType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author North
|
||||
*/
|
||||
public class Stronghold extends ExpansionSet {
|
||||
|
@ -99,6 +98,7 @@ public class Stronghold extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Grave Pact", 10, Rarity.RARE, mage.cards.g.GravePact.class));
|
||||
cards.add(new SetCardInfo("Hammerhead Shark", 32, Rarity.COMMON, mage.cards.h.HammerheadShark.class));
|
||||
cards.add(new SetCardInfo("Heartstone", 128, Rarity.UNCOMMON, mage.cards.h.Heartstone.class));
|
||||
cards.add(new SetCardInfo("Heat of Battle", 88, Rarity.UNCOMMON, mage.cards.h.HeatOfBattle.class));
|
||||
cards.add(new SetCardInfo("Hermit Druid", 58, Rarity.RARE, mage.cards.h.HermitDruid.class));
|
||||
cards.add(new SetCardInfo("Hesitation", 33, Rarity.UNCOMMON, mage.cards.h.Hesitation.class));
|
||||
cards.add(new SetCardInfo("Hibernation Sliver", 140, Rarity.UNCOMMON, mage.cards.h.HibernationSliver.class));
|
||||
|
|
|
@ -152,6 +152,7 @@ public class Visions extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Sun Clasp", 121, Rarity.COMMON, mage.cards.s.SunClasp.class));
|
||||
cards.add(new SetCardInfo("Suq'Ata Assassin", 19, Rarity.UNCOMMON, mage.cards.s.SuqAtaAssassin.class));
|
||||
cards.add(new SetCardInfo("Suq'Ata Lancer", 96, Rarity.COMMON, mage.cards.s.SuqAtaLancer.class));
|
||||
cards.add(new SetCardInfo("Suq'Ata Firewalker", 94, Rarity.UNCOMMON, mage.cards.s.SuqAtaFirewalker.class));
|
||||
cards.add(new SetCardInfo("Talruum Champion", 97, Rarity.COMMON, mage.cards.t.TalruumChampion.class));
|
||||
cards.add(new SetCardInfo("Talruum Piper", 98, Rarity.UNCOMMON, mage.cards.t.TalruumPiper.class));
|
||||
cards.add(new SetCardInfo("Tar Pit Warrior", 20, Rarity.COMMON, mage.cards.t.TarPitWarrior.class));
|
||||
|
|
Loading…
Reference in a new issue