X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fbot%2Fbot.qc;h=45107b833a1b16221b8082da7c55c143d7b9244b;hb=0f6085c8ea46125d87ca81ec7f5e82f73c08f958;hp=1658d7fac4f3c6de0c1313c7780258492b273914;hpb=c7809f1cf117eb207add4956bac3b3d9233101b3;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/bot/bot.qc b/qcsrc/server/bot/bot.qc index 1658d7fac..45107b833 100644 --- a/qcsrc/server/bot/bot.qc +++ b/qcsrc/server/bot/bot.qc @@ -45,7 +45,7 @@ void bot_think() if (autocvar_g_campaign && !campaign_bots_may_start) { - self.nextthink = time + 0.5; + self.bot_nextthink = time + 0.5; return; } @@ -85,7 +85,7 @@ void bot_think() { // block the bot during the countdown to game start self.movement = '0 0 0'; - self.nextthink = game_starttime; + self.bot_nextthink = game_starttime; return; } @@ -128,20 +128,22 @@ void bot_setnameandstuff() file = fopen(autocvar_bot_config_file, FILE_READ); if(file < 0) + { print(strcat("Error: Can not open the bot configuration file '",autocvar_bot_config_file,"'\n")); + readfile = ""; + } else { RandomSelection_Init(); - for(;;) + while((readfile = fgets(file))) { - readfile = fgets(file); - if(!readfile) - break; if(substring(readfile, 0, 2) == "//") continue; if(substring(readfile, 0, 1) == "#") continue; tokens = tokenizebyseparator(readfile, "\t"); + if(tokens == 0) + continue; s = argv(0); prio = 1; FOR_EACH_CLIENT(p) @@ -363,6 +365,7 @@ void bot_clientdisconnect() { if (clienttype(self) != CLIENTTYPE_BOT) return; + bot_clearqueue(self); if(self.cleanname) strunzone(self.cleanname); if(self.netname_freeme) @@ -389,7 +392,7 @@ void bot_clientconnect() self.bot_nextthink = time - random(); self.lag_func = bot_lagfunc; self.isbot = TRUE; - self.createdtime = self.nextthink; + self.createdtime = self.bot_nextthink; if(!self.bot_config_loaded) // This is needed so team overrider doesn't break between matches bot_setnameandstuff(); @@ -633,7 +636,7 @@ void bot_serverframe() localcmd("quit\n"); } - if (currentbots > 0 || autocvar_g_waypointeditor) + if (currentbots > 0 || autocvar_g_waypointeditor || autocvar_g_waypointeditor_auto) if (botframe_spawnedwaypoints) { if(botframe_cachedwaypointlinks) @@ -685,6 +688,9 @@ void bot_serverframe() if (autocvar_g_waypointeditor) botframe_showwaypointlinks(); + if (autocvar_g_waypointeditor_auto) + botframe_autowaypoints(); + if(time > bot_cvar_nextthink) { if(currentbots>0)