r3146 - in trunk/data: . qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Mon Jan 14 16:30:29 EST 2008
Author: div0
Date: 2008-01-14 16:30:28 -0500 (Mon, 14 Jan 2008)
New Revision: 3146
Modified:
trunk/data/default.cfg
trunk/data/qcsrc/server/cl_client.qc
trunk/data/qcsrc/server/miscfunctions.qc
trunk/data/qcsrc/server/teamplay.qc
Log:
sv_defaultplayermodel_red etc. cvars, override sv_defaultplayermodel in teamplay
Modified: trunk/data/default.cfg
===================================================================
--- trunk/data/default.cfg 2008-01-14 19:13:29 UTC (rev 3145)
+++ trunk/data/default.cfg 2008-01-14 21:30:28 UTC (rev 3146)
@@ -123,6 +123,14 @@
seta sv_defaultcharacter 0
seta sv_defaultplayermodel models/player/nexus.zym
seta sv_defaultplayerskin 0
+seta sv_defaultplayermodel_red "" // "" means see sv_defaultplayermodel
+seta sv_defaultplayerskin_red 0
+seta sv_defaultplayermodel_blue ""
+seta sv_defaultplayerskin_blue 0
+seta sv_defaultplayermodel_yellow ""
+seta sv_defaultplayerskin_yellow 0
+seta sv_defaultplayermodel_pink ""
+seta sv_defaultplayerskin_pink 0
seta sv_defaultplayercolors "" // set to 16*shirt+pants to force a color, note: it does NOT depend on defaultcharacter! Set to "" to disable
set sv_autoscreenshot 0
net_messagetimeout 300
Modified: trunk/data/qcsrc/server/cl_client.qc
===================================================================
--- trunk/data/qcsrc/server/cl_client.qc 2008-01-14 19:13:29 UTC (rev 3145)
+++ trunk/data/qcsrc/server/cl_client.qc 2008-01-14 21:30:28 UTC (rev 3146)
@@ -407,6 +407,56 @@
return math_mod(s, 3);
}
+void FixPlayermodel()
+{
+ local string defaultmodel;
+ local float defaultskin;
+ local vector m1, m2;
+
+ if(cvar("sv_defaultcharacter") == 1) {
+ defaultmodel = "";
+ defaultskin = 0;
+
+ if(teams_matter)
+ {
+ defaultmodel = cvar_string(strcat("sv_defaultplayermodel_", Team_ColorNameLowerCase(self.team)));
+ defaultskin = cvar(strcat("sv_defaultplayerskin_", Team_ColorNameLowerCase(self.team)));
+ }
+
+ if(defaultmodel == "")
+ {
+ defaultmodel = cvar_string("sv_defaultplayermodel");
+ defaultskin = cvar("sv_defaultplayerskin");
+ }
+
+ if (defaultmodel != self.model)
+ {
+ m1 = self.mins;
+ m2 = self.maxs;
+ setmodel_lod (self, defaultmodel);
+ setsize (self, m1, m2);
+ }
+
+ self.skin = defaultskin;
+ } else {
+ if (self.playermodel != self.model)
+ {
+ self.playermodel = CheckPlayerModel(self.playermodel);
+ m1 = self.mins;
+ m2 = self.maxs;
+ setmodel_lod (self, self.playermodel);
+ setsize (self, m1, m2);
+ }
+
+ self.skin = RestrictSkin(stof(self.playerskin));
+ }
+
+ if(!teams_matter)
+ if(strlen(cvar_string("sv_defaultplayercolors")))
+ if(self.clientcolors != cvar("sv_defaultplayercolors"))
+ setcolor(self, cvar("sv_defaultplayercolors"));
+}
+
/*
=============
PutClientInServer
@@ -507,19 +557,8 @@
self.customizeentityforclient = Client_customizeentityforclient;
- if(cvar("sv_defaultcharacter") == 1) {
- local string defaultmodel;
- defaultmodel = cvar_string("sv_defaultplayermodel");
- setmodel_lod (self, defaultmodel);
- self.skin = stof(cvar_string("sv_defaultplayerskin"));
- } else {
- self.playermodel = CheckPlayerModel(self.playermodel);
- setmodel_lod (self, self.playermodel);
- self.skin = RestrictSkin(stof(self.playerskin));
- }
- if(!teams_matter)
- if(strlen(cvar_string("sv_defaultplayercolors")))
- setcolor(self, cvar("sv_defaultplayercolors"));
+ self.model = "";
+ FixPlayermodel();
self.crouch = FALSE;
self.view_ofs = PL_VIEW_OFS;
@@ -1272,8 +1311,6 @@
.float vote_nagtime;
void PlayerPreThink (void)
{
- float f;
-
// version nagging
if(self.version_nagtime)
if(self.cvar_g_nexuizversion)
@@ -1304,8 +1341,6 @@
}
if(self.classname == "player") {
- local vector m1, m2;
-
// if(self.netname == "Wazat")
// bprint(self.classname, "\n");
@@ -1424,39 +1459,8 @@
}
}
- if(cvar("sv_defaultcharacter") == 1) {
- local string defaultmodel;
- defaultmodel = cvar_string("sv_defaultplayermodel");
+ FixPlayermodel();
- if (defaultmodel != self.model)
- {
- m1 = self.mins;
- m2 = self.maxs;
- setmodel_lod (self, defaultmodel);
- setsize (self, m1, m2);
- }
-
- if (self.skin != cvar("sv_defaultplayerskin"))
- self.skin = cvar("sv_defaultplayerskin");
- } else {
- if (self.playermodel != self.model)
- {
- self.playermodel = CheckPlayerModel(self.playermodel);
- m1 = self.mins;
- m2 = self.maxs;
- setmodel_lod (self, self.playermodel);
- setsize (self, m1, m2);
- }
-
- f = RestrictSkin(stof(self.playerskin));
- if(self.skin != f)
- self.skin = f;
- }
- if(!teams_matter)
- if(strlen(cvar_string("sv_defaultplayercolors")))
- if(self.clientcolors != cvar("sv_defaultplayercolors"))
- setcolor(self, cvar("sv_defaultplayercolors"));
-
GrapplingHookFrame();
W_WeaponFrame();
Modified: trunk/data/qcsrc/server/miscfunctions.qc
===================================================================
--- trunk/data/qcsrc/server/miscfunctions.qc 2008-01-14 19:13:29 UTC (rev 3145)
+++ trunk/data/qcsrc/server/miscfunctions.qc 2008-01-14 21:30:28 UTC (rev 3146)
@@ -533,6 +533,32 @@
else
return "^7";
}
+string Team_ColorName(float t)
+{
+ // fixme: Search for team entities and get their .netname's!
+ if(t == COLOR_TEAM1)
+ return "Red";
+ if(t == COLOR_TEAM2)
+ return "Blue";
+ if(t == COLOR_TEAM3)
+ return "Yellow";
+ if(t == COLOR_TEAM4)
+ return "Pink";
+ return "Neutral";
+}
+string Team_ColorNameLowerCase(float t)
+{
+ // fixme: Search for team entities and get their .netname's!
+ if(t == COLOR_TEAM1)
+ return "red";
+ if(t == COLOR_TEAM2)
+ return "blue";
+ if(t == COLOR_TEAM3)
+ return "yellow";
+ if(t == COLOR_TEAM4)
+ return "pink";
+ return "neutral";
+}
/*
string decolorize(string s)
Modified: trunk/data/qcsrc/server/teamplay.qc
===================================================================
--- trunk/data/qcsrc/server/teamplay.qc 2008-01-14 19:13:29 UTC (rev 3145)
+++ trunk/data/qcsrc/server/teamplay.qc 2008-01-14 21:30:28 UTC (rev 3146)
@@ -39,29 +39,11 @@
string TeamName(float t)
{
- // fixme: Search for team entities and get their .netname's!
- if(t == COLOR_TEAM1)
- return "Red Team";
- if(t == COLOR_TEAM2)
- return "Blue Team";
- if(t == COLOR_TEAM3)
- return "Yellow Team";
- if(t == COLOR_TEAM4)
- return "Pink Team";
- return "Neutral Team";
+ return strcat(Team_ColorName(t), " Team");
}
string ColoredTeamName(float t)
{
- // fixme: Search for team entities and get their .netname's!
- if(t == COLOR_TEAM1)
- return "^1Red Team^7";
- if(t == COLOR_TEAM2)
- return "^4Blue Team^7";
- if(t == COLOR_TEAM3)
- return "^3Yellow Team^7";
- if(t == COLOR_TEAM4)
- return "^6Pink Team^7";
- return "Neutral Team";
+ return strcat(Team_ColorCode(t), Team_ColorName(t), " Team^7");
}
string TeamNoName(float t)
{
More information about the nexuiz-commits
mailing list