public LobbyRoomController(GUIPages.GUILobbyRoom _parent, Communication _com) { parent = _parent; com = _com; GameRooms = new List <Models.GameRoom>(); userData = new Models.UserData(); loadedDataChecklist = new List <bool>() { false, false, false, parent.CardCollectionLoaded }; }
// GAME LOBBY public void loadGameLobby() { GUIlobbyRoom = new GUIPages.GUILobbyRoom(this, com); List <string> loadedDataChecklistTitles = new List <string>() { "Populating User List", "Fetching User Data", "Fetching Game Rooms", "Fetching Card Database" }; GUIloading = new GUIPages.GUILoading(GUIlobbyRoom.BackgroundImageSource, loadedDataChecklistTitles, GUIlobbyRoom.getLoadedDataChecklist()); MainFrame.Content = GUIloading; currentPageID = 1; loadPage.Start(); }
public GameRoomGUIModel(GameRoom room, string myNickName, GUIPages.GUILobbyRoom parent_) { logger = new Log.Logger(); Parent = parent_; ID = room.RoomID; if (myNickName == room.Owner) { OwnRoom = true; } else { OwnRoom = false; } guestNickName = room.Guest; ColumnDefinition cd = new ColumnDefinition(); BrushConverter bc = new BrushConverter(); // Border Border = new Border(); Border.Height = 100; Border.Margin = new Thickness(10); Border.CornerRadius = new CornerRadius(20); Border.Background = Brushes.Black; Border.Opacity = 0.8; Border.BorderThickness = new Thickness(2); Border.BorderBrush = Brushes.LightGray; // GRID cd.Width = GridLength.Auto; grid.ColumnDefinitions.Add(cd); cd = new ColumnDefinition(); cd.Width = new GridLength(1, GridUnitType.Star); grid.ColumnDefinitions.Add(cd); cd = new ColumnDefinition(); cd.Width = GridLength.Auto; grid.ColumnDefinitions.Add(cd); // PLAYER1 BORDER borderForP1.CornerRadius = new CornerRadius(10); borderForP1.Background = Brushes.Gold; borderForP1.Margin = new Thickness(25, 23, 0, 23); borderForP1.Padding = new Thickness(5, 0, 5, 0); borderForP1.BorderBrush = Brushes.White; borderForP1.BorderThickness = new Thickness(2); // PLAYER1 LABEL labelForP1.Content = room.Owner; labelForP1.FontSize = 25; labelForP1.Foreground = Brushes.Black; labelForP1.VerticalAlignment = VerticalAlignment.Center; labelForP1.FontWeight = FontWeights.Bold; borderForP1.Child = labelForP1; // IMAGE try { VSimage.Source = new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + "/Images/GUI/VS.png", UriKind.Absolute)); } catch (Exception) { logger.Log("Couldn't load 'versus image' in game room " + ID); } VSimage.Width = 60; VSimage.Margin = new Thickness(25, 0, 25, 0); // PLAYER2 BORDER borderForP2.CornerRadius = new CornerRadius(10); borderForP2.HorizontalAlignment = HorizontalAlignment.Left; borderForP2.Background = Brushes.Gold; borderForP2.Margin = new Thickness(0, 23, 20, 23); borderForP2.Padding = new Thickness(5, 0, 5, 0); borderForP2.BorderBrush = Brushes.White; borderForP2.BorderThickness = new Thickness(2); // PLAYER2 LABEL labelForP2.Content = room.Guest; labelForP2.FontSize = 25; labelForP2.Foreground = Brushes.Black; labelForP2.VerticalAlignment = VerticalAlignment.Center; labelForP2.FontWeight = FontWeights.Bold; borderForP2.Child = labelForP2; dp.Children.Add(borderForP1); dp.Children.Add(VSimage); dp.Children.Add(borderForP2); grid.Children.Add(dp); // STATE stateLabel.Content = room.State; stateLabel.FontSize = 23; stateLabel.Foreground = Brushes.White; stateLabel.HorizontalAlignment = HorizontalAlignment.Center; stateLabel.VerticalAlignment = VerticalAlignment.Center; stateLabel.FontWeight = FontWeights.Bold; grid.Children.Add(stateLabel); Grid.SetColumn(stateLabel, 1); // mainButton Style style = Parent.FindResource("buttonStyle") as Style; mainButton.Style = style; mainButton.HorizontalAlignment = HorizontalAlignment.Right; mainButton.VerticalAlignment = VerticalAlignment.Top; mainButton.Cursor = System.Windows.Input.Cursors.Hand; mainButton.Background = Brushes.Black; mainButton.Foreground = Brushes.White; mainButton.FontSize = 20; mainButton.Margin = new Thickness(10, 10, 10, 0); mainButton.Width = 110; mainButton.Click += btnMain_Click; // if it's your room then you can close it if (OwnRoom) { mainButton.Content = "Close"; mainButtonIsJoin = false; } else { // if it's not your room then you can join it if it's free, otherwise you can't do anything mainButton.Content = "Join"; mainButtonIsJoin = true; if (room.Guest != "*") { mainButton.IsEnabled = false; } } // readyButton readyButton.Style = style; readyButton.HorizontalAlignment = HorizontalAlignment.Right; readyButton.VerticalAlignment = VerticalAlignment.Bottom; readyButton.Cursor = System.Windows.Input.Cursors.Hand; readyButton.Background = Brushes.Black; readyButton.Foreground = Brushes.White; readyButton.FontSize = 20; readyButton.Margin = new Thickness(10, 0, 10, 10); readyButton.Width = 110; readyButton.Content = "Ready"; readyButton.IsEnabled = false; readyButton.Click += btnReady_Click; grid.Children.Add(mainButton); grid.Children.Add(readyButton); Grid.SetColumn(mainButton, 2); Grid.SetColumn(readyButton, 2); Border.Child = grid; }