]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
bot scripting: if we have no command, don't do anything
authorRudolf Polzer <divVerent@xonotic.org>
Tue, 20 Sep 2011 05:03:31 +0000 (07:03 +0200)
committerRudolf Polzer <divVerent@xonotic.org>
Tue, 20 Sep 2011 05:03:31 +0000 (07:03 +0200)
qcsrc/server/bot/scripting.qc

index d4773e81ea770c3fa65183c4f63ddf86b9c74d59..a35957805e3bb962bff0ad233f1844e98a8ba194 100644 (file)
@@ -1169,6 +1169,13 @@ float bot_execute_commands_once()
        // Find command
        bot_setcurrentcommand();
 
+       // if we have no bot command, better return
+       // old logic kept pressing previously pressed keys, but that has problems
+       // (namely, it means you cannot make a bot "normal" ever again)
+       // to keep a bot walking for a while, use the "wait" bot command
+       if(bot_cmd == world)
+               return FALSE;
+
        // Ignore all commands except continue when the bot is paused
        if(self.bot_exec_status & BOT_EXEC_STATUS_PAUSED)
        if(bot_cmd.bot_cmd_type!=BOT_CMD_CONTINUE)
@@ -1184,9 +1191,6 @@ float bot_execute_commands_once()
        // Keep pressing keys raised by the "presskey" command
        ispressingkey = !!bot_presskeys();
 
-       if(bot_cmd==world)
-               return ispressingkey;
-
        // Handle conditions
        if not(bot_cmd.bot_cmd_type==BOT_CMD_FI||bot_cmd.bot_cmd_type==BOT_CMD_ELSE)
        if(self.bot_cmd_condition_status & CMD_CONDITION_TRUE && self.bot_cmd_condition_status & CMD_CONDITION_FALSE_BLOCK)