Skip to content

Commit

Permalink
Prevent using Nemelex and Ru abilities under silence
Browse files Browse the repository at this point in the history
They were the only god invocations usable under silence, for flavour reasons
rather than gameplay ones, which mostly made them unintuitive exceptions.
  • Loading branch information
Chris Campbell committed Feb 3, 2015
1 parent 5b960bf commit b35d107
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 11 deletions.
1 change: 0 additions & 1 deletion crawl-ref/docs/changelog.txt
Expand Up @@ -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.
Expand Down
13 changes: 3 additions & 10 deletions crawl-ref/source/ability.cc
Expand Up @@ -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)
Expand Down Expand Up @@ -3983,15 +3982,9 @@ vector<ability_type> 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)
{
Expand Down

0 comments on commit b35d107

Please sign in to comment.