private void CreateIntervalNode(IIntervalNode node, int i)
        {
            if (IntervalTransform == null || IntervalPrefab == null)
            {
                return;
            }

            GameObject obj = Instantiate(IntervalPrefab);

            if (obj == null)
            {
                return;
            }

            obj.transform.SetParent(IntervalTransform, false);

            CW_IntervalNode nodeObject = obj.GetComponent <CW_IntervalNode>();

            if (nodeObject == null)
            {
                return;
            }

            nodeObject.setNode(node, i);

            nodes.Add(nodeObject);
        }
        public void NodesOn(bool isOn)
        {
            if (intervalInterface == null)
            {
                return;
            }

            if (!intervalInterface.IsReached)
            {
                return;
            }

            if (IntervalTransform == null)
            {
                return;
            }

            IntervalTransform.gameObject.SetActive(isOn);

            if (!isOn)
            {
                return;
            }

            for (int i = nodes.Count - 1; i >= 0; i--)
            {
                CW_IntervalNode node = nodes[i];

                if (node == null)
                {
                    continue;
                }

                node.UpdateText();

                node.gameObject.SetActive(isOn && intervalInterface.NodeInterval > i + 1);
            }
        }