From 4093719bb788661ad801df5f9d4f18278f641a3f Mon Sep 17 00:00:00 2001 From: div0 Date: Tue, 30 Jun 2009 17:33:35 +0000 Subject: [PATCH] some LOD stuff fixes git-svn-id: svn://svn.icculus.org/nexuiz/trunk@7133 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/cl_client.qc | 16 ++++++++-------- data/qcsrc/server/miscfunctions.qc | 4 ++-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/data/qcsrc/server/cl_client.qc b/data/qcsrc/server/cl_client.qc index cc0fd2588..89fb66112 100644 --- a/data/qcsrc/server/cl_client.qc +++ b/data/qcsrc/server/cl_client.qc @@ -369,15 +369,15 @@ string CheckPlayerModel(string plyermodel) { return FallbackPlayerModel; else if(cvar("sv_servermodelsonly")) { - if(substring(plyermodel,strlen(plyermodel)-4,4) != ".zym") - if(substring(plyermodel,strlen(plyermodel)-4,4) != ".dpm") - if(substring(plyermodel,strlen(plyermodel)-4,4) != ".md3") - if(substring(plyermodel,strlen(plyermodel)-4,4) != ".psk") + if(substring(plyermodel,-4,4) != ".zym") + if(substring(plyermodel,-4,4) != ".dpm") + if(substring(plyermodel,-4,4) != ".md3") + if(substring(plyermodel,-4,4) != ".psk") return FallbackPlayerModel; // forbid the LOD models - if(substring(plyermodel, strlen(plyermodel)-6,2) == "_lod1") + if(substring(plyermodel, -9,5) == "_lod1") return FallbackPlayerModel; - if(substring(plyermodel, strlen(plyermodel)-6,2) == "_lod2") + if(substring(plyermodel, -9,5) == "_lod2") return FallbackPlayerModel; if(plyermodel != strtolower(plyermodel)) return FallbackPlayerModel; @@ -464,7 +464,7 @@ void setmodel_lod(entity e, string modelname) string s; // FIXME: this only supports 3-letter extensions - s = strcat(substring(modelname, 0, strlen(modelname) - 4), "_lod1", substring(modelname, 0, strlen(modelname) - 4)); + s = strcat(substring(modelname, 0, -4), "_lod1", substring(modelname, -4, 4)); if(fexists(s)) { precache_model(s); @@ -474,7 +474,7 @@ void setmodel_lod(entity e, string modelname) else self.modelindex_lod1 = -1; - s = strcat(substring(modelname, 0, strlen(modelname) - 4), "_lod2", substring(modelname, 0, strlen(modelname) - 4)); + s = strcat(substring(modelname, 0, -4), "_lod2", substring(modelname, -4, 4)); if(fexists(s)) { precache_model(s); diff --git a/data/qcsrc/server/miscfunctions.qc b/data/qcsrc/server/miscfunctions.qc index 7523fa9a8..148b93c41 100644 --- a/data/qcsrc/server/miscfunctions.qc +++ b/data/qcsrc/server/miscfunctions.qc @@ -1348,9 +1348,9 @@ void precache_all_models(string pattern) #ifdef ALLOW_VARIABLE_LOD precache_model(f); #endif - if(substring(f, strlen(f)-6,2) == "_lod1") + if(substring(f, -9,5) == "_lod1") continue; - if(substring(f, strlen(f)-6,2) == "_lod2") + if(substring(f, -9,5) == "_lod2") continue; #ifndef ALLOW_VARIABLE_LOD precache_model(f); -- 2.39.2