summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/output.cc
diff options
context:
space:
mode:
authorelliptic <hyperelliptical@gmail.com>2014-03-16 17:28:36 -0400
committerelliptic <hyperelliptical@gmail.com>2014-03-16 17:31:10 -0400
commit9255d236e961a5fbbf6ce725dce874e8a6f99b82 (patch)
tree98a7b5f6f3b5180408861feecc034ef6e4f7f4d0 /crawl-ref/source/output.cc
parentb3cbc500bd8709ee4e6774a342b133021257f73b (diff)
downloadcrawl-ref-9255d236e961a5fbbf6ce725dce874e8a6f99b82.tar.gz
crawl-ref-9255d236e961a5fbbf6ce725dce874e8a6f99b82.zip
Fix hp bar/status light for poison not updating sometimes (wheals).
These indicators depend on regen rate, which can change in a variety of ways. So redraw these indicators every turn if you are poisoned - inelegant, but I don't see a better solution, and it shouldn't be a big deal since the player usually isn't poisoned.
Diffstat (limited to 'crawl-ref/source/output.cc')
-rw-r--r--crawl-ref/source/output.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/crawl-ref/source/output.cc b/crawl-ref/source/output.cc
index 1d23f5e0fb..097619967a 100644
--- a/crawl-ref/source/output.cc
+++ b/crawl-ref/source/output.cc
@@ -1272,6 +1272,13 @@ void print_stats(void)
if (Temp_Bar.wants_redraw() && you.species == SP_LAVA_ORC)
you.redraw_temperature = true;
+ // Poison display depends on regen rate, so should be redrawn every turn.
+ if (you.duration[DUR_POISONING])
+ {
+ you.redraw_hit_points = true;
+ you.redraw_status_flags |= REDRAW_POISONED;
+ }
+
#ifdef USE_TILE_LOCAL
bool has_changed = _need_stats_printed();
#endif