Ejemplo n.º 1
0
        private void ElaborateLobbyData(Object sender, List <Room> data)
        {
            var deleteRooms  = new Dictionary <String, VRoom>(rooms);
            var addRooms     = new Dictionary <int, VRoom>();
            var replaceRooms = new Dictionary <VRoom, Tuple <int, VRoom> >();
            var layout       = ((LinearLayout)FindViewById(Resource.Id.listRooms));

            for (int i = 0; i < data.Count; i++)
            {
                Room   room = data[i];
                string key  = room.address + ":" + room.port.ToString();

                if (!rooms.ContainsKey(key))
                {
                    VRoom view = new VRoom(this, room);
                    rooms.Add(key, view);
                    addRooms[i] = view;
                }
                else
                {
                    deleteRooms.Remove(key);
                    if (!rooms[key].Equals(room))
                    {
                        VRoom oldView = rooms[key];
                        VRoom view    = new VRoom(this, room);
                        rooms[key]            = view;
                        replaceRooms[oldView] = new Tuple <int, VRoom>(i, view);
                    }
                    else
                    {
                        rooms[key].room = room;
                    }
                }
            }

            RunOnUiThread(() => {
                foreach (VRoom view in deleteRooms.Values)
                {
                    layout.RemoveView(view);
                    rooms.Remove(view.room.address + ":" + view.room.port.ToString());
                }
                foreach (var entry in addRooms)
                {
                    layout.AddView(entry.Value, entry.Key);
                }
                foreach (var entry in replaceRooms)
                {
                    layout.RemoveView(entry.Key);
                    layout.AddView(entry.Value.Item2, entry.Value.Item1);
                }
            });
        }
Ejemplo n.º 2
0
    private void firstBuildFunction()
    {
        layout = new MapsCreator();
        wall   = GameObject.Find("wall");
        if (wall is null)
        {
            Debug.Log("could not find wall");
        }
        floor = GameObject.Find("floor");
        if (floor is null)
        {
            Debug.Log("could not find floor");
        }
        physicalMap = layout.getMaps();
        map_size    = layout.getSize();
        size        = 1f;
        worldMap    = new house[layout.getSize(), layout.getSize()];
        drawPysicalrooms();

        initTheActivities();
    }
Ejemplo n.º 3
0
    public bool dockingStation = false;//Portals leading to a docking station disable VRoom movement mechanics

    void Awake()
    {
        vRoomAndPlayer = GameObject.FindGameObjectWithTag("VRoomAndPlayer").transform;
        if (vRoomAndPlayer == null)
        {
            Debug.LogError("VRoomAndPlayer not found!");
        }

        vRoom = vRoomAndPlayer.Find("VRoom");
        if (vRoom == null)
        {
            Debug.LogError("VRoom not found!");
        }

        vRoomScript = vRoom.GetComponent <VRoom>();
        if (vRoomScript == null)
        {
            Debug.LogError("vRoomScript not found!");
        }

        exit = FindExit();
    }
Ejemplo n.º 4
0
 public MapsCreator()
 {
     maps      = new VRoom(size);
     enternces = new List <Node>();
     setPysicalMap();
 }