r4283 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Tue Sep 2 07:19:08 EDT 2008


Author: div0
Date: 2008-09-02 07:19:08 -0400 (Tue, 02 Sep 2008)
New Revision: 4283

Modified:
   trunk/data/qcsrc/server/cl_weapons.qc
   trunk/data/qcsrc/server/cl_weaponsystem.qc
Log:
add a function to fix weapon order lists (to add missing weapons, and remove invalid ones)


Modified: trunk/data/qcsrc/server/cl_weapons.qc
===================================================================
--- trunk/data/qcsrc/server/cl_weapons.qc	2008-09-02 11:12:09 UTC (rev 4282)
+++ trunk/data/qcsrc/server/cl_weapons.qc	2008-09-02 11:19:08 UTC (rev 4283)
@@ -272,6 +272,35 @@
 		sprint(self, "You do not have any of the specified weapons.\n");
 }
 
+string W_FixWeaponOrder(string order, float complete)
+{
+	string neworder;
+	float i, n, w;
+
+	n = tokenize(order);
+	for(i = 0; i < n; ++i)
+	{
+		w = stof(argv(i));
+		if(w >= WEP_FIRST && w <= WEP_LAST && w == floor(w))
+			neworder = strcat(neworder, ftos(w), " ");
+	}
+
+	if(complete)
+	{
+		n = tokenize(neworder);
+		for(w = WEP_FIRST; w <= WEP_LAST; ++w)
+		{
+			for(i = 0; i < n; ++i)
+				if(stof(argv(i)) == w)
+					break;
+			if(i == n) // not found
+				neworder = strcat(neworder, ftos(w), " ");
+		}
+	}
+	
+	return substring(neworder, 0, strlen(neworder) - 1);
+}
+
 // Bringed back weapon frame
 void W_WeaponFrame()
 {

Modified: trunk/data/qcsrc/server/cl_weaponsystem.qc
===================================================================
--- trunk/data/qcsrc/server/cl_weaponsystem.qc	2008-09-02 11:12:09 UTC (rev 4282)
+++ trunk/data/qcsrc/server/cl_weaponsystem.qc	2008-09-02 11:19:08 UTC (rev 4283)
@@ -385,6 +385,7 @@
 };
 
 // FIXME: add qw-style client-custom weaponrating (cl_weaponrating)?
+// by using W_GetCycleWeapon
 float w_getbestweapon(entity e)
 { 
 // add new weapons here




More information about the nexuiz-commits mailing list