[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