From 636c6c6bb338589905f7724241bf19a479daf82f Mon Sep 17 00:00:00 2001 From: tzork Date: Mon, 11 Jan 2010 17:38:42 +0000 Subject: [PATCH] check for broken md3 models in engine, cry & die if detected when using turrets. git-svn-id: svn://svn.icculus.org/nexuiz/trunk@8495 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- .../server/tturrets/system/system_main.qc | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/data/qcsrc/server/tturrets/system/system_main.qc b/data/qcsrc/server/tturrets/system/system_main.qc index 450a14fcf..367f6d94c 100644 --- a/data/qcsrc/server/tturrets/system/system_main.qc +++ b/data/qcsrc/server/tturrets/system/system_main.qc @@ -910,10 +910,27 @@ float turret_stdproc_init (string cvar_base_name, float csqc_shared, string base { entity e, ee; + // Are turrets allowed atm? + if (cvar("g_turrets") == 0) + return 0; + + e = find(world, classname, "turret_manager"); if not (e) { e = spawn(); + + setorigin(e,'0 0 0'); + setmodel(e,"models/turrets/plasma.md3"); + vector v; + v = gettaginfo(e,gettagindex(e,"tag_head")); + if(v == '0 0 0') + { + objerror("^1ERROR: Engine is borken! Turrets will NOT work. force g_turrets to 0 to run maps with turrets anyway."); + crash(); + } + setmodel(e,""); + e.classname = "turret_manager"; e.think = turrets_manager_think; e.nextthink = time + 2; @@ -925,10 +942,6 @@ float turret_stdproc_init (string cvar_base_name, float csqc_shared, string base csqc_shared = 0; } - // Are turrets allowed atm? - if (cvar("g_turrets") == 0) - return 0; - // Terrainbase spawnflag. This puts a enlongated model // under the turret, so it looks ok on uneaven surfaces. if (self.spawnflags & TSF_TERRAINBASE) -- 2.39.2