torg = tgt.origin + (tgt.mins + tgt.maxs) * 0.5;
- grav = cvar("sv_gravity");
+ grav = autocvar_sv_gravity;
zdist = torg_z - org_z;
sdist = vlen(torg - org - zdist * '0 0 1');
void trigger_push_touch()
{
+ 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 (other.classname != "gib")
if (other.classname != "casing")
if (other.classname != "droppedweapon")
+ if (other.classname != "keepawayball")
if (!other.projectiledeathtype || other.classname == "bullet")
return;
other.flags &~= FL_ONGROUND;
other.velocity = self.movedir;
- other.jumppadusetime = time;
if (other.classname == "player")
{
};
.vector dest;
-
void trigger_push_findtarget()
{
local entity e;
*/
void spawnfunc_trigger_push()
{
- if (self.angles != '0 0 0')
- SetMovedir ();
+ SetMovedir ();
EXACTTRIGGER_INIT;
-
+
+ self.active = ACTIVE_ACTIVE;
self.use = trigger_push_use;
self.touch = trigger_push_touch;