Пример #1
0
    private void AddMapNodes(List <Room> roomList, Room currentRoom)
    {
        // add all nodes to list and screen
        foreach (Room r in roomList)
        {
            Vector2     pos      = CalculateMinimapNodePosition(r);
            string      nodeName = (r.Visited) ? GetVisitedSpriteName(r) : unvisitedPNG;
            MinimapNode node     = new MinimapNode(nodeName, r.MinimapRoomCoordinates, pos.x, pos.y);
            if (r.Visited)
            {
                node.Visited   = true;
                node.isVisible = true;
            }
            nodeList.Add(node);
            AddChild(node);
        }

        MakeAdjacentNodesVisible(roomList);

        //Add initial player node
        Vector2 player_pos = CalculateMinimapNodePosition(currentRoom);

        playerNode = new MinimapNode("minimap_marker", player_pos.x, player_pos.y);
        AddChildAtIndex(playerNode, 99);
    }
Пример #2
0
 private void DebugShowAllNodes(Dungeon dngn)
 {
     for (int x = 0; x < dngn.maxWidth; x++)
     {
         for (int y = 0; y < dngn.maxHeight; y++)
         {
             Vector2     v = new Vector2(originX + (nodeWidth * x), originY + (nodeHeight * y));
             MinimapNode n = new MinimapNode(unvisitedPNG, new Vector2(x, y), v.x, v.y);
             n.isVisible = true;
             AddChild(n);
         }
     }
 }
Пример #3
0
    public void UpdateMinimap(Dungeon dungeon)
    {
        // remove old node
        dungeon.CurrentRoom.Visited = true;
        MinimapNode currentNode = nodeList.First(x => x.coordinates == dungeon.CurrentRoom.MinimapRoomCoordinates);

        RemoveChild(currentNode);
        nodeList.Remove(currentNode);

        // add new node with updated sprite
        Vector2     pos     = CalculateMinimapNodePosition(dungeon.CurrentRoom);
        MinimapNode newNode = new MinimapNode(GetVisitedSpriteName(dungeon.CurrentRoom), dungeon.CurrentRoom.MinimapRoomCoordinates, pos.x, pos.y);

        newNode.isVisible = true;
        newNode.Visited   = true;
        AddChild(newNode);
        nodeList.Add(newNode);

        // show the adjacent unvisited nodes
        MakeAdjacentNodesVisible(dungeon.RoomList);

        this.RemoveChild(playerNode);
        AddChildAtIndex(playerNode, 99);
    }
Пример #4
0
    public void UpdateMinimap(Dungeon dungeon)
    {
        // remove old node
        dungeon.CurrentRoom.Visited = true;
        MinimapNode currentNode = nodeList.First(x => x.coordinates == dungeon.CurrentRoom.MinimapRoomCoordinates);
        RemoveChild(currentNode);
        nodeList.Remove(currentNode);

        // add new node with updated sprite
        Vector2 pos = CalculateMinimapNodePosition(dungeon.CurrentRoom);
        MinimapNode newNode = new MinimapNode(GetVisitedSpriteName(dungeon.CurrentRoom), dungeon.CurrentRoom.MinimapRoomCoordinates,pos.x, pos.y);
        newNode.isVisible = true;
        newNode.Visited = true;
        AddChild(newNode);
        nodeList.Add(newNode);

        // show the adjacent unvisited nodes
        MakeAdjacentNodesVisible(dungeon.RoomList);

        this.RemoveChild(playerNode);
        AddChildAtIndex(playerNode,99);
    }
Пример #5
0
 private void DebugShowAllNodes(Dungeon dngn)
 {
     for (int x = 0; x < dngn.maxWidth; x++)
     {
         for (int y = 0; y < dngn.maxHeight; y++)
         {
             Vector2 v = new Vector2(originX + (nodeWidth * x), originY + (nodeHeight * y));
             MinimapNode n = new MinimapNode(unvisitedPNG, new Vector2(x,y), v.x, v.y);
             n.isVisible = true;
             AddChild(n);
         }
     }
 }
Пример #6
0
    private void AddMapNodes(List<Room> roomList, Room currentRoom)
    {
        // add all nodes to list and screen
        foreach(Room r in roomList)
        {
            Vector2 pos = CalculateMinimapNodePosition(r);
            string nodeName = (r.Visited) ? GetVisitedSpriteName(r) : unvisitedPNG;
            MinimapNode node = new MinimapNode(nodeName, r.MinimapRoomCoordinates, pos.x, pos.y);
            if (r.Visited)
            {
                node.Visited = true;
                node.isVisible = true;
            }
            nodeList.Add(node);
            AddChild(node);
        }

        MakeAdjacentNodesVisible(roomList);

        //Add initial player node
        Vector2 player_pos = CalculateMinimapNodePosition(currentRoom);
        playerNode = new MinimapNode("minimap_marker", player_pos.x, player_pos.y);
        AddChildAtIndex(playerNode,99);
    }