summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/view.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-02-27 21:05:46 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-02-27 21:05:46 +0000
commitffd7b999da940618860de7ce6e786175bc9af184 (patch)
treec63ae48a90b609dfa7391acd60b39fb338544fc4 /crawl-ref/source/view.cc
parent6c3c530aa8b2d0d48c90e67d7dcac3681b405131 (diff)
downloadcrawl-ref-ffd7b999da940618860de7ce6e786175bc9af184.tar.gz
crawl-ref-ffd7b999da940618860de7ce6e786175bc9af184.zip
Implement a very basic attempt at message condensation: Store the most
recent message in prev_message and only output it when another non-matching message rolls in or the player gets a turn. Matching messages (must be identical and issued in direct succession, like is the case with the message history condensation) increase the counter, so you end up with messages like: You feel sick. The killer bee misses you. (x3) The killer bee stings you. The killer bee stings you but doesn't do any damage. The killer bee misses you. (x5) ...instead of the 11 lines it would have been in total. This behaviour is controlled by the same option as the condensation in the message history, msg_condense_repeats. There's definitely room for improvement. At the moment the bracketed information is written into the message itself, which will prevent further merging in the message history, or, probably worse, cause ugly double-merging like "The killer bee misses you. (x3) (x2)". git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9262 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/view.cc')
-rw-r--r--crawl-ref/source/view.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/crawl-ref/source/view.cc b/crawl-ref/source/view.cc
index adf8159188..37886423ce 100644
--- a/crawl-ref/source/view.cc
+++ b/crawl-ref/source/view.cc
@@ -5085,6 +5085,8 @@ static void _debug_pane_bounds()
//---------------------------------------------------------------
void viewwindow(bool draw_it, bool do_updates)
{
+ flush_prev_message();
+
#ifdef USE_TILE
std::vector<unsigned int> tileb(
crawl_view.viewsz.y * crawl_view.viewsz.x * 2);