r2052 - branches/nexuiz-2.0/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sun Dec 17 16:38:27 EST 2006
Author: div0
Date: 2006-12-17 16:38:27 -0500 (Sun, 17 Dec 2006)
New Revision: 2052
Modified:
branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc
branches/nexuiz-2.0/data/qcsrc/server/defs.qh
branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc
Log:
version nagging; strstr fix
Modified: branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc 2006-12-17 21:37:56 UTC (rev 2051)
+++ branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc 2006-12-17 21:38:27 UTC (rev 2052)
@@ -666,6 +666,7 @@
self.classname = "player_joining";
self.flags = self.flags | FL_CLIENT;
+ self.version_nagtime = time + 10 + random() * 10;
if(player_count<0) player_count = 0;
@@ -829,6 +830,9 @@
Spawnqueue_Unmark(self);
Spawnqueue_Remove(self);
}
+
+ // free cvars
+ GetCvars(-1);
}
.float buttonchat;
@@ -1283,6 +1287,20 @@
void() ctf_setstatus;
void PlayerPreThink (void)
{
+ // version nagging
+ if(self.version_nagtime)
+ if(self.cvar_g_nexuizversion)
+ if(time > self.version_nagtime)
+ {
+ if(strstr(self.cvar_g_nexuizversion, "svn", 0) < 0)
+ if(self.cvar_g_nexuizversion != cvar_string("g_nexuizversion"))
+ {
+ dprint("^1NOTE^7 to ", self.netname, "^7 - the server is running ^3Nexuiz ", cvar_string("g_nexuizversion"), "^7, you have ^3Nexuiz ", self.cvar_g_nexuizversion, "\n");
+ sprint(self, strcat("\{1}^1NOTE: ^7the server is running ^3Nexuiz ", cvar_string("g_nexuizversion"), "^7, you have ^3Nexuiz ", self.cvar_g_nexuizversion, "\n"));
+ }
+ self.version_nagtime = 0;
+ }
+
if(self.classname == "player") {
local vector m1, m2;
Modified: branches/nexuiz-2.0/data/qcsrc/server/defs.qh
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/defs.qh 2006-12-17 21:37:56 UTC (rev 2051)
+++ branches/nexuiz-2.0/data/qcsrc/server/defs.qh 2006-12-17 21:38:27 UTC (rev 2052)
@@ -257,7 +257,10 @@
.float cvar_cl_nogibs;
.float cvar_scr_centertime;
.float cvar_cl_shownames;
+.string cvar_g_nexuizversion;
+.float version_nagtime;
+
#ifdef ALLOW_VARIABLE_LOD
.float modelindex_lod0;
.float modelindex_lod1;
Modified: branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc 2006-12-17 21:37:56 UTC (rev 2051)
+++ branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc 2006-12-17 21:38:27 UTC (rev 2052)
@@ -169,7 +169,7 @@
string found;
len = strlen(needle);
endpos = strlen(haystack) - len;
- while(offset < endpos)
+ while(offset <= endpos)
{
found = substring(haystack, offset, len);
if(found == needle)
@@ -378,18 +378,30 @@
*/
void GetCvars_handleString(float f, .string field, string name)
{
- if(f)
+ if(f < 0)
{
+ if(self.field)
+ strunzone(self.field);
+ }
+ else if(f > 0)
+ {
if(argv(f) == name)
- self.field = argv(f + 1);
+ {
+ if(self.field)
+ strunzone(self.field);
+ self.field = strzone(argv(f + 1));
+ }
}
else
stuffcmd(self, strcat("cmd reportcvar ", name, " $", name, "\n"));
}
void GetCvars_handleFloat(float f, .float field, string name)
{
- if(f)
+ if(f < 0)
{
+ }
+ else if(f > 0)
+ {
if(argv(f) == name)
self.field = stof(argv(f + 1));
}
@@ -402,6 +414,7 @@
GetCvars_handleFloat(f, cvar_cl_nogibs, "cl_nogibs");
GetCvars_handleFloat(f, cvar_scr_centertime, "scr_centertime");
GetCvars_handleFloat(f, cvar_cl_shownames, "cl_shownames");
+ GetCvars_handleString(f, cvar_g_nexuizversion, "g_nexuizversion");
}
float fexists(string f)
More information about the nexuiz-commits
mailing list