r4882 - in trunk/data: . qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Sun Oct 26 08:41:41 EDT 2008


Author: div0
Date: 2008-10-26 08:41:40 -0400 (Sun, 26 Oct 2008)
New Revision: 4882

Modified:
   trunk/data/qcsrc/server/cl_weaponsystem.qc
   trunk/data/qcsrc/server/g_subs.qc
   trunk/data/qcsrc/server/w_hlac.qc
   trunk/data/qcsrc/server/w_seeker.qc
   trunk/data/weapons.cfg
Log:
add a cvar for HLAC shots
fix allow more than 4 seeker missiles
fix playerclip


Modified: trunk/data/qcsrc/server/cl_weaponsystem.qc
===================================================================
--- trunk/data/qcsrc/server/cl_weaponsystem.qc	2008-10-26 12:02:38 UTC (rev 4881)
+++ trunk/data/qcsrc/server/cl_weaponsystem.qc	2008-10-26 12:41:40 UTC (rev 4882)
@@ -33,8 +33,8 @@
 	float nudge = 1; // added to traceline target and subtracted from result
 	local vector trueaimpoint;
 	local float oldsolid;
-	oldsolid = self.solid;
-	self.solid = SOLID_BBOX; // make all shot test traces bypass playerclip
+	oldsolid = self.dphitcontentsmask;
+	self.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE;
 	traceline(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * MAX_SHOT_DISTANCE, MOVE_NOMONSTERS, self);
 	trueaimpoint = trace_endpos;
 
@@ -162,7 +162,7 @@
 	}
 #endif
 
-	self.solid = oldsolid; // restore solid type (generally SOLID_SLIDEBOX)
+	self.dphitcontentsmask = oldsolid; // restore solid type (generally SOLID_SLIDEBOX)
 
 	if (!g_norecoil)
 		self.punchangle_x = recoil * -1;

Modified: trunk/data/qcsrc/server/g_subs.qc
===================================================================
--- trunk/data/qcsrc/server/g_subs.qc	2008-10-26 12:02:38 UTC (rev 4881)
+++ trunk/data/qcsrc/server/g_subs.qc	2008-10-26 12:41:40 UTC (rev 4882)
@@ -242,8 +242,8 @@
 		lag = 0; // only antilag for clients
 
 	// change shooter to SOLID_BBOX so the shot can hit corpses
-	oldsolid = source.solid;
-	source.solid = SOLID_BBOX;
+	oldsolid = source.dphitcontentsmask;
+	source.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE;
 
 	if (lag)
 	{
@@ -271,7 +271,7 @@
 	}
 
 	// restore shooter solid type
-	source.solid = oldsolid;
+	source.dphitcontentsmask = oldsolid;
 }
 void traceline_antilag (entity source, vector v1, vector v2, float nomonst, entity forent, float lag)
 {

Modified: trunk/data/qcsrc/server/w_hlac.qc
===================================================================
--- trunk/data/qcsrc/server/w_hlac.qc	2008-10-26 12:02:38 UTC (rev 4881)
+++ trunk/data/qcsrc/server/w_hlac.qc	2008-10-26 12:41:40 UTC (rev 4882)
@@ -163,7 +163,7 @@
         self.ammo_cells = self.ammo_cells - cvar("g_balance_hlac_secondary_ammo");
     }
 
-    for(i=0;i<6;++i)
+    for(i=cvar("g_balance_hlac_secondary_shots");i>0;--i)
         W_HLAC_Attack2f();
 
 	if (!g_norecoil)

Modified: trunk/data/qcsrc/server/w_seeker.qc
===================================================================
--- trunk/data/qcsrc/server/w_seeker.qc	2008-10-26 12:02:38 UTC (rev 4881)
+++ trunk/data/qcsrc/server/w_seeker.qc	2008-10-26 12:41:40 UTC (rev 4882)
@@ -230,21 +230,7 @@
     oldenemy = self.enemy;
     self.enemy = oldself.enemy;
 
-    switch(oldself.cnt)
-    {
-        case 0:
-            Seeker_Fire_Missile('37.5 17 -22');
-            break;
-        case 1:
-            Seeker_Fire_Missile('37.5 9.5 -22');
-            break;
-        case 2:
-            Seeker_Fire_Missile('40 17 -29');
-            break;
-        case 3:
-            Seeker_Fire_Missile('40 09.5 -29');
-            break;
-    }
+	Seeker_Fire_Missile('56 13 -15' + 7 * randomvec());
 
 
 
@@ -403,27 +389,11 @@
 void Seeker_Fire_Flac()
 {
 	local entity missile;
-    vector f_org;
 
 	if not(self.items & IT_UNLIMITED_WEAPON_AMMO)
 		self.ammo_rockets = self.ammo_rockets - cvar("g_balance_seeker_flac_ammo");
 
-    switch(floor(random() * 3))
-    {
-        case 0:
-            f_org = '37.5 17 -22';
-            break;
-        case 1:
-            f_org = '37.5 9.5 -22';
-            break;
-        case 2:
-            f_org = '40 17 -29';
-            break;
-        case 3:
-            f_org = '40 9.5 -29';
-            break;
-    }
-    W_SetupShot (self, f_org, FALSE, 2, "weapons/hagar_fire.wav");
+    W_SetupShot (self, '56 13 -15', FALSE, 2, "weapons/hagar_fire.wav");
 
 	pointparticles(particleeffectnum("hagar_muzzleflash"), w_shotorg, w_shotdir * 1000, 1);
 
@@ -501,7 +471,7 @@
     else if (req == WR_CHECKAMMO1)
         return self.ammo_rockets >= cvar("g_balance_seeker_tag_ammo");
     else if (req == WR_CHECKAMMO2)
-        return self.ammo_rockets >= cvar("g_balance_seeker_secondary_ammo");
+        return self.ammo_rockets >= cvar("g_balance_seeker_flac_ammo");
     else if (req == WR_SUICIDEMESSAGE)
         w_deathtypestring = "played with tiny rockets";
     else if (req == WR_KILLMESSAGE)

Modified: trunk/data/weapons.cfg
===================================================================
--- trunk/data/weapons.cfg	2008-10-26 12:02:38 UTC (rev 4881)
+++ trunk/data/weapons.cfg	2008-10-26 12:41:40 UTC (rev 4882)
@@ -274,6 +274,7 @@
 set g_balance_hlac_secondary_refire 1
 set g_balance_hlac_secondary_animtime 0.3
 set g_balance_hlac_secondary_ammo 10
+set g_balance_hlac_secondary_shots 6
 
 
 // TAG Seeker
@@ -318,7 +319,7 @@
 set g_balance_seeker_flac_lifetime      0.1
 set g_balance_seeker_flac_lifetime_rand 0.05
 set g_balance_seeker_flac_speed         3000
-set g_balance_seeker_flac_spread	    0.25
+set g_balance_seeker_flac_spread	    0.5
 
 set g_balance_seeker_flac_damage       15
 set g_balance_seeker_flac_edgedamage   10




More information about the nexuiz-commits mailing list