public void AddPoint(PentagramPointController p)
    {
        clearedPoints.Add(p.transform.position);
        lineRenderer.SetVertexCount(clearedPoints.Count);
        lineRenderer.SetPositions(clearedPoints.ToArray());

        if (clearedPoints.Count == 6)
        {
            List <PentagramPointController> circlePoints = new List <PentagramPointController>();
            float sevenTwo = 72 * Mathf.Deg2Rad;
            for (int i = 0; i < points.Count; i++)
            {
                float      ang = Mathf.PI * 3 / 2 + sevenTwo * i;
                GameObject go  = points[i];
                circlePoints.Add(go.GetComponent <PentagramPointController>());

                for (int j = 0; j < 2; j++)
                {
                    ang += sevenTwo / 3;
                    GameObject newPoint = GameObject.Instantiate(pentPoint);
                    newPoint.transform.position = new Vector3(Mathf.Cos(ang), Mathf.Sin(ang), 0) * radius;
                    newPoint.GetComponent <PentagramPointController>().controller = this;
                    circlePoints.Add(newPoint.GetComponent <PentagramPointController>());
                }
            }

            for (int i = 0; i < circlePoints.Count; i++)
            {
                //circlePoints[i].pair = circlePoints[(i + 1) % circlePoints.Count];
                circlePoints[i].pair = circlePoints[(i - 1 + circlePoints.Count) % circlePoints.Count];
            }
            phase++;
            circlePoints[0].select(true);
        }
        else if (clearedPoints.Count == 22)
        {
            phase++;
            Invoke("Win", 3.0f);
        }
    }
    public void AddPoint(PentagramPointController p)
    {
        clearedPoints.Add(p.transform.position);
        lineRenderer.SetVertexCount(clearedPoints.Count);
        lineRenderer.SetPositions(clearedPoints.ToArray());
        
        if (clearedPoints.Count == 6)
        {
            List<PentagramPointController> circlePoints = new List<PentagramPointController>();
            float sevenTwo = 72 * Mathf.Deg2Rad;
            for (int i = 0; i < points.Count; i++)
            {
                float ang = Mathf.PI * 3 / 2 + sevenTwo * i;
                GameObject go = points[i];
                circlePoints.Add(go.GetComponent<PentagramPointController>());

                for (int j = 0; j < 2; j++)
                {
                    ang += sevenTwo / 3;
                    GameObject newPoint = GameObject.Instantiate(pentPoint);
                    newPoint.transform.position = new Vector3(Mathf.Cos(ang), Mathf.Sin(ang), 0) * radius;
                    newPoint.GetComponent<PentagramPointController>().controller = this;
                    circlePoints.Add(newPoint.GetComponent<PentagramPointController>());
                }

            }

            for (int i = 0; i < circlePoints.Count; i++)
            {
                //circlePoints[i].pair = circlePoints[(i + 1) % circlePoints.Count];
                circlePoints[i].pair = circlePoints[(i - 1 + circlePoints.Count) % circlePoints.Count];
            }
            phase++;
            circlePoints[0].select(true);
        } else if (clearedPoints.Count == 22)
        {
            phase++;
            Invoke("Win", 3.0f);
        }
    }
 public void RemovePoint(PentagramPointController p)
 {
     clearedPoints.Remove(p.transform.position);
 }
 public void RemovePoint(PentagramPointController p)
 {
     clearedPoints.Remove(p.transform.position);
 }