Пример #1
0
    void FixedUpdate()
    {
        if (currentState == States.Stuck)
        {
            var headgrapple = grappleSites[1];
            var backgrapple = grappleSites[0];
            var direction   = headgrapple.position - backgrapple.position;

            var force = direction.normalized * (characterController.grappleForce + direction.magnitude * characterController.grappleForceDistanceBoost);
            characterController.applyContinuousForce(force, characterController.grappleMaxVelocity);


            getRope().numPositions = grappleSites.Count;
            getRope().SetPositions(grappleSites.Select(g => g.position).ToArray());
        }
    }