| using System; |
| using System; |
| using System.Collections.Generic; |
| using System.Collections.Generic; |
| using UnityEngine; |
| using UnityEngine; |
| |
| |
| [ExecuteInEditMode] |
| [ExecuteInEditMode] |
| . | public class LineAttach : MonoBehaviour |
| public class LineAttach : MonoBehaviour, IMonoUpdater |
| { |
| { |
| private void Start() |
| private void Start() |
| { |
| { |
| this.m_lineRenderer = base.GetComponent<LineRenderer>(); |
| this.m_lineRenderer = base.GetComponent<LineRenderer>(); |
| } |
| } |
| |
| |
| . | private void LateUpdate() |
| private void OnEnable() |
| |
| { |
| |
| LineAttach.Instances.Add(this); |
| |
| } |
| |
| |
| |
| private void OnDisable() |
| |
| { |
| |
| LineAttach.Instances.Remove(this); |
| |
| } |
| |
| |
| |
| public void CustomLateUpdate(float deltaTime) |
| { |
| { |
| for (int i = 0; i < this.m_attachments.Count; i++) |
| for (int i = 0; i < this.m_attachments.Count; i++) |
| { |
| { |
| Transform transform = this.m_attachments[i]; |
| Transform transform = this.m_attachments[i]; |
| if (transform) |
| if (transform) |
| { |
| { |
| this.m_lineRenderer.SetPosition(i, base.transform.InverseTransformPoint(transform.position)); |
| this.m_lineRenderer.SetPosition(i, base.transform.InverseTransformPoint(transform.position)); |
| } |
| } |
| } |
| } |
| } |
| } |
| . | |
| |
| |
| public static List<IMonoUpdater> Instances { get; } = new List<IMonoUpdater>(); |
| |
| |
| public List<Transform> m_attachments = new List<Transform>(); |
| public List<Transform> m_attachments = new List<Transform>(); |
| |
| |
| private LineRenderer m_lineRenderer; |
| private LineRenderer m_lineRenderer; |
| } |
| } |
| |
| |