diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-05-11 15:27:04 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-05-11 15:27:04 +0000 |
commit | 659b254668cc249cd8d58d131247caf10690f480 (patch) | |
tree | b9c1626e3f36eedc34f30bb9503c8e30af42a370 /crawl-ref/source/direct.cc | |
parent | aa28a335cc05c3734ab9b69cc6498cb2d01ca2b4 (diff) | |
download | crawl-ref-659b254668cc249cd8d58d131247caf10690f480.tar.gz crawl-ref-659b254668cc249cd8d58d131247caf10690f480.zip |
Change targeting prompt if target_unshifted_dirs is set.
Show targeting prompt when exiting targeting help.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1459 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/direct.cc')
-rw-r--r-- | crawl-ref/source/direct.cc | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/crawl-ref/source/direct.cc b/crawl-ref/source/direct.cc index a532953eda..81a71d3c44 100644 --- a/crawl-ref/source/direct.cc +++ b/crawl-ref/source/direct.cc @@ -261,7 +261,8 @@ static const char *target_mode_help_text(int mode) switch (mode) { case DIR_NONE: - return "? - help, Shift-Dir - shoot in a straight line"; + return Options.target_unshifted_dirs? "? - help" : + "? - help, Shift-Dir - shoot in a straight line"; case DIR_TARGET: return "? - help, Dir - move target cursor"; default: @@ -335,14 +336,18 @@ void direction(struct dist& moves, targeting_type restricts, } } - // Prompts might get scrolled off if you have too few lines available. - // We'll live with that. - if ( !just_looking ) - mprf(MSGCH_PROMPT, "%s (%s)", prompt? prompt : "Aim", - target_mode_help_text(restricts)); - + bool show_prompt = true; while (1) { + // Prompts might get scrolled off if you have too few lines available. + // We'll live with that. + if ( !just_looking && show_prompt ) + { + mprf(MSGCH_PROMPT, "%s (%s)", prompt? prompt : "Aim", + target_mode_help_text(restricts)); + show_prompt = false; + } + // Reinit...this needs to be done every loop iteration // because moves is more persistent than loop_done. moves.isValid = false; @@ -624,6 +629,7 @@ void direction(struct dist& moves, targeting_type restricts, force_redraw = true; redraw_screen(); mesclr(true); + show_prompt = true; break; default: |