summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/effects.cc
diff options
context:
space:
mode:
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 );