public override void Process() { base.Process(); if (Slide.Active) { Slide.Process(); } else { Speed.Calculate(Control.AbsoluteScale, speedModifiers); Direction.Calculate(); } Jump.Process(); GroundCheck.Do(); velocity = Direction.Forward * Speed.Value.y + Direction.Right * Speed.Value.x; velocity = Vector3.ProjectOnPlane(velocity, GroundCheck.Resault.hit.normal); }
public override void Process() { base.Process(); Speed.Calculate(Control.AbsoluteScale, Speed.Magnitude > maxMovementSpeed ? 0f : acceleration, deAcceleration, true); }