From b35d107f522fa858e986c5f1c69d01d84b8c6bd1 Mon Sep 17 00:00:00 2001 From: Chris Campbell Date: Tue, 3 Feb 2015 18:25:32 +0000 Subject: [PATCH] Prevent using Nemelex and Ru abilities under silence They were the only god invocations usable under silence, for flavour reasons rather than gameplay ones, which mostly made them unintuitive exceptions. --- crawl-ref/docs/changelog.txt | 1 - crawl-ref/source/ability.cc | 13 +++---------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/crawl-ref/docs/changelog.txt b/crawl-ref/docs/changelog.txt index 724638c1227..d9b1e5fb21b 100644 --- a/crawl-ref/docs/changelog.txt +++ b/crawl-ref/docs/changelog.txt @@ -280,7 +280,6 @@ Gods destination. Inflicts medium exhaustion. - 5*: Apocalypse: Deals very high damage to all monsters in LOS and inflicts statuses. Inflicts heavy drain and exhaustion. - - Ru's abilities can be used while silenced. * All gods now treat followers' kills the same as the player's, for purposes of piety gain. * Makhleb and Okawaru no longer support corpse sacrifice. diff --git a/crawl-ref/source/ability.cc b/crawl-ref/source/ability.cc index 1c4bbc4049e..4d27a72bcce 100644 --- a/crawl-ref/source/ability.cc +++ b/crawl-ref/source/ability.cc @@ -1515,8 +1515,7 @@ static bool _check_ability_possible(const ability_def& abil, return false; } - if (silenced(you.pos()) && !you_worship(GOD_NEMELEX_XOBEH) - && !you_worship(GOD_RU)) + if (silenced(you.pos())) { talent tal = get_talent(abil.ability, false); if (tal.is_invocation) @@ -3983,15 +3982,9 @@ vector get_god_abilities(bool include_unusable, bool ignore_piety) else if (you.transfer_skill_points > 0) abilities.push_back(ABIL_ASHENZARI_END_TRANSFER); - // Remaining abilities are unusable if under penance, or if silenced if not - // Nemelex abilities. - if (!include_unusable && (player_under_penance() - || silenced(you.pos()) - && !you_worship(GOD_NEMELEX_XOBEH) - && !you_worship(GOD_RU))) - { + // Remaining abilities are unusable if under penance, or if silenced. + if (!include_unusable && (player_under_penance() || silenced(you.pos()))) return abilities; - } for (int i = 0; i < MAX_GOD_ABILITIES; ++i) {