void Update()
 {
     if (controller.state == RagdollControllerState.Animated)
     {
         RagdollPhysics.MovePossibleCharacterController(transform, Vector3.Lerp(transform.position, target.position, Time.deltaTime * speed));
     }
 }
Exemple #2
0
        IEnumerator CheckForRagdollGrab(Ray ray)
        {
            if (grabbedBone)
            {
                RagdollPhysics.DetachRigidbody(grabbedBone.GetComponent <Rigidbody>(), hangJoint, false);
                grabbedBone = null;
            }
            else
            {
                yield return(new WaitForFixedUpdate());

                RaycastHit hit;

                if (Physics.Raycast(ray, out hit, 100f, shootMask, QueryTriggerInteraction.Ignore))
                {
                    grabbedBone = hit.transform.GetComponent <RagdollBone>();
                    if (grabbedBone)
                    {
                        ragdollGrabberAnchor.transform.position = hit.point;
                        hangJoint = RagdollPhysics.GrabRigidbody(grabbedBone.rb, ragdollGrabberAnchor.childRigidbody, true);
                    }
                }
            }
        }
Exemple #3
0
 // Use this for initialization
 void Start()
 {
     rag = GetComponent <RagdollPhysics>();
 }