void Clean() { drag = false; initialLetter = null; getLineRenderer = null; }
public void OnPointerDown(PointerEventData eventData) { if (create) { Vector3 point = Input.mousePosition; point.z = 100f; Collider2D[] colliders = Physics2D.OverlapCircleAll(Camera.main.ScreenToWorldPoint(point), 1); for (int i = 0; i < colliders.Length; i++) { Letter letter = colliders[i].gameObject.GetComponent <Letter>(); if (letter) { initialLetter = letter; } } if (initialLetter != null) { GameObject line = new GameObject("Line", typeof(LineRenderer), typeof(WebLine)); line.transform.SetParent(transform); line.transform.localPosition = Vector3.zero; line.transform.localScale = Vector3.one; LineRenderer lineRenderer = line.GetComponent <LineRenderer>(); lineRenderer.SetPosition(0, initialLetter.gameObject.GetComponent <RectTransform>().position); lineRenderer.startWidth = 3f; lineRenderer.endWidth = 3f; lineRenderer.startColor = new Color(1f, 0f, 0f, 0.5f); lineRenderer.endColor = new Color(1f, 0f, 0f, 0.5f); lineRenderer.numCapVertices = 50; lineRenderer.material = UIManager.instance.PlineMaterial; lineRenderer.sortingOrder = 1; getLineRenderer = () => { return(lineRenderer); }; StartCoroutine(DragCoroutine(lineRenderer)); } } }