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

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Wed May 20 13:30:14 EDT 2009


Author: div0
Date: 2009-05-20 13:30:14 -0400 (Wed, 20 May 2009)
New Revision: 6745

Modified:
   trunk/data/qcsrc/server/cl_impulse.qc
   trunk/data/qcsrc/server/extensions.qh
Log:
new supercontents flags: BOTCLIP (matching Q3's botclip), and OPAQUE (matching anything fully opaque, good for line-of-sight checks)
impulse 146 as a test for it


Modified: trunk/data/qcsrc/server/cl_impulse.qc
===================================================================
--- trunk/data/qcsrc/server/cl_impulse.qc	2009-05-18 17:34:09 UTC (rev 6744)
+++ trunk/data/qcsrc/server/cl_impulse.qc	2009-05-20 17:30:14 UTC (rev 6745)
@@ -416,6 +416,15 @@
 						traceline(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * 65536, FALSE, self);
 						sprint(self, strcat("distance: ", ftos(fabs(vlen(trace_endpos - (self.origin + self.view_ofs)))), "\n"));
 						break;
+					case 146:
+						makevectors(self.v_angle);
+						i = self.dphitcontentsmask;
+						self.dphitcontentsmask = DPCONTENTS_OPAQUE;
+						traceline(self.origin + self.view_ofs, self.origin + self.view_ofs + v_forward * 65536, FALSE, self);
+						self.dphitcontentsmask = i;
+						sprint(self, strcat("distance: ", ftos(fabs(vlen(trace_endpos - (self.origin + self.view_ofs)))), "\n"));
+						pointparticles(particleeffectnum("fire_big"), trace_endpos, '0 0 0', 10);
+						break;
 					case 148:
 						FOR_EACH_PLAYER(e)
 						{

Modified: trunk/data/qcsrc/server/extensions.qh
===================================================================
--- trunk/data/qcsrc/server/extensions.qh	2009-05-18 17:34:09 UTC (rev 6744)
+++ trunk/data/qcsrc/server/extensions.qh	2009-05-20 17:30:14 UTC (rev 6745)
@@ -1650,6 +1650,8 @@
 float DPCONTENTS_MONSTERCLIP = 512; // blocks monster movement
 float DPCONTENTS_DONOTENTER = 1024; // AI hint brush
 float DPCONTENTS_LIQUIDSMASK = 14; // WATER | SLIME | LAVA
+float DPCONTENTS_BOTCLIP = 2048; // AI hint brush
+float DPCONTENTS_OPAQUE = 4096; // only fully opaque brushes get this (may be useful for line of sight checks)
 float Q3SURFACEFLAG_NODAMAGE = 1;
 float Q3SURFACEFLAG_SLICK = 2; // low friction surface
 float Q3SURFACEFLAG_SKY = 4; // sky surface (also has NOIMPACT and NOMARKS set)



More information about the nexuiz-commits mailing list