X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=qcsrc%2Fserver%2Fround_handler.qc;h=063c12abb0aa8f67dd25c600ab70512251194589;hb=f7b69c7bd1d05162b3c532422e3ce3013dc0f5f2;hp=ad0fcaae66278f5a93a47b76f76603874e6deda2;hpb=74cebbb48d9481bb83eccb4438283f319352cb74;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/round_handler.qc b/qcsrc/server/round_handler.qc index ad0fcaae66..063c12abb0 100644 --- a/qcsrc/server/round_handler.qc +++ b/qcsrc/server/round_handler.qc @@ -1,5 +1,6 @@ #include "round_handler.qh" +#include "campaign.qh" #include "command/vote.qh" #include "../common/util.qh" @@ -12,6 +13,9 @@ void round_handler_Think(entity this) } if (gameover) + gameover = false; + + if (intermission_running) { round_handler_Reset(0); round_handler_Remove(); @@ -28,7 +32,7 @@ void round_handler_Think(entity this) if (this.cnt > 0) // countdown running { - if (this.canRoundStart()) + if (this.canRoundStart() && !(autocvar_g_campaign && !campaign_bots_may_start)) { if (this.cnt == this.count + 1) round_starttime = time + this.count; int f = this.cnt - 1; @@ -55,6 +59,7 @@ void round_handler_Think(entity this) // schedule a new round this.wait = true; this.nextthink = time + this.delay; + gameover = true; } else { @@ -111,6 +116,6 @@ void round_handler_Reset(float next_think) void round_handler_Remove() { - remove(round_handler); - round_handler = world; + delete(round_handler); + round_handler = NULL; }