Пример #1
0
        private void OnConnectedToServerPacket(PacketBase p)
        {
            var packet = (ConnectedToServerPacket)p;

            foreach (string resourcePack in packet.RequiredResourcePacks)
            {
                if (!File.Exists(_pathService.ResourcePackDirectory + resourcePack + ".rpk"))
                {
                    _networkService.DisconnectFromServer($"Missing required resource packs. (File: {resourcePack})");
                    return;
                }
            }

            var vm = _vmFactory.Create <CharacterSelectionUIViewModel>();

            vm.IsCharacterDeletionEnabled = packet.AllowCharacterDeletion;
            vm.ServerName     = packet.ServerName;
            vm.Announcement   = packet.Announcement;
            vm.Category       = packet.Category;
            vm.PVP            = packet.PVP;
            vm.CurrentPlayers = packet.CurrentPlayers;
            vm.MaxPlayers     = packet.MaxPlayers;

            foreach (var pc in packet.PCs)
            {
                vm.PCs.Add(pc);
            }

            vm.BuildServerInformationDetails();

            _uiService.ChangeUIRoot <CharacterSelectionView>(vm);
        }
Пример #2
0
        private void Disconnect(object obj)
        {
            _networkService.DisconnectFromServer();
            var vm = _vmFactory.Create <MainMenuUIViewModel>();

            _uiService.ChangeUIRoot <MainMenuView>(vm);
        }