From: Rudolf Polzer Date: Sat, 2 Apr 2011 19:33:55 +0000 (+0200) Subject: skip the WarpZone_StoreProjectileData loop if there are no warpzones X-Git-Tag: xonotic-v0.5.0~269^2~24^2 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=27487ee924a36d77232b3037a438932743ad546b;p=xonotic%2Fxonotic-data.pk3dir.git skip the WarpZone_StoreProjectileData loop if there are no warpzones --- diff --git a/qcsrc/warpzonelib/server.qc b/qcsrc/warpzonelib/server.qc index f4141c8a3..e0dfc6675 100644 --- a/qcsrc/warpzonelib/server.qc +++ b/qcsrc/warpzonelib/server.qc @@ -605,37 +605,40 @@ void WarpZone_StartFrame() WarpZones_Reconnect(); } - entity oldself, oldother; - oldself = self; - oldother = other; - for(e = world; (e = nextent(e)); ) + if(warpzone_warpzones_exist) { - WarpZone_StoreProjectileData(e); - float f; - f = clienttype(e); - if(f == CLIENTTYPE_REAL) - { - if(e.solid != SOLID_NOT) // not spectating? - continue; - if(e.movetype != MOVETYPE_NOCLIP && e.movetype != MOVETYPE_FLY) // not spectating? (this is to catch observers) - continue; - self = WarpZone_Find(e.origin + e.mins, e.origin + e.maxs); - if(!self) - continue; - other = e; - if(WarpZoneLib_ExactTrigger_Touch()) - continue; - WarpZone_Teleport(e); // NOT triggering targets by this! - } - if(f == CLIENTTYPE_NOTACLIENT) + entity oldself, oldother; + oldself = self; + oldother = other; + for(e = world; (e = nextent(e)); ) { - for(; (e = nextent(e)); ) - WarpZone_StoreProjectileData(e); - break; + WarpZone_StoreProjectileData(e); + float f; + f = clienttype(e); + if(f == CLIENTTYPE_REAL) + { + if(e.solid != SOLID_NOT) // not spectating? + continue; + if(e.movetype != MOVETYPE_NOCLIP && e.movetype != MOVETYPE_FLY) // not spectating? (this is to catch observers) + continue; + self = WarpZone_Find(e.origin + e.mins, e.origin + e.maxs); + if(!self) + continue; + other = e; + if(WarpZoneLib_ExactTrigger_Touch()) + continue; + WarpZone_Teleport(e); // NOT triggering targets by this! + } + if(f == CLIENTTYPE_NOTACLIENT) + { + for(; (e = nextent(e)); ) + WarpZone_StoreProjectileData(e); + break; + } } + self = oldself; + other = oldother; } - self = oldself; - other = oldother; } .float warpzone_reconnecting;