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); }
private void Disconnect(object obj) { _networkService.DisconnectFromServer(); var vm = _vmFactory.Create <MainMenuUIViewModel>(); _uiService.ChangeUIRoot <MainMenuView>(vm); }