summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/abl-show.cc
diff options
context:
space:
mode:
authordolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573>2009-07-12 08:05:12 +0000
committerdolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573>2009-07-12 08:05:12 +0000
commit21695abdc349e579845565976a72d5600a1f8c4a (patch)
tree81ce4d25a33513f9abe9b0979d9e928e36cb0fcb /crawl-ref/source/abl-show.cc
parentf14293feb83a9a1790c0e158697bf36634655188 (diff)
downloadcrawl-ref-21695abdc349e579845565976a72d5600a1f8c4a.tar.gz
crawl-ref-21695abdc349e579845565976a72d5600a1f8c4a.zip
Give Zin a one-shot ability at piety > 160 (cf. TSO's/Lugonu's weapon
blessings) to remove all mutations. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10173 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/abl-show.cc')
-rw-r--r--crawl-ref/source/abl-show.cc19
1 files changed, 16 insertions, 3 deletions
diff --git a/crawl-ref/source/abl-show.cc b/crawl-ref/source/abl-show.cc
index a76fad1eb3..520cd54255 100644
--- a/crawl-ref/source/abl-show.cc
+++ b/crawl-ref/source/abl-show.cc
@@ -225,6 +225,7 @@ static const ability_def Ability_List[] =
{ ABIL_ZIN_RECITE, "Recite", 3, 0, 120, 0, ABFLAG_DELAY },
{ ABIL_ZIN_VITALISATION, "Vitalisation", 0, 0, 100, 2, ABFLAG_CONF_OK },
{ ABIL_ZIN_SANCTUARY, "Sanctuary", 7, 0, 150, 15, ABFLAG_NONE },
+ { ABIL_ZIN_CURE_ALL_MUTATIONS, "Cure All Mutations", 0, 0, 0, 0, ABFLAG_NONE },
// The Shining One
{ ABIL_TSO_DIVINE_SHIELD, "Divine Shield", 3, 0, 50, 2, ABFLAG_NONE },
@@ -1482,6 +1483,10 @@ static bool _do_ability(const ability_def& abil)
exercise(SK_INVOCATIONS, 5 + random2(8));
break;
+ case ABIL_ZIN_CURE_ALL_MUTATIONS:
+ zin_remove_all_mutations();
+ break;
+
case ABIL_TSO_DIVINE_SHIELD:
cast_divine_shield();
exercise(SK_INVOCATIONS, (coinflip() ? 3 : 2));
@@ -2208,21 +2213,29 @@ std::vector<talent> your_talents(bool check_confused)
}
}
}
+
+ if (you.religion == GOD_ZIN
+ && !you.num_gifts[GOD_ZIN]
+ && you.piety > 160)
+ {
+ _add_talent(talents, ABIL_ZIN_CURE_ALL_MUTATIONS,
+ check_confused);
+ }
}
// And finally, the ability to opt-out of your faith {dlb}:
if (you.religion != GOD_NO_GOD && !silenced( you.pos() ))
_add_talent(talents, ABIL_RENOUNCE_RELIGION, check_confused);
- //jmf: Check for breath weapons -- they're exclusive of each other, I hope!
- // Make better come ones first.
+ //jmf: Check for breath weapons - they're exclusive of each other, I hope!
+ // Make better ones come first.
if (you.attribute[ATTR_TRANSFORMATION] == TRAN_DRAGON
|| player_mutation_level(MUT_BREATHE_FLAMES))
{
_add_talent(talents, ABIL_BREATHE_FIRE, check_confused);
}
- // Checking for unreleased delayed Fireball.
+ // Checking for unreleased Delayed Fireball.
if (you.attribute[ ATTR_DELAYED_FIREBALL ])
_add_talent(talents, ABIL_DELAYED_FIREBALL, check_confused);