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

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Sun Mar 15 06:15:06 EDT 2009


Author: div0
Date: 2009-03-15 06:15:05 -0400 (Sun, 15 Mar 2009)
New Revision: 6173

Modified:
   trunk/data/qcsrc/server/cl_weaponsystem.qc
   trunk/data/qcsrc/server/g_hook.qc
   trunk/data/qcsrc/server/miscfunctions.qc
   trunk/data/qcsrc/server/w_shotgun.qc
Log:
improve shotgun and shootfromcenter


Modified: trunk/data/qcsrc/server/cl_weaponsystem.qc
===================================================================
--- trunk/data/qcsrc/server/cl_weaponsystem.qc	2009-03-15 01:41:21 UTC (rev 6172)
+++ trunk/data/qcsrc/server/cl_weaponsystem.qc	2009-03-15 10:15:05 UTC (rev 6173)
@@ -46,10 +46,8 @@
 		vecs = ent.weaponentity.movedir;
 		vecs_y = -vecs_y;
 	}
-	else if (cvar("g_shootfromeye"))
-		vecs_y = vecs_z = 0;
-	else if (cvar("g_shootfromcenter"))
-		vecs_y = 0;
+	else
+		vecs = shotorg_adjust(vecs, TRUE, FALSE);
 
 	if(debug_shotorg != '0 0 0')
 		vecs = debug_shotorg;
@@ -408,18 +406,14 @@
 
 		self.view_ofs = '0 0 0';
 
-		if(cvar("g_shootfromcenter") || cvar("g_shootfromeye"))
 		if(self.movedir_x >= 0)
 		{
-			self.view_ofs_y = -self.movedir_y;
-			self.movedir += self.view_ofs;
+			vector v0;
+			v0 = self.movedir;
+			self.movedir = shotorg_adjust(v0, FALSE, FALSE);
+			self.view_ofs = shotorg_adjust(v0, FALSE, TRUE) - v0;
 		}
 
-		if(cvar("g_shootfromeye"))
-		{
-			self.movedir_z = 0;
-		}
-
 		// check if an instant weapon switch occurred
 		if (qcweaponanimation)
 		{

Modified: trunk/data/qcsrc/server/g_hook.qc
===================================================================
--- trunk/data/qcsrc/server/g_hook.qc	2009-03-15 01:41:21 UTC (rev 6172)
+++ trunk/data/qcsrc/server/g_hook.qc	2009-03-15 10:15:05 UTC (rev 6173)
@@ -470,13 +470,7 @@
 	if(g_grappling_hook)
 		hook_shotorigin = '8 -8 -12';
 	else
-	{
-		hook_shotorigin = '26.2148 9.2059 -15.9772';
-		if(cvar("g_shootfromcenter"))
-			hook_shotorigin_y = 0;
-		if(cvar("g_shootfromeye"))
-			hook_shotorigin_y = hook_shotorigin_z = 0;
-	}
+		hook_shotorigin = shotorg_adjust('26.2148 9.2059 -15.9772', FALSE, FALSE);
 }
 
 void SetGrappleHookBindings()

Modified: trunk/data/qcsrc/server/miscfunctions.qc
===================================================================
--- trunk/data/qcsrc/server/miscfunctions.qc	2009-03-15 01:41:21 UTC (rev 6172)
+++ trunk/data/qcsrc/server/miscfunctions.qc	2009-03-15 10:15:05 UTC (rev 6173)
@@ -2025,3 +2025,26 @@
 			strcat("//", strconv(2, 0, 0, GetGametype()), " RECORD SET ", mmsss(dt * 10)),
 			" ", ftos(tstart), " ", ftos(dt), "\n"));
 }
+
+vector shotorg_adjust(vector vecs, float y_is_right, float visual)
+{
+	if (cvar("g_shootfromeye"))
+	{
+		if(visual)
+		{
+			vecs_y = 0;
+			vecs_z -= 2;
+		}
+		else
+		{
+			vecs_y = 0;
+			vecs_z = 0;
+		}
+	}
+	else if (cvar("g_shootfromcenter"))
+	{
+		vecs_y = 0;
+		vecs_z -= 2;
+	}
+	return vecs;
+}

Modified: trunk/data/qcsrc/server/w_shotgun.qc
===================================================================
--- trunk/data/qcsrc/server/w_shotgun.qc	2009-03-15 01:41:21 UTC (rev 6172)
+++ trunk/data/qcsrc/server/w_shotgun.qc	2009-03-15 10:15:05 UTC (rev 6173)
@@ -90,12 +90,12 @@
 			SpawnCasing (w_shotorg - v_forward * 10, ((random () * 50 + 50) * v_right) - (v_forward * (random () * 25 + 25)) - ((random () * 5 - 30) * v_up), 2, vectoangles(v_forward),'0 250 0', 100, 1);
 
 	flash = spawn();
-	setorigin(flash, '53 5 0');
+	setorigin(flash, '5 0 0');
 	setmodel(flash, "models/uziflash.md3"); // precision set below
 	if (gettagindex(self.weaponentity, "shot"))
 		setattachment(flash, self.weaponentity, "shot");
-	else if (gettagindex(self.weaponentity, "bone01"))
-		setattachment(flash, self.weaponentity, "bone01");
+	else if (gettagindex(self.weaponentity, "bone02"))
+		setattachment(flash, self.weaponentity, "bone02");
 	else
 	{
 		setorigin(flash, '48 0 5');



More information about the nexuiz-commits mailing list