[nexuiz-commits] r7959 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Sun Sep 27 13:49:17 EDT 2009


Author: div0
Date: 2009-09-27 13:49:17 -0400 (Sun, 27 Sep 2009)
New Revision: 7959

Modified:
   trunk/data/qcsrc/server/cl_client.qc
   trunk/data/qcsrc/server/cl_player.qc
   trunk/data/qcsrc/server/defs.qh
   trunk/data/qcsrc/server/w_campingrifle.qc
   trunk/data/qcsrc/server/w_electro.qc
   trunk/data/qcsrc/server/w_fireball.qc
   trunk/data/qcsrc/server/w_hook.qc
   trunk/data/qcsrc/server/w_minstanex.qc
   trunk/data/qcsrc/server/w_porto.qc
   trunk/data/qcsrc/server/w_rocketlauncher.qc
Log:
a reset facility for weapon properties... should help keep code clean


Modified: trunk/data/qcsrc/server/cl_client.qc
===================================================================
--- trunk/data/qcsrc/server/cl_client.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/cl_client.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -792,6 +792,7 @@
 
 	if(self.classname == "player") {
 		entity spot, oldself;
+		float j;
 
 		if(self.team < 0)
 			JoinBestTeam(self, FALSE, TRUE);
@@ -806,7 +807,6 @@
 		}
 
 		RemoveGrapplingHook(self); // Wazat's Grappling Hook
-		self.campingrifle_bulletcounter = cvar("g_balance_campingrifle_magazinecapacity");
 
 		self.classname = "player";
 		self.wasplayer = TRUE;
@@ -981,13 +981,16 @@
 
 		target_voicescript_clear(self);
 
+		// reset fields the weapons may use
+        for (j = WEP_FIRST; j <= WEP_LAST; ++j)
+            weapon_action(j, WR_RESETPLAYER);
+
 		oldself = self;
 		self = spot;
 			activator = oldself;
 				SUB_UseTargets();
 			activator = world;
 		self = oldself;
-
 	} else if(self.classname == "observer") {
 		PutObserverInServer ();
 	}

Modified: trunk/data/qcsrc/server/cl_player.qc
===================================================================
--- trunk/data/qcsrc/server/cl_player.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/cl_player.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -430,7 +430,7 @@
 
 void PlayerDamage (entity inflictor, entity attacker, float damage, float deathtype, vector hitloc, vector force)
 {
-	local float take, save, waves, sdelay, dh, da;
+	local float take, save, waves, sdelay, dh, da, j;
 	vector v;
 	float valid_damage_for_weaponstats;
 
@@ -735,6 +735,10 @@
 			// remove corpse
 			PlayerCorpseDamage (inflictor, attacker, 100.0, deathtype, hitloc, force);
 		}
+
+		// reset fields the weapons may use just in case
+        for (j = WEP_FIRST; j <= WEP_LAST; ++j)
+            weapon_action(j, WR_RESETPLAYER);
 	}
 }
 

Modified: trunk/data/qcsrc/server/defs.qh
===================================================================
--- trunk/data/qcsrc/server/defs.qh	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/defs.qh	2009-09-27 17:49:17 UTC (rev 7959)
@@ -234,6 +234,7 @@
 float WR_SUICIDEMESSAGE = 7; // sets w_deathtypestring or leaves it alone (and may inspect w_deathtype for details)
 float WR_KILLMESSAGE    = 8; // sets w_deathtypestring or leaves it alone
 float WR_RELOAD         = 9; // does not need to do anything
+float WR_RESETPLAYER    = 10; // does not need to do anything
 
 void weapon_defaultspawnfunc(float wpn);
 

Modified: trunk/data/qcsrc/server/w_campingrifle.qc
===================================================================
--- trunk/data/qcsrc/server/w_campingrifle.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_campingrifle.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -226,5 +226,11 @@
 	{
 		W_CampingRifle_Reload();
 	}
+	else if (req == WR_RESETPLAYER)
+	{
+		self.campingrifle_accumulator = time - cvar("g_balance_campingrifle_bursttime");
+		self.campingrifle_bulletcounter = cvar("g_balance_campingrifle_magazinecapacity");
+		W_CampingRifle_CheckMaxBullets();
+	}
 	return TRUE;
 };

Modified: trunk/data/qcsrc/server/w_electro.qc
===================================================================
--- trunk/data/qcsrc/server/w_electro.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_electro.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -294,5 +294,9 @@
 				w_deathtypestring = "was blasted by #'s blue beam";
 		}
 	}
+	else if (req == WR_RESETPLAYER)
+	{
+		self.electro_secondarytime = time;
+	}
 	return TRUE;
 };

Modified: trunk/data/qcsrc/server/w_fireball.qc
===================================================================
--- trunk/data/qcsrc/server/w_fireball.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_fireball.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -382,5 +382,9 @@
 				w_deathtypestring = "fatefully ignored #'s firemine";
 		}
 	}
+	else if (req == WR_RESETPLAYER)
+	{
+		self.fireball_secondarytime = time;
+	}
 	return TRUE;
 };

Modified: trunk/data/qcsrc/server/w_hook.qc
===================================================================
--- trunk/data/qcsrc/server/w_hook.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_hook.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -239,5 +239,9 @@
 		w_deathtypestring = "did the impossible";
 	else if (req == WR_KILLMESSAGE)
 		w_deathtypestring = "has run into #'s gravity bomb";
+	else if (req == WR_RESETPLAYER)
+	{
+		self.hook_refire = time;
+	}
 	return TRUE;
 };

Modified: trunk/data/qcsrc/server/w_minstanex.qc
===================================================================
--- trunk/data/qcsrc/server/w_minstanex.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_minstanex.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -224,5 +224,9 @@
 		w_deathtypestring = "did the impossible";
 	else if (req == WR_KILLMESSAGE)
 		w_deathtypestring = "has been vaporized by";
+	else if (req == WR_RESETPLAYER)
+	{
+		self.minstanex_lasthit = 0;
+	}
 	return TRUE;
 };

Modified: trunk/data/qcsrc/server/w_porto.qc
===================================================================
--- trunk/data/qcsrc/server/w_porto.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_porto.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -269,5 +269,9 @@
 		w_deathtypestring = "did the impossible";
 	else if (req == WR_KILLMESSAGE)
 		w_deathtypestring = "felt # doing the impossible to him";
+	else if (req == WR_RESETPLAYER)
+	{
+		self.porto_current = world;
+	}
 	return TRUE;
 };

Modified: trunk/data/qcsrc/server/w_rocketlauncher.qc
===================================================================
--- trunk/data/qcsrc/server/w_rocketlauncher.qc	2009-09-27 17:35:57 UTC (rev 7958)
+++ trunk/data/qcsrc/server/w_rocketlauncher.qc	2009-09-27 17:49:17 UTC (rev 7959)
@@ -551,5 +551,9 @@
 		else
 			w_deathtypestring = "ate #'s rocket";
 	}
+	else if (req == WR_RESETPLAYER)
+	{
+		self.rl_release = 0;
+	}
 	return TRUE;
 };



More information about the nexuiz-commits mailing list