void Update() { //spotlight update spotlight.position = CCPlayer.main.leftHand.transform.position; spotlight.rotation = CCPlayer.main.leftHand.transform.rotation; //ring and leveling plane update for (int i = 0; i < numPlanes; i++) { Vector3 pos = levelingPlanes[i].t.position; pos.y += levelingPlanes[i].dir * Time.deltaTime; if (pos.y < -bounds - offset) { levelingPlanes[i].dir = 1; } if (pos.y > bounds - offset) { levelingPlanes[i].dir = -1; } levelingPlanes[i].t.position = pos; } UpdateConveyor(); //hand update RaycastHit hit; bool rightHandDown = CCPlayer.main.rightHand.handInput.triggerState == InputState.Down; if (!rightHandDown) { return; } if (Physics.Raycast(spotlight.position, (CCPlayer.main.rightHand.anchor.position - spotlight.position).normalized, out hit, 100, ragdollLayerMask)) { if (hit.collider.name.StartsWith("mixamorig")) { RagdollController rc = hit.collider.GetComponentInParent <RagdollController>(); if (rc != null) { rc.InitiateGrab(CCPlayer.main.rightHand, hit.rigidbody); } } } }