if(self.flags & FL_FLY || self.flags & FL_SWIM)
movelib_move_simple(v_forward, ((self.enemy) ? runspeed : walkspeed), 0.6);
else
- movelib_move(v_forward, ((self.enemy) ? runspeed : walkspeed), 0, 200, 0.6);
+ movelib_move_simple_gravity(v_forward, ((self.enemy) ? runspeed : walkspeed), 0.6);
if(time > self.pain_finished)
if(time > self.attack_finished_single)
*/
#define movelib_move_simple(newdir,velo,blendrate) \
self.velocity = self.velocity * (1 - blendrate) + (newdir * blendrate) * velo
+
+#define movelib_move_simple_gravity(newdir,velo,blendrate) \
+ if(self.flags & FL_ONGROUND) self.velocity = self.velocity * (1 - blendrate) + (newdir * blendrate) * velo
void movelib_beak_simple(float force)
{