X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=sv_phys.c;h=f592b08e40f53010a205140b5f0df78b95aaded5;hb=fe08cee338d3d75443d4705e071468b5f30a465f;hp=83ba3545cc6b86601ef3388ba08e1837928fdd73;hpb=ae1534f3ea57ed5165d1103ad4bba9bc2fa9272f;p=xonotic%2Fdarkplaces.git diff --git a/sv_phys.c b/sv_phys.c index 83ba3545..f592b08e 100644 --- a/sv_phys.c +++ b/sv_phys.c @@ -966,6 +966,8 @@ void SV_WalkMove (edict_t *ent) vec3_t upmove, downmove, oldorg, oldvel, nosteporg, nostepvel, stepnormal; trace_t downtrace; + SV_CheckVelocity(ent); + // do a regular slide move unless it looks like you ran into a step oldonground = (int)ent->v->flags & FL_ONGROUND; ent->v->flags = (int)ent->v->flags & ~FL_ONGROUND; @@ -975,6 +977,8 @@ void SV_WalkMove (edict_t *ent) clip = SV_FlyMove (ent, sv.frametime, NULL); + SV_CheckVelocity(ent); + // if move didn't block on a step, return if ( !(clip & 2) ) return; @@ -990,10 +994,9 @@ void SV_WalkMove (edict_t *ent) return; } - if (sv_nostep.integer) - return; + SV_CheckVelocity(ent); - if ( (int)ent->v->flags & FL_WATERJUMP ) + if (sv_nostep.integer || (int)ent->v->flags & FL_WATERJUMP ) return; VectorCopy (ent->v->origin, nosteporg); @@ -1052,6 +1055,8 @@ void SV_WalkMove (edict_t *ent) VectorCopy (nosteporg, ent->v->origin); VectorCopy (nostepvel, ent->v->velocity); } + + SV_CheckVelocity(ent); } //============================================================================