diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-03-21 17:49:24 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-03-21 17:49:24 +0000 |
commit | 0a930fa79787f0e7f4b4ab2f4e223b58b58690c7 (patch) | |
tree | 7f8b16f8378873a9564c98a8e8e1104923aed5cd /crawl-ref/source/religion.cc | |
parent | a8a6b89f6b751da432faa31b9be145ec8532294f (diff) | |
download | crawl-ref-0a930fa79787f0e7f4b4ab2f4e223b58b58690c7.tar.gz crawl-ref-0a930fa79787f0e7f4b4ab2f4e223b58b58690c7.zip |
Make Zin dislike when the player takes an action that makes an already
existing mutagenic glow stronger (piety loss, no penalty). At the same
time go easier on the "eat souled being" misbehaviour: increased piety
loss, but give penance only for eating very intelligent monsters, so that
eating goblins and the like is an option again. (Cannibalism is checked
first, and has worse effects.)
Also fix restriction for items offered for ?recharging.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3789 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/religion.cc')
-rw-r--r-- | crawl-ref/source/religion.cc | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc index b3cd603876..7cff471e50 100644 --- a/crawl-ref/source/religion.cc +++ b/crawl-ref/source/religion.cc @@ -1720,10 +1720,23 @@ bool did_god_conduct( conduct_type thing_done, int level, bool known, } break; + case DID_CAUSE_GLOWING: case DID_DELIBERATE_MUTATING: if (you.religion == GOD_ZIN) { - if (!known) + if (thing_done == DID_CAUSE_GLOWING) + { + static long last_glowing_lecture = -1L; + if (last_glowing_lecture != you.num_turns) + { + simple_god_message(" does not appreciate the mutagenic glow " + "surrounding you!"); + last_glowing_lecture = you.num_turns; + } + if (!known) + break; + } + else if (!known) { simple_god_message(" did not appreciate that!"); break; @@ -1733,11 +1746,14 @@ bool did_god_conduct( conduct_type thing_done, int level, bool known, } break; + // level depends on intelligence: normal -> 1, high -> 2 + // cannibalism is still worse case DID_EAT_SOULED_BEING: if (you.religion == GOD_ZIN) { - piety_change = -level; - penance = level * 5; + piety_change = -level * 5; + if (level > 1) + penance = 5; ret = true; } break; @@ -1788,7 +1804,7 @@ bool did_god_conduct( conduct_type thing_done, int level, bool known, static void dock_piety(int piety_loss, int penance) { - static long last_piety_lecture = -1L; + static long last_piety_lecture = -1L; static long last_penance_lecture = -1L; if (piety_loss <= 0 && penance <= 0) |