Ejemplo n.º 1
0
        public override void Update(GameTime gameTime)
        {
            base.Update(gameTime);

            if (game.peer.state == GameState.Room)
            {
                game.currentScreen = ScreenState.Room;
            }

            if (game.needToUpdateRoomList)
            {
                game.peer.gotoLobby();
                game.needToUpdateRoomList = false;
            }

            if (game.peer.msgReceived.roomList.Count != 0)
            {
                if (roomList.Items.Count != 0)
                {
                    roomList.ClearItems();
                }

                foreach (Room room in game.peer.msgReceived.roomList)
                {
                    DListBoxItem newRoom = new DListBoxItem(guiManager, room.toStringWithoutPeers2());
                    roomList.AddListItem(newRoom);
                }
            }
        }
Ejemplo n.º 2
0
        public override void Update(GameTime gameTime)
        {
            base.Update(gameTime);

            if (game.peer.state == GameState.Lobby)
            {
                game.currentScreen = ScreenState.Lobby;
            }

            if (game.peer.msgReceived.msgType == MessageType.Start)
            {
                game.currentScreen = ScreenState.Gameplay;
                game.needToInitGameplay = true;

            }

            if (game.needToUpdateRoom)
            {
                game.peer.updateRoom(0,0);
                if (playerList.Items.Count != 0)
                {
                    playerList.ClearItems();
                }

                roomNameLabel.Text = "Room " + game.peer.currentRoom.getRoomID();
                creatorLabel.Text = "Creator: " + game.peer.currentRoom.getCreator();

                if (game.peer.currentRoom.getConnectedPeers().Count != 0)
                {
                    foreach (PeerInfo peer in game.peer.currentRoom.getConnectedPeers())
                    {
                        DListBoxItem newPlayer = new DListBoxItem(guiManager, peer.ToString2());
                        playerList.AddListItem(newPlayer);
                    }

                    if (game.peer.currentRoom.getConnectedPeers().Count == game.peer.currentRoom.getMaxPlayer())
                    {
                        startRoomButton.Enabled = true;
                    }
                }

                game.needToUpdateRoom = false;
            }

            if (game.peer.msgReceived.msgType == MessageType.GameUpdate)
            {
                game.needToUpdateRoom = true;
            }
        }