summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/effects.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-04-01 19:15:21 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-04-01 19:15:21 +0000
commit99beaf9eb5a1ef9ee360732140f89dae8e44d57c (patch)
tree6610352eeba268f22e438dbfd1ff9677c64ebedd /crawl-ref/source/effects.cc
parent11c08abe629362a45f0276212dfcd5ca2069b9b8 (diff)
downloadcrawl-ref-99beaf9eb5a1ef9ee360732140f89dae8e44d57c.tar.gz
crawl-ref-99beaf9eb5a1ef9ee360732140f89dae8e44d57c.zip
Fixed monsters not regenerating at the right rate when catching up time spent off-level. Slightly dropped the generation of bucklers in the Elven Halls.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4031 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/effects.cc')
-rw-r--r--crawl-ref/source/effects.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc
index 5921bece0f..37a202e573 100644
--- a/crawl-ref/source/effects.cc
+++ b/crawl-ref/source/effects.cc
@@ -2847,8 +2847,13 @@ void update_level( double elapsedTime )
heal_monster( mon, turns, false );
}
else
- {
- heal_monster( mon, (turns / 10), false );
+ {
+ // Set a lower ceiling of 0.1 on the regen rate.
+ const int regen_rate =
+ std::max(mons_natural_regen_rate(mon) * 2, 5);
+
+ heal_monster( mon, div_rand_round(turns * regen_rate, 50),
+ false );
}
catchup_monster_moves( mon, turns );