diff options
Diffstat (limited to 'crawl-ref')
-rw-r--r-- | crawl-ref/source/monstuff.cc | 14 | ||||
-rw-r--r-- | crawl-ref/source/religion.cc | 11 | ||||
-rw-r--r-- | crawl-ref/source/religion.h | 1 |
3 files changed, 23 insertions, 3 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc index 547e985358..adeaeeddf2 100644 --- a/crawl-ref/source/monstuff.cc +++ b/crawl-ref/source/monstuff.cc @@ -810,8 +810,18 @@ static bool _slime_pit_unlock(bool silent) } } - apply_to_all_dungeons(_remove_jiyva_altars); - mpr("With infernal noise, the power ruling this place vanishes!"); + apply_to_all_dungeons(_remove_jiyva_altars); + + if (!silenced(you.pos())) + { + mpr("With infernal noise, the power ruling this place vanishes!", + MSGCH_MONSTER_ENCHANT); + } + else + { + mpr("With an infernal shudder, the power ruling this place vanishes!", + MSGCH_MONSTER_ENCHANT); + } return (true); } diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc index 35aac2c788..be9834122e 100644 --- a/crawl-ref/source/religion.cc +++ b/crawl-ref/source/religion.cc @@ -1358,6 +1358,13 @@ bool is_orcish_follower(const monsters* mon) && mons_is_god_gift(mon, GOD_BEOGH)); } +bool is_fellow_slime(const monsters* mon) +{ + return (mon->alive() && mons_is_slime(mon) + && mon->attitude == ATT_STRICT_NEUTRAL + && mons_is_god_gift(mon, GOD_JIYVA)); +} + bool _has_jelly() { ASSERT(you.religion == GOD_JIYVA); @@ -1391,6 +1398,8 @@ bool is_follower(const monsters* mon) return is_undead_slave(mon); else if (you.religion == GOD_BEOGH) return is_orcish_follower(mon); + else if (you.religion == GOD_JIYVA) + return is_fellow_slime(mon); else if (you.religion == GOD_ZIN) return is_good_lawful_follower(mon); else if (is_good_god(you.religion)) @@ -6342,8 +6351,8 @@ void excommunication(god_type new_god) for (int i = 0; i < 3; ++i) mutate(RANDOM_BAD_MUTATION, true, false, true); - _make_god_gifts_hostile(false); _inc_penance(old_god, 30); + _make_god_gifts_hostile(false); break; default: diff --git a/crawl-ref/source/religion.h b/crawl-ref/source/religion.h index 950ea5fd0a..9ba3379a5f 100644 --- a/crawl-ref/source/religion.h +++ b/crawl-ref/source/religion.h @@ -154,6 +154,7 @@ bool mons_is_god_gift(const monsters *mon, god_type god = you.religion); bool is_undead_slave(const monsters* mon); bool is_yred_undead_slave(const monsters* mon); bool is_orcish_follower(const monsters* mon); +bool is_fellow_slime(const monsters* mon); bool is_good_lawful_follower(const monsters* mon); bool is_good_follower(const monsters* mon); bool is_follower(const monsters* mon); |