From 7d5de2a192017e78e3d61fc61eab462e34a7fe4a Mon Sep 17 00:00:00 2001 From: div0 Date: Sun, 6 May 2007 00:07:38 +0000 Subject: [PATCH] use a search to precache models/player/*.zym instead of fixed model names; that way, models from extra packages are precached too git-svn-id: svn://svn.icculus.org/nexuiz/trunk@2503 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/g_world.qc | 40 ++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/data/qcsrc/server/g_world.qc b/data/qcsrc/server/g_world.qc index a3d67fb87..e6b38d787 100644 --- a/data/qcsrc/server/g_world.qc +++ b/data/qcsrc/server/g_world.qc @@ -73,6 +73,8 @@ void GotoFirstMap() float world_already_spawned; void worldspawn (void) { + float globhandle, i, n; + if(world_already_spawned) error("world already spawned - you may have EXACTLY ONE worldspawn!"); world_already_spawned = TRUE; @@ -100,21 +102,29 @@ void worldspawn (void) // Precache all player models if desired if (cvar("sv_precacheplayermodels")) { - precache_model("models/player/carni.zym"); - precache_model("models/player/crash.zym"); - precache_model("models/player/grunt.zym"); - precache_model("models/player/headhunter.zym"); - precache_model("models/player/insurrectionist.zym"); - precache_model("models/player/jeandarc.zym"); - precache_model("models/player/lurk.zym"); - precache_model("models/player/lycanthrope.zym"); - precache_model("models/player/marine.zym"); - precache_model("models/player/nexus.zym"); - precache_model("models/player/pyria.zym"); - precache_model("models/player/shock.zym"); - precache_model("models/player/skadi.zym"); - precache_model("models/player/specop.zym"); - precache_model("models/player/visitant.zym"); + globhandle = search_begin("models/player/*.zym", TRUE, FALSE); + n = search_getsize(globhandle); + for(i = 0; i < n; ++i) + { + //print(search_getfilename(globhandle, i), "\n"); + precache_model(search_getfilename(globhandle, i)); + } + search_end(globhandle); + //precache_model("models/player/carni.zym"); + //precache_model("models/player/crash.zym"); + //precache_model("models/player/grunt.zym"); + //precache_model("models/player/headhunter.zym"); + //precache_model("models/player/insurrectionist.zym"); + //precache_model("models/player/jeandarc.zym"); + //precache_model("models/player/lurk.zym"); + //precache_model("models/player/lycanthrope.zym"); + //precache_model("models/player/marine.zym"); + //precache_model("models/player/nexus.zym"); + //precache_model("models/player/pyria.zym"); + //precache_model("models/player/shock.zym"); + //precache_model("models/player/skadi.zym"); + //precache_model("models/player/specop.zym"); + //precache_model("models/player/visitant.zym"); } if (cvar("g_footsteps")) -- 2.39.2