if (self.active != ACTIVE_ACTIVE)
return;
- // FIXME: Better checking for what to push and not.
- if not(other.iscreature)
- if (other.classname != "corpse")
- if (other.classname != "body")
- if (other.classname != "gib")
- if (other.classname != "missile")
- if (other.classname != "rocket")
- if (other.classname != "casing")
- if (other.classname != "grenade")
- if (other.classname != "plasma")
- if (other.classname != "plasma_prim")
- if (other.classname != "plasma_chain")
- if (other.classname != "droppedweapon")
- if (other.classname != "nexball_basketball")
- if (other.classname != "nexball_football")
- return;
-
- if (other.deadflag && other.iscreature)
+ if(!isPushable(other))
return;
EXACTTRIGGER_TOUCH;
if (dm > 0)
Damage (self, world, world, dm, DEATH_FALL, self.origin, '0 0 0');
}
- }
- if(autocvar_g_maxspeed > 0 && velocity_len > autocvar_g_maxspeed)
- Damage (self, world, world, 100000, DEATH_SHOOTING_STAR, self.origin, '0 0 0');
-
- // play stupid sounds
- if (!vehic) // vehicles don't get footsteps
- if (g_footsteps)
- if (!gameover)
- if (self.flags & FL_ONGROUND)
- if (velocity_len > autocvar_sv_maxspeed * 0.6)
- if (!self.deadflag)
- if (time < self.lastground + 0.2)
- {
- if((time > self.nextstep) || (time < (self.nextstep - 10.0)))
+ if(autocvar_g_maxspeed > 0 && velocity_len > autocvar_g_maxspeed)
+ Damage (self, world, world, 100000, DEATH_SHOOTING_STAR, self.origin, '0 0 0');
+ // play stupid sounds
+ if (g_footsteps)
+ if (!gameover)
+ if (self.flags & FL_ONGROUND)
+ if (velocity_len > autocvar_sv_maxspeed * 0.6)
+ if (!self.deadflag)
+ if (time < self.lastground + 0.2)
{
- self.nextstep = time + 0.3 + random() * 0.1;
- trace_dphitq3surfaceflags = 0;
- tracebox(self.origin, self.mins, self.maxs, self.origin - '0 0 1', MOVE_NOMONSTERS, self);
- /*
- if(trace_fraction == 1)
- dprint("nohit\n");
- else
- dprint(ftos(trace_dphitq3surfaceflags), "\n");
- */
- if not(trace_dphitq3surfaceflags & Q3SURFACEFLAG_NOSTEPS)
+ if((time > self.nextstep) || (time < (self.nextstep - 10.0)))
{
- if(trace_dphitq3surfaceflags & Q3SURFACEFLAG_METALSTEPS)
- GlobalSound(globalsound_metalstep, CHAN_PLAYER, VOICETYPE_PLAYERSOUND);
+ self.nextstep = time + 0.3 + random() * 0.1;
+ trace_dphitq3surfaceflags = 0;
+ tracebox(self.origin, self.mins, self.maxs, self.origin - '0 0 1', MOVE_NOMONSTERS, self);
+ /*
+ if(trace_fraction == 1)
+ dprint("nohit\n");
else
- GlobalSound(globalsound_step, CHAN_PLAYER, VOICETYPE_PLAYERSOUND);
+ dprint(ftos(trace_dphitq3surfaceflags), "\n");
+ */
+ if not(trace_dphitq3surfaceflags & Q3SURFACEFLAG_NOSTEPS)
+ {
+ if(trace_dphitq3surfaceflags & Q3SURFACEFLAG_METALSTEPS)
+ GlobalSound(globalsound_metalstep, CHAN_PLAYER, VOICETYPE_PLAYERSOUND);
+ else
+ GlobalSound(globalsound_step, CHAN_PLAYER, VOICETYPE_PLAYERSOUND);
+ }
}
}
}
+
self.oldvelocity = self.velocity;
}
self = oldself;
if (self.active == ACTIVE_NOT)
return;
- // FIXME: add a .float for whether an entity should be tossed by jumppads
- if (!other.iscreature)
- if (other.classname != "corpse")
+ if not(other.iscreature)
if (other.classname != "body")
- if (other.classname != "gib")
if (other.classname != "casing")
+ if (other.classname != "corpse")
if (other.classname != "droppedweapon")
+ if (other.classname != "gib")
if (other.classname != "keepawayball")
+ if (other.classname != "nexball_basketball")
+ if (other.classname != "nexball_football")
if (!other.projectiledeathtype || other.classname == "bullet")
return;
+ if(!isPushable(other))
+ return;
+
if (other.deadflag && other.iscreature)
return;