[nexuiz-commits] r7280 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Wed Jul 29 08:51:47 EDT 2009
Author: div0
Date: 2009-07-29 08:51:47 -0400 (Wed, 29 Jul 2009)
New Revision: 7280
Modified:
trunk/data/qcsrc/server/defs.qh
trunk/data/qcsrc/server/g_hook.qc
trunk/data/qcsrc/server/nexball.qc
trunk/data/qcsrc/server/steerlib.qc
trunk/data/qcsrc/server/w_common.qc
trunk/data/qcsrc/server/w_crylink.qc
trunk/data/qcsrc/server/w_electro.qc
trunk/data/qcsrc/server/w_grenadelauncher.qc
trunk/data/qcsrc/server/w_hagar.qc
trunk/data/qcsrc/server/w_hlac.qc
trunk/data/qcsrc/server/w_hook.qc
trunk/data/qcsrc/server/w_laser.qc
trunk/data/qcsrc/server/w_porto.qc
trunk/data/qcsrc/server/w_rocketlauncher.qc
Log:
make projectiles SOLID_TRIGGER for a test
Modified: trunk/data/qcsrc/server/defs.qh
===================================================================
--- trunk/data/qcsrc/server/defs.qh 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/defs.qh 2009-07-29 12:51:47 UTC (rev 7280)
@@ -609,3 +609,6 @@
#endif
.float campingrifle_bulletcounter;
+
+#define PROJECTILE_MAKETRIGGER(e) (e).solid = SOLID_TRIGGER; (e).dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE
+// once was: SOLID_BBOX and default dphitcontentsmask, but then stuff can be blocked by them, and they are impacted by spectators
Modified: trunk/data/qcsrc/server/g_hook.qc
===================================================================
--- trunk/data/qcsrc/server/g_hook.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/g_hook.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -63,7 +63,7 @@
void UnsetMovetypeFollow(entity ent)
{
ent.movetype = MOVETYPE_FLY;
- ent.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(ent);
ent.aiment = world;
}
float LostMovetypeFollow(entity ent)
@@ -332,7 +332,7 @@
missile.classname = "grapplinghook";
missile.movetype = MOVETYPE_FLY;
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
setmodel (missile, "models/hook.md3"); // precision set below
setsize (missile, '-3 -3 -3', '3 3 3');
Modified: trunk/data/qcsrc/server/nexball.qc
===================================================================
--- trunk/data/qcsrc/server/nexball.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/nexball.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -669,7 +669,7 @@
missile.classname = "ballstealer";
missile.movetype = MOVETYPE_FLY;
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
setmodel (missile, "models/elaser.mdl"); // precision set below
setsize (missile, '0 0 0', '0 0 0');
Modified: trunk/data/qcsrc/server/steerlib.qc
===================================================================
--- trunk/data/qcsrc/server/steerlib.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/steerlib.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -512,7 +512,7 @@
flocker.owner = self;
flocker.think = flocker_think;
flocker.nextthink = time + random() * 5;
- flocker.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(flocker);
flocker.movetype = MOVETYPE_BOUNCEMISSILE;
flocker.effects = EF_LOWPRECISION;
flocker.velocity = randomvec() * 300;
@@ -612,7 +612,7 @@
self.enemy.scale = 3;
self.enemy.effects = EF_LOWPRECISION;
self.enemy.movetype = MOVETYPE_BOUNCEMISSILE;
- self.enemy.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(self.enemy);
self.enemy.think = flocker_hunter_think;
self.enemy.nextthink = time + 10;
self.enemy.flock_id = self.flock_id;
Modified: trunk/data/qcsrc/server/w_common.qc
===================================================================
--- trunk/data/qcsrc/server/w_common.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_common.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -322,7 +322,7 @@
proj = spawn();
proj.classname = "bullet";
proj.owner = self;
- proj.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(proj);
if(gravityfactor > 0)
{
proj.movetype = MOVETYPE_TOSS;
Modified: trunk/data/qcsrc/server/w_crylink.qc
===================================================================
--- trunk/data/qcsrc/server/w_crylink.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_crylink.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -83,7 +83,7 @@
proj.bot_dodgerating = cvar("g_balance_crylink_primary_damage");
proj.movetype = MOVETYPE_BOUNCEMISSILE;
- proj.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(proj);
proj.projectiledeathtype = WEP_CRYLINK;
//proj.gravity = 0.001;
@@ -147,7 +147,7 @@
proj.bot_dodgerating = cvar("g_balance_crylink_secondary_damage");
proj.movetype = MOVETYPE_BOUNCEMISSILE;
- proj.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(proj);
proj.projectiledeathtype = WEP_CRYLINK | HITTYPE_SECONDARY;
//proj.gravity = 0.001;
Modified: trunk/data/qcsrc/server/w_electro.qc
===================================================================
--- trunk/data/qcsrc/server/w_electro.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_electro.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -82,7 +82,7 @@
proj.use = W_Plasma_Explode;
proj.think = adaptor_think2use;
proj.nextthink = time + cvar("g_balance_electro_primary_lifetime");
- proj.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(proj);
proj.projectiledeathtype = WEP_ELECTRO;
setorigin(proj, w_shotorg);
@@ -119,7 +119,7 @@
proj.bot_dodge = TRUE;
proj.bot_dodgerating = cvar("g_balance_electro_secondary_damage");
proj.nextthink = time + cvar("g_balance_electro_secondary_lifetime");
- proj.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(proj);
proj.projectiledeathtype = WEP_ELECTRO | HITTYPE_SECONDARY;
setorigin(proj, w_shotorg);
Modified: trunk/data/qcsrc/server/w_grenadelauncher.qc
===================================================================
--- trunk/data/qcsrc/server/w_grenadelauncher.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_grenadelauncher.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -88,7 +88,7 @@
gren.bot_dodge = TRUE;
gren.bot_dodgerating = cvar("g_balance_grenadelauncher_primary_damage");
gren.movetype = MOVETYPE_BOUNCE;
- gren.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(gren);
gren.projectiledeathtype = WEP_GRENADE_LAUNCHER;
setorigin(gren, w_shotorg);
setsize(gren, '0 0 -3', '0 0 -3');
@@ -123,7 +123,7 @@
gren.bot_dodge = TRUE;
gren.bot_dodgerating = cvar("g_balance_grenadelauncher_secondary_damage");
gren.movetype = MOVETYPE_BOUNCE;
- gren.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(gren);
gren.projectiledeathtype = WEP_GRENADE_LAUNCHER | HITTYPE_SECONDARY;
setsize(gren, '0 0 -3', '0 0 -3');
setorigin(gren, w_shotorg);
Modified: trunk/data/qcsrc/server/w_hagar.qc
===================================================================
--- trunk/data/qcsrc/server/w_hagar.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_hagar.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -55,7 +55,7 @@
missile.use = W_Hagar_Explode;
missile.think = adaptor_think2use;
missile.nextthink = time + cvar("g_balance_hagar_primary_lifetime");
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
missile.projectiledeathtype = WEP_HAGAR;
setorigin (missile, w_shotorg);
setsize(missile, '0 0 0', '0 0 0');
@@ -91,7 +91,7 @@
missile.use = W_Hagar_Explode;
missile.think = adaptor_think2use;
missile.nextthink = time + cvar("g_balance_hagar_secondary_lifetime");
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
missile.projectiledeathtype = WEP_HAGAR | HITTYPE_SECONDARY;
setorigin (missile, w_shotorg);
setsize(missile, '0 0 0', '0 0 0');
Modified: trunk/data/qcsrc/server/w_hlac.qc
===================================================================
--- trunk/data/qcsrc/server/w_hlac.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_hlac.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -53,7 +53,7 @@
missile.bot_dodgerating = cvar("g_balance_hlac_primary_damage");
missile.movetype = MOVETYPE_FLY;
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
setorigin (missile, w_shotorg);
setsize(missile, '0 0 0', '0 0 0');
@@ -97,7 +97,7 @@
missile.bot_dodgerating = cvar("g_balance_hlac_secondary_damage");
missile.movetype = MOVETYPE_FLY;
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
setorigin (missile, w_shotorg);
setsize(missile, '0 0 0', '0 0 0');
Modified: trunk/data/qcsrc/server/w_hook.qc
===================================================================
--- trunk/data/qcsrc/server/w_hook.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_hook.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -68,7 +68,7 @@
gren.bot_dodge = TRUE;
gren.bot_dodgerating = cvar("g_balance_hook_secondary_damage");
gren.movetype = MOVETYPE_TOSS;
- gren.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(gren);
gren.projectiledeathtype = WEP_HOOK | HITTYPE_SECONDARY;
setorigin(gren, w_shotorg);
setsize(gren, '0 0 0', '0 0 0');
Modified: trunk/data/qcsrc/server/w_laser.qc
===================================================================
--- trunk/data/qcsrc/server/w_laser.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_laser.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -4,6 +4,9 @@
{
PROJECTILE_TOUCH;
+ if(other.classname == "spectator")
+ checkclient();
+
self.event_damage = SUB_Null;
if (self.dmg)
RadiusDamage (self, self.owner, cvar("g_balance_laser_secondary_damage"), cvar("g_balance_laser_secondary_edgedamage"), cvar("g_balance_laser_secondary_radius"), world, cvar("g_balance_laser_secondary_force"), self.projectiledeathtype, other);
@@ -31,7 +34,7 @@
missile.bot_dodgerating = cvar("g_balance_laser_primary_damage");
missile.movetype = MOVETYPE_FLY;
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
missile.projectiledeathtype = WEP_LASER;
if(issecondary)
missile.projectiledeathtype |= HITTYPE_SECONDARY;
Modified: trunk/data/qcsrc/server/w_porto.qc
===================================================================
--- trunk/data/qcsrc/server/w_porto.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_porto.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -170,7 +170,7 @@
gren.bot_dodge = TRUE;
gren.bot_dodgerating = 200;
gren.movetype = MOVETYPE_BOUNCEMISSILE;
- gren.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(gren);
gren.effects = EF_RED;
gren.scale = 4;
setorigin(gren, w_shotorg);
Modified: trunk/data/qcsrc/server/w_rocketlauncher.qc
===================================================================
--- trunk/data/qcsrc/server/w_rocketlauncher.qc 2009-07-29 08:07:25 UTC (rev 7279)
+++ trunk/data/qcsrc/server/w_rocketlauncher.qc 2009-07-29 12:51:47 UTC (rev 7280)
@@ -276,7 +276,7 @@
missile.event_damage = W_Rocket_Damage;
missile.movetype = MOVETYPE_FLY;
- missile.solid = SOLID_BBOX;
+ PROJECTILE_MAKETRIGGER(missile);
missile.projectiledeathtype = WEP_ROCKET_LAUNCHER;
setsize (missile, '-3 -3 -3', '3 3 3'); // give it some size so it can be shot
More information about the nexuiz-commits
mailing list