summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2009-10-06 00:10:15 +0200
committerAdam Borowski <kilobyte@angband.pl>2009-10-06 00:10:15 +0200
commit5eb01527a7ee911e6a7f2022e9bdfdc236095b99 (patch)
tree47c2376f82368ac12490ea2375cf74bd0cc0a23c /crawl-ref
parent168f0f9cde658b36b75f0aec6df73c545b9b0231 (diff)
downloadcrawl-ref-5eb01527a7ee911e6a7f2022e9bdfdc236095b99.tar.gz
crawl-ref-5eb01527a7ee911e6a7f2022e9bdfdc236095b99.zip
Give a message and a milestone when Nemelex' active wrath stops [BR 2844717]
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/describe.cc5
-rw-r--r--crawl-ref/source/religion.cc11
2 files changed, 15 insertions, 1 deletions
diff --git a/crawl-ref/source/describe.cc b/crawl-ref/source/describe.cc
index 2189bd4071..e27f3a3850 100644
--- a/crawl-ref/source/describe.cc
+++ b/crawl-ref/source/describe.cc
@@ -3511,7 +3511,10 @@ void describe_god( god_type which_god, bool give_title )
which_god_penance = 2; // == "Come back to the one true church!"
}
- cprintf( (which_god_penance >= 50) ? "%s's wrath is upon you!" :
+ cprintf( (which_god == GOD_NEMELEX_XOBEH
+ && which_god_penance > 0 && which_god_penance <= 100)
+ ? "%s doesn't play fair with you." :
+ (which_god_penance >= 50) ? "%s's wrath is upon you!" :
(which_god_penance >= 20) ? "%s is annoyed with you." :
(which_god_penance >= 5) ? "%s well remembers your sins." :
(which_god_penance > 0) ? "%s is ready to forgive your sins." :
diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc
index 2cefe96727..bd1d3447aa 100644
--- a/crawl-ref/source/religion.cc
+++ b/crawl-ref/source/religion.cc
@@ -920,6 +920,17 @@ void dec_penance(god_type god, int val)
if (is_good_god(you.religion))
_holy_beings_attitude_change();
}
+ else if (god == GOD_NEMELEX_XOBEH && you.penance[god] > 100)
+ { // Nemelex' penance works actively only until 100
+ if ((you.penance[god] -= val) > 100)
+ return;
+#ifdef DGL_MILESTONES
+ mark_milestone("god.mollify",
+ "partially mollified " + god_name(god) + ".");
+#endif
+ simple_god_message(" seems mollified... mostly.", god);
+ take_note(Note(NOTE_MOLLIFY_GOD, god));
+ }
else
you.penance[god] -= val;
}