From fdbc902df26abae5555c34baa2e1a56a007672fc Mon Sep 17 00:00:00 2001 From: moomarc Date: Wed, 13 Feb 2013 14:01:45 +0000 Subject: [PATCH] - Added Living Inferno - improved stack description for divided damage/prevention --- .gitattributes | 1 + res/cardsfolder/j/jaws_of_stone.txt | 2 +- res/cardsfolder/l/living_inferno.txt | 17 +++++++++++++++++ .../card/ability/effects/DamageDealEffect.java | 5 +++-- .../ability/effects/DamagePreventEffect.java | 7 ++++++- 5 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 res/cardsfolder/l/living_inferno.txt diff --git a/.gitattributes b/.gitattributes index e8b151a2327..868df74841c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -5999,6 +5999,7 @@ res/cardsfolder/l/living_death.txt svneol=native#text/plain res/cardsfolder/l/living_destiny.txt -text res/cardsfolder/l/living_end.txt -text res/cardsfolder/l/living_hive.txt svneol=native#text/plain +res/cardsfolder/l/living_inferno.txt -text res/cardsfolder/l/living_lands.txt svneol=native#text/plain res/cardsfolder/l/living_plane.txt svneol=native#text/plain res/cardsfolder/l/living_terrain.txt -text diff --git a/res/cardsfolder/j/jaws_of_stone.txt b/res/cardsfolder/j/jaws_of_stone.txt index 1e52116b506..8315b630697 100644 --- a/res/cardsfolder/j/jaws_of_stone.txt +++ b/res/cardsfolder/j/jaws_of_stone.txt @@ -2,7 +2,7 @@ Name:Jaws of Stone ManaCost:5 R Types:Sorcery Text:no text -A:SP$ DealDamage | Cost$ 5 R | ValidTgts$ Creature,Player | TgtPrompt$ Select target creature or player to distribute damage to | NumDmg$ OrigMountains | TargetMin$ Min | TargetMax$ OrigMountains | References$ OrigMountains | DividedAsYouChoose$ OrigMountains | SpellDescription$ CARDNAME deals X damage divided as you choose among any number of target creatures and/or players, where X is the number of Mountains you control as you cast CARDNAME. +A:SP$ DealDamage | Cost$ 5 R | ValidTgts$ Creature,Player | TgtPrompt$ Select target creature or player to distribute damage to | NumDmg$ OrigMountains | TargetMin$ Min | TargetMax$ OrigMountains | References$ Min,OrigMountains | DividedAsYouChoose$ OrigMountains | SpellDescription$ CARDNAME deals X damage divided as you choose among any number of target creatures and/or players, where X is the number of Mountains you control as you cast CARDNAME. T:Mode$ SpellCast | ValidCard$ Card.Self | Execute$ Conspire | Static$ True | Execute$ CountMountainsAtCast SVar:CountMountainsAtCast:DB$ StoreSVar | SVar$ OrigMountains | Type$ Count | Expression$ Valid Mountain.YouCtrl SVar:OrigMountains:Count$Valid Mountain.YouCtrl diff --git a/res/cardsfolder/l/living_inferno.txt b/res/cardsfolder/l/living_inferno.txt new file mode 100644 index 00000000000..22a8f710f41 --- /dev/null +++ b/res/cardsfolder/l/living_inferno.txt @@ -0,0 +1,17 @@ +Name:Living Inferno +ManaCost:6 R R +Types:Creature Elemental +Text:no text +PT:8/5 +A:AB$ DealDamage | Cost$ T | ValidTgts$ Creature | TgtPrompt$ Select target creature to distribute damage to | NumDmg$ FirePower | TargetMin$ Min | TargetMax$ FirePower | References$ FirePower,Min | DividedAsYouChoose$ FirePower | SubAbility$ Retribution | RememberTargets$ True | SpellDescription$ CARDNAME deals damage equal to its power divided as you choose among any number of target creatures. Each of those creatures deals damage equal to its power to CARDNAME. +SVar:Retribution:DB$ EachDamage | ValidCards$ Creature.IsRemembered | ValidDescription$ of those creatures | NumDmg$ X | DamageDesc$ damage equal to its power | DefinedCards$ Remembered | SubAbility$ DBCleanup | References$ X | StackDescription$ then each of those creatures deals damage equal to its power to CARDNAME +#NumDmg isn't really used here. It is left for clarity. The AF pulls Damage straight from "X" hardcoded. +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:X:Count$CardPower +SVar:FirePower:Count$CardPower +SVar:Min:SVar$FirePower/LimitMax.1 +SVar:RemAIDeck:True +SVar:Picture:http://www.wizards.com/global/images/magic/general/living_inferno.jpg +SetInfo:GPT|Rare|http://magiccards.info/scans/en/gp/69.jpg +Oracle:{T}: Living Inferno deals damage equal to its power divided as you choose among any number of target creatures. Each of those creatures deals damage equal to its power to Living Inferno. +End \ No newline at end of file diff --git a/src/main/java/forge/card/ability/effects/DamageDealEffect.java b/src/main/java/forge/card/ability/effects/DamageDealEffect.java index 3d6bdbd16a2..5455c3f5efd 100644 --- a/src/main/java/forge/card/ability/effects/DamageDealEffect.java +++ b/src/main/java/forge/card/ability/effects/DamageDealEffect.java @@ -43,9 +43,10 @@ public class DamageDealEffect extends SpellEffect { if (sa.hasParam("DivideEvenly")) { sb.append("divided evenly (rounded down) "); + } else if (sa.hasParam("DividedAsYouChoose")) { + sb.append("divided as you choose "); } - - sb.append("to"); + sb.append("to "); for (int i = 0; i < tgts.size(); i++) { sb.append(" "); diff --git a/src/main/java/forge/card/ability/effects/DamagePreventEffect.java b/src/main/java/forge/card/ability/effects/DamagePreventEffect.java index 5e518386646..76a19833bb8 100644 --- a/src/main/java/forge/card/ability/effects/DamagePreventEffect.java +++ b/src/main/java/forge/card/ability/effects/DamagePreventEffect.java @@ -20,7 +20,12 @@ public class DamagePreventEffect extends SpellEffect { sb.append("Prevent the next "); sb.append(sa.getParam("Amount")); - sb.append(" damage that would be dealt to "); + sb.append(" damage that would be dealt "); + if (sa.hasParam("DividedAsYouChoose")) { + sb.append("between "); + } else { + sb.append("to "); + } for (int i = 0; i < tgts.size(); i++) { if (i != 0) { sb.append(" ");