r3463 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Sat Mar 1 07:49:28 EST 2008


Author: lordhavoc
Date: 2008-03-01 07:49:27 -0500 (Sat, 01 Mar 2008)
New Revision: 3463

Modified:
   trunk/data/qcsrc/server/havocbot_roles.qc
   trunk/data/qcsrc/server/keyhunt.qc
Log:
fix bug with keyhunt key list using .enemy field, now uses
.kh_nextworldkey (and renamed kh_keylist to kh_worldkeylist)


Modified: trunk/data/qcsrc/server/havocbot_roles.qc
===================================================================
--- trunk/data/qcsrc/server/havocbot_roles.qc	2008-03-01 10:39:41 UTC (rev 3462)
+++ trunk/data/qcsrc/server/havocbot_roles.qc	2008-03-01 12:49:27 UTC (rev 3463)
@@ -546,11 +546,12 @@
 
 
 
-entity kh_keylist;
+entity kh_worldkeylist;
+.entity kh_worldkeynext;
 void(float ratingscale_team, float ratingscale_dropped, float ratingscale_enemy) havocbot_goalrating_kh =
 {
 	local entity head;
-	for (head = kh_keylist; head; head = head.enemy)
+	for (head = kh_worldkeylist; head; head = head.kh_worldkeynext)
 	{
 		if(head.owner == self)
 			continue;

Modified: trunk/data/qcsrc/server/keyhunt.qc
===================================================================
--- trunk/data/qcsrc/server/keyhunt.qc	2008-03-01 10:39:41 UTC (rev 3462)
+++ trunk/data/qcsrc/server/keyhunt.qc	2008-03-01 12:49:27 UTC (rev 3463)
@@ -1,4 +1,4 @@
-#define FOR_EACH_KH_KEY(v) for(v = kh_keylist; v; v = v.enemy )
+#define FOR_EACH_KH_KEY(v) for(v = kh_worldkeylist; v; v = v.enemy )
 
 // #define KH_PLAYER_USE_ATTACHMENT
 // #define KH_PLAYER_USE_CARRIEDMODEL
@@ -32,7 +32,8 @@
 	return 0;
 }
 
-entity kh_keylist;
+entity kh_worldkeylist;
+.entity kh_worldkeynext;
 entity kh_controller;
 float kh_tracking_enabled;
 float kh_teams;
@@ -322,8 +323,8 @@
 	}
 
 	// link into key list
-	key.enemy = kh_keylist;
-	kh_keylist = key;
+	key.kh_worldkeynext = kh_worldkeylist;
+	kh_worldkeylist = key;
 
 	sprint(initial_owner, strcat("You got the ^2", key.netname, "\n"));
 
@@ -344,19 +345,19 @@
 		WaypointSprite_DetachCarrier(key);
 
 	// remove key from key list
-	if (kh_keylist == key)
-		kh_keylist = kh_keylist.enemy;
+	if (kh_worldkeylist == key)
+		kh_worldkeylist = kh_worldkeylist.kh_worldkeynext;
 	else
 	{
-		o = kh_keylist;
+		o = kh_worldkeylist;
 		while (o)
 		{
-			if (o.enemy == key)
+			if (o.kh_worldkeynext == key)
 			{
-				o.enemy = o.enemy.enemy;
+				o.kh_worldkeynext = o.kh_worldkeynext.kh_worldkeynext;
 				break;
 			}
-			o = o.enemy;
+			o = o.kh_worldkeynext;
 		}
 	}
 




More information about the nexuiz-commits mailing list