diff --git a/.gitattributes b/.gitattributes index d69abd2f7bb..f60d02137aa 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2508,6 +2508,7 @@ res/cardsfolder/inspiration.txt -text svneol=native#text/plain res/cardsfolder/inspired_charge.txt -text svneol=native#text/plain res/cardsfolder/inspired_sprite.txt -text svneol=native#text/plain res/cardsfolder/inspirit.txt -text svneol=native#text/plain +res/cardsfolder/instill_furor.txt -text svneol=native#text/plain res/cardsfolder/instill_infection.txt -text svneol=native#text/plain res/cardsfolder/insurrection.txt -text svneol=native#text/plain res/cardsfolder/intervene.txt -text svneol=native#text/plain diff --git a/res/cardsfolder/instill_furor.txt b/res/cardsfolder/instill_furor.txt new file mode 100644 index 00000000000..caedf1eef0f --- /dev/null +++ b/res/cardsfolder/instill_furor.txt @@ -0,0 +1,9 @@ +Name:Instill Furor +ManaCost:1 R +Types:Enchantment Aura +Text:Enchanted creature has "At the beginning of your end step, sacrifice this creature unless it attacked this turn." +K:Enchant creature +K:enPumpCurse:+0/+0/At the beginning of your end step, sacrifice this creature unless it attacked this turn. +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/instill_furor.jpg +End \ No newline at end of file diff --git a/src/forge/EndOfTurn.java b/src/forge/EndOfTurn.java index 040dea8c12e..17dbb23cea5 100644 --- a/src/forge/EndOfTurn.java +++ b/src/forge/EndOfTurn.java @@ -168,6 +168,25 @@ public class EndOfTurn implements java.io.Serializable AllZone.Stack.add(change); } + if(c.hasKeyword("At the beginning of your end step, sacrifice this creature unless it attacked this turn.") + && !c.getCreatureAttackedThisTurn() + /* && !(c.getTurnInZone() == AllZone.Phase.getTurn())*/ + && AllZone.Phase.isPlayerTurn(c.getController())) { + final Card source = c; + final SpellAbility change = new Ability(source, "0") { + @Override + public void resolve() { + if(AllZone.GameAction.isCardInPlay(source)) { + AllZone.GameAction.sacrifice(source); + } + } + }; + StringBuilder sb = new StringBuilder(); + sb.append(source.getName()).append(" - sacrifice ").append(source.getName()).append("."); + change.setStackDescription(sb.toString()); + + AllZone.Stack.add(change); + } if(c.getCreatureAttackedThisTurn()) c.setCreatureAttackedThisTurn(false); } execute(at);