using UnityEngine; using System; using System.Collections.Generic; namespace Fruitomation.Game { public class LineDrawer : MonoBehaviour { [Serializable] private class LineInfo { public RectTransform[] Points; } [Header("Settings")] [SerializeField] private Material LineMaterial; [SerializeField] private LineInfo[] Lines; private List Renderers = new(); private void Awake() { foreach (LineInfo line in Lines) { GameObject go = new("LineRenderer(Script Spawned)"); go.transform.SetParent(transform); RectTransform rt = go.AddComponent(); rt.anchoredPosition = new Vector2(0, 0); LineRenderer lr = go.AddComponent(); lr.positionCount = line.Points.Length; lr.material = LineMaterial; lr.widthMultiplier = 0.1f; Renderers.Add(lr); for (int i = 0; i < line.Points.Length; i++) { lr.SetPosition(i, line.Points[i].position); } } } private void Update() { for (int i = 0; i < Lines.Length; i++) { LineRenderer lr = Renderers[i]; for (int j = 0; j < Lines[i].Points.Length; j++) { lr.SetPosition(j, Lines[i].Points[j].position); } } } } }