summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/ouch.cc
diff options
context:
space:
mode:
authorDracoOmega <draco_omega@live.com>2014-03-05 15:01:59 -0330
committerSteve Melenchuk <smelenchuk@gmail.com>2014-03-06 09:58:17 -0700
commitd5b2a9e8335341d5345aed761de5e0e93e5d5341 (patch)
treee1a667d2789d74b1869cac2305b5e6ed8f5af3b2 /crawl-ref/source/ouch.cc
parent8651cb8188b23b451de89a85550bb7ac8d34770c (diff)
downloadcrawl-ref-d5b2a9e8335341d5345aed761de5e0e93e5d5341.tar.gz
crawl-ref-d5b2a9e8335341d5345aed761de5e0e93e5d5341.zip
Mute low hp warnings from poison damage if not lethally poisoned
Otherwise it becomes impossible to easily rest off known-safe poison once you fall below your warning threshold (which is a very plausible scenario following a battle). Given that there are already messages being printed for it, the health bar is colored, and it is known that it cannot kill you (plus any damage that CAN will trigger a warning as normal), I think this is accetable behavior. Possibly some will disagree; I invite them to suggest a better alternative that still allows 5 to rest off known-safe poison without hitting it over and over again.
Diffstat (limited to 'crawl-ref/source/ouch.cc')
-rw-r--r--crawl-ref/source/ouch.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/crawl-ref/source/ouch.cc b/crawl-ref/source/ouch.cc
index cd4e44add9..042fb3d102 100644
--- a/crawl-ref/source/ouch.cc
+++ b/crawl-ref/source/ouch.cc
@@ -1134,7 +1134,8 @@ void ouch(int dam, int death_source, kill_method_type death_type,
if (you.hp > 0 && dam > 0)
{
if (Options.hp_warning
- && you.hp <= (you.hp_max * Options.hp_warning) / 100)
+ && you.hp <= (you.hp_max * Options.hp_warning) / 100
+ && (death_type != KILLED_BY_POISON || get_player_poisoning() > you.hp))
{
mprf(MSGCH_DANGER, "* * * LOW HITPOINT WARNING * * *");
dungeon_events.fire_event(DET_HP_WARNING);