From 5b1a28616877a2f8f3b1b2562c02fca645fcc99f Mon Sep 17 00:00:00 2001 From: Matthew Cline Date: Fri, 30 Oct 2009 01:23:33 -0700 Subject: Interrupt less often when repeating wiz commands Interrupt/cancel command repetition less often when repeating a wizard command. --- crawl-ref/source/state.cc | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'crawl-ref/source/state.cc') diff --git a/crawl-ref/source/state.cc b/crawl-ref/source/state.cc index c13c2321e9..2c994cd094 100644 --- a/crawl-ref/source/state.cc +++ b/crawl-ref/source/state.cc @@ -86,6 +86,23 @@ void game_state::cancel_cmd_repeat(std::string reason) if (!is_repeating_cmd()) return; + if (repeat_cmd == CMD_WIZARD) + { + // Don't interrupt wizard testing of religion. + if (is_god_acting()) + return; + + // Don't interrupt wizard testing just because we can't + // move. + if (you.cannot_act()) + return; + + // We've probably just recovered from being unable to act; + // again, don't interrupt. + if (you.turn_is_over) + return; + } + if (is_replaying_keys() || cmd_repeat_start) flush_input_buffer(FLUSH_KEY_REPLAY_CANCEL); -- cgit v1.2.3-54-g00ecf