torg = tgt.origin + (tgt.mins + tgt.maxs) * 0.5;
- grav = PHYS_GRAVITY;
+ grav = PHYS_GRAVITY(other);
if(PHYS_ENTGRAVITY(other))
grav *= PHYS_ENTGRAVITY(other);
other.move_velocity = other.velocity;
}
+#ifdef SVQC
UNSET_ONGROUND(other);
-
+#elif defined(CSQC)
other.move_flags &= ~FL_ONGROUND;
+#endif
#ifdef SVQC
if (IS_PLAYER(other))
}
#ifdef SVQC
-float trigger_push_send(entity to, float sf)
-{SELFPARAM();
+float trigger_push_send(entity this, entity to, float sf)
+{
WriteHeader(MSG_ENTITY, ENT_CLIENT_TRIGGER_PUSH);
WriteByte(MSG_ENTITY, sf);
void trigger_push_link()
{
- //Net_LinkEntity(self, false, 0, trigger_push_send);
+ Net_LinkEntity(self, false, 0, trigger_push_send);
}
#endif
#ifdef SVQC
void target_push_link()
{SELFPARAM();
- //Net_LinkEntity(self, false, 0, target_push_send);
+ Net_LinkEntity(self, false, 0, target_push_send);
//self.SendFlags |= 1; // update
}
self.entremove = trigger_remove_generic;
self.solid = SOLID_TRIGGER;
- self.draw = trigger_draw_generic;
- self.trigger_touch = trigger_push_touch;
+ //self.draw = trigger_draw_generic;
+ self.move_touch = trigger_push_touch;
self.drawmask = MASK_NORMAL;
self.move_time = time;
- trigger_push_findtarget();
+ defer(self, 0.25, trigger_push_findtarget);
}
if(sf & 2)