From: Rudolf Polzer Date: Mon, 13 Dec 2010 06:00:50 +0000 (+0100) Subject: Merge branch 'master' of git://git.xonotic.org/xonotic/xonotic-data.pk3dir X-Git-Tag: xonotic-v0.1.0preview~36^2 X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=commitdiff_plain;h=dc431797a5f45a7b71e2e2f418ef5b8162fc77ad;hp=1f7529fa0c7e0f2cc7f9da9558b9b5b5e7583d42 Merge branch 'master' of git://git.xonotic.org/xonotic/xonotic-data.pk3dir --- diff --git a/qcsrc/common/util.qc b/qcsrc/common/util.qc index 83ea8e3e58..1bfbca6ae1 100644 --- a/qcsrc/common/util.qc +++ b/qcsrc/common/util.qc @@ -1837,7 +1837,13 @@ float get_model_parameters(string m, float sk) fn = get_model_datafilename(m, sk, "txt"); fh = fopen(fn, FILE_READ); if(fh < 0) - return 0; + { + sk = 0; + fn = get_model_datafilename(m, sk, "txt"); + fh = fopen(fn, FILE_READ); + if(fh < 0) + return 0; + } get_model_parameters_modelname = m; get_model_parameters_modelskin = sk; diff --git a/qcsrc/server/cl_client.qc b/qcsrc/server/cl_client.qc index 475771fd3a..12c810f16c 100644 --- a/qcsrc/server/cl_client.qc +++ b/qcsrc/server/cl_client.qc @@ -724,15 +724,6 @@ void PutObserverInServer (void) self.frags = FRAGS_SPECTATOR; } -float RestrictSkin(float s) -{ - if(!teams_matter) - return s; - if(s == 6) - return 6; - return mod(s, 3); -} - void FixPlayermodel() { local string defaultmodel; @@ -794,7 +785,7 @@ void FixPlayermodel() } oldskin = self.skinindex; - self.skinindex = RestrictSkin(stof(self.playerskin)); + self.skinindex = stof(self.playerskin); } if(chmdl || oldskin != self.skinindex) diff --git a/qcsrc/server/cl_player.qc b/qcsrc/server/cl_player.qc index 9fa4784fac..342cbbc3d6 100644 --- a/qcsrc/server/cl_player.qc +++ b/qcsrc/server/cl_player.qc @@ -168,7 +168,7 @@ void CopyBody(float keepvelocity) float player_getspecies() { float s; - get_model_parameters(self.playermodel, self.skinindex); + get_model_parameters(self.model, self.skinindex); s = get_model_parameters_species; get_model_parameters(string_null, 0); if(s < 0) @@ -1229,7 +1229,7 @@ void ClearPlayerSounds() #undef _VOICEMSG } -void LoadPlayerSounds(string f, float first) +float LoadPlayerSounds(string f, float first) { float fh; string s; @@ -1238,7 +1238,7 @@ void LoadPlayerSounds(string f, float first) if(fh < 0) { dprint("Player sound file not found: ", f, "\n"); - return; + return 0; } while((s = fgets(fh))) { @@ -1254,6 +1254,7 @@ void LoadPlayerSounds(string f, float first) self.field = strzone(strcat(argv(1), " ", argv(2))); } fclose(fh); + return 1; } .float modelindex_for_playersound; @@ -1267,7 +1268,8 @@ void UpdatePlayerSounds() self.skinindex_for_playersound = self.skinindex; ClearPlayerSounds(); LoadPlayerSounds("sound/player/default.sounds", 1); - LoadPlayerSounds(get_model_datafilename(self.playermodel, self.skinindex, "sounds"), 0); + if(!LoadPlayerSounds(get_model_datafilename(self.model, self.skinindex, "sounds"), 0)) + LoadPlayerSounds(get_model_datafilename(self.model, 0, "sounds"), 0); } void FakeGlobalSound(string sample, float chan, float voicetype)