using UnityEngine; public class LineHookHandHelper : MonoBehaviour { public LineRenderer lineRenderer; public Transform jointHookPoint; private Transform startPointHandle; private Transform endPointHandle; private Rigidbody firstHookLureConnectBody; private void Start() { if (!lineRenderer) { lineRenderer = GetComponent(); } } private void LateUpdate() { if ((bool)startPointHandle) { base.transform.position = startPointHandle.position; RenderLine(); } } public void Setup(Transform startPoint, Transform HookLure, LineRenderer currentLinerenderer) { startPointHandle = startPoint; HookLure.position = HookLure.transform.position; firstHookLureConnectBody = HookLure.GetComponent().connectedBody; HookLure.GetComponent().connectedBody = jointHookPoint.GetComponent(); endPointHandle = HookLure; lineRenderer.material = currentLinerenderer.material; lineRenderer.widthCurve = currentLinerenderer.widthCurve; } private void RenderLine() { lineRenderer.positionCount = 2; lineRenderer.SetPosition(0, startPointHandle.transform.position); lineRenderer.SetPosition(1, endPointHandle.position); } private void OnDestroy() { endPointHandle.GetComponent().connectedBody = firstHookLureConnectBody; } }