Beispiel #1
0
    static void SetOverlayedNodes(List <STNode> nodesArray)
    {
        for (int i = 0; i < nodesArray.Count - 1; i++)
        {
            bool isOverlayed = false;
            if (nodesArray[i].isOverlayed == true)
            {
                continue;
            }



            STOverlayNodes overlayedNodes = null;
            for (int j = i + 1; j < nodesArray.Count; j++)
            {
                if ((nodesArray[i].NodeState == NODE_ST.SIMPLE) && (nodesArray[j].NodeState == NODE_ST.SIMPLE))
                {
                    continue;
                }

                if (Vector2.Distance(nodesArray[i].transform.position, nodesArray[j].transform.position) < 1.0f)
                {
                    //Debug.Log (nodesArray[i].transform.position);
                    //Debug.Log (nodesArray[j].transform.position);
                    if (isOverlayed == false)
                    {
                        overlayedNodes = Instantiate(Instance().OverlayInfoPref) as STOverlayNodes;
                        //	Debug.Log (nodesArray[i].transform.position);
                        nodesArray[i].isOverlayed = true;
                        isOverlayed = true;

                        //overlayedNodes = new STOverlayNodes(nodesArray[i].transform.position);
                        overlayedNodes.AddNode(nodesArray[i], (nodesArray[i].NodeType == NODE_T.COLLECTABLE));
                        overlayedNodesList.Add(overlayedNodes);
                    }

                    overlayedNodes.AddNode(nodesArray[j], (nodesArray[j].NodeType == NODE_T.COLLECTABLE));
                    nodesArray[j].isOverlayed = true;
                }
            }
        }

        foreach (STOverlayNodes nodeInfo in overlayedNodesList)
        {
            nodeInfo.ShowInfo();
        }
    }
Beispiel #2
0
    static public void HideOverlayedNodes()
    {
        int SavedNodesCount = 0;

        while ((overlayedNodesList.Count - SavedNodesCount) > 0)
        {
            STOverlayNodes forDel = overlayedNodesList [SavedNodesCount];



            if (forDel.DestroyObjects() == false)
            {
                SavedNodesCount++;
                continue;
            }

            Destroy(forDel.gameObject);
            overlayedNodesList.Remove(forDel);
        }
        //overlayedNodesList.Clear();
    }