using System; using UnityEngine; namespace NBF { public class LureController : MonoBehaviour { [SerializeField] private Rigidbody rBody; [SerializeField] private ConfigurableJoint joint; public Rigidbody RBody => rBody; public ConfigurableJoint Joint => joint; private void Start() { RBody.detectCollisions = true; RBody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic; RBody.interpolation = RigidbodyInterpolation.Interpolate; } public void SetJoint(Rigidbody rb) { joint.connectedBody = rb; } public void EnableCollision(bool enable) { if (rBody == null) { rBody = GetComponent(); } // rBody.detectCollisions = enable; } public void SetKinematic(bool value) { rBody.isKinematic = value; } public void SetJointDistance(float limit) { joint.linearLimit = new SoftJointLimit { limit = limit }; } private void OnCollisionEnter(Collision other) { Debug.Log($"OnCollisionEnter:{other.gameObject.name}"); } private void OnCollisionExit(Collision other) { Debug.Log($"OnCollisionExit:{other.gameObject.name}"); } } }