1) add new keyword: At the beginning of the end step, exile CARDNAME.

2) update Feral Lightning to use this instead of sacrifice
This commit is contained in:
jendave
2011-08-06 08:21:54 +00:00
parent ecd76342b1
commit 32c9456793
2 changed files with 27 additions and 15 deletions

View File

@@ -2,7 +2,7 @@ Name:Feral Lightning
ManaCost:3 R R R
Types:Sorcery
Text:Put three 3/1 red Elemental creature tokens with haste into play. Remove them from the game at end of turn.
K:spMakeToken<>3<>Elemental<>R 3 1 Elemental<>Controller<>R<>Creature;Elemental<>3<>1<>Haste;At the beginning of the end step, sacrifice CARDNAME.
K:spMakeToken<>3<>Elemental<>R 3 1 Elemental<>Controller<>R<>Creature;Elemental<>3<>1<>Haste;At the beginning of the end step, exile CARDNAME.
SVar:PlayMain1:TRUE
SVar:Rarity:Uncommon
SVar:Picture:http://resources.wizards.com/magic/cards/sok/en-us/card84373.jpg

View File

@@ -59,20 +59,32 @@ public class EndOfTurn implements java.io.Serializable
System.out.println("number of cards in compy removed zone: " + c.size());
System.out.println("number of cards in human removed zone: " + h.size());
*/
for(Card c : all)
if(!c.isFaceDown()
&& c.getKeyword().contains("At the beginning of the end step, sacrifice CARDNAME."))
{
final Card card = c;
final SpellAbility sac = new Ability(card, "0") {
@Override
public void resolve() {
if(AllZone.GameAction.isCardInPlay(card)) AllZone.GameAction.sacrifice(card);
}
};
sac.setStackDescription("Sacrifice " + card);
AllZone.Stack.add(sac);
}
for(Card c : all) {
if(!c.isFaceDown()
&& c.getKeyword().contains("At the beginning of the end step, sacrifice CARDNAME."))
{
final Card card = c;
final SpellAbility sac = new Ability(card, "0") {
@Override
public void resolve() {
if(AllZone.GameAction.isCardInPlay(card)) AllZone.GameAction.sacrifice(card);
}
};
sac.setStackDescription("Sacrifice " + card);
AllZone.Stack.add(sac);
}
if(!c.isFaceDown() && c.getKeyword().contains("At the beginning of the end step, exile CARDNAME.")) {
final Card card = c;
final SpellAbility exile = new Ability(card, "0") {
@Override
public void resolve() {
if(AllZone.GameAction.isCardInPlay(card)) AllZone.GameAction.exile(card);
}
};
exile.setStackDescription("Exile " + card);
AllZone.Stack.add(exile);
}
}
execute(at);
}//executeAt()