コード例 #1
0
    private object SetText(List <object> param)
    {
        var instanceId = Convert.ToInt32(param [0]);
        var textVal    = param [1] as string;

        foreach (var go in GameObject.FindObjectsOfType <GameObject>())
        {
            if (go.GetInstanceID() == instanceId)
            {
                return(UnityNode.SetText(go, textVal));
            }
        }
        return(false);
    }
コード例 #2
0
        private void OnDrawGizmos()
        {
            // Scene view debug drawing here...
            if (Graph == null || !bEnabled)
            {
                return;
            }

            foreach (var Node in Graph.Nodes)
            {
                UnityNode GraphNode = (UnityNode)Graph.GetNode(Node.NodeIndex);

                if (DrawNodeIndex && GraphNode != null)
                {
                    var StringPosition = new Vector3(transform.position.x + Node.Position.x, transform.position.y + Node.Position.y, transform.position.z + Node.Position.z);
                    StringPosition.y += 0.5f;
                    DrawString(Node.NodeIndex.ToString(), StringPosition, Color.white);
                }

                if (DrawEdges && GraphNode != null)
                {
                    foreach (var Edge in Graph.Edges[Node.NodeIndex])
                    {
                        var FromNode     = Graph.GetNode(Edge.FromNodeIndex) as UnityNode;
                        var ToNode       = Graph.GetNode(Edge.ToNodeIndex) as UnityNode;
                        var FromPosition = new Vector3(transform.position.x + FromNode.Position.x, transform.position.y, transform.position.z + FromNode.Position.z);
                        var ToPosition   = new Vector3(transform.position.x + ToNode.Position.x, transform.position.y, transform.position.z + ToNode.Position.z);

                        Gizmos.color = EdgeColor;
                        Gizmos.DrawLine(FromPosition, ToPosition);
                    }
                }

                if (DrawWalkable)
                {
                    Gizmos.color = WalkableColor;

                    if (Node.NodeIndex == (int)ENodeType.InvalidNodeIndex)
                    {
                        Gizmos.color = BlockedColor;
                    }

                    Vector3 CubePosition = new Vector3(transform.position.x + Node.Position.x, transform.position.y + Node.Position.y, transform.position.z + Node.Position.z);
                    Vector3 CubeSize     = new Vector3(TileWidth * (1 - TilePadding), .01f, TileHeight * (1 - TilePadding));
                    Gizmos.DrawCube(CubePosition, CubeSize);
                }
            }
        }
コード例 #3
0
        void Start()
        {
            GraphNodePrefabsRoot = transform.GetChild(0);

            foreach (var Node in Graph.Nodes)
            {
                UnityNode GraphNode    = (UnityNode)Graph.GetNode(Node.NodeIndex);
                Vector3   NodePosition = new Vector3(transform.position.x + Node.Position.x, transform.position.y + Node.Position.y + 0.02f, transform.position.z + Node.Position.z);

                if (Node.NodeIndex != (int)ENodeType.InvalidNodeIndex)
                {
                    // Vector3 CubeSize = new Vector3(TileWidth * (1 - TilePadding), .01f, TileHeight * (1 - TilePadding));
                    Node.GraphNodePrefab = Instantiate(WalkableNodePrefab, NodePosition, Quaternion.identity, GraphNodePrefabsRoot);
                    //   Node.GraphNodePrefab.GetComponent<VisualUnityNode>().UnityNode = Node;
                }
                else
                {
                    // Node.GraphNodePrefab.GetComponent<GraphNode>().NodeIndex = (int)ENodeType.InvalidNodeIndex;
                    Node.GraphNodePrefab = Instantiate(UnWalkableNodePrefab, NodePosition, Quaternion.identity, GraphNodePrefabsRoot);
                }
            }
        }