private void PakerButtonClick(object sender, RoutedEventArgs e) { if (this.DataContext is MainData data) { data.GameData = new PokerData(); } PageChangeRequested?.Invoke(PageRequest.GamePage); }
private void BlackJacksonButtonClicked(object sender, RoutedEventArgs e) { if (this.DataContext is MainData data) { data.GameData = new BlackJackData(); } PageChangeRequested?.Invoke(PageRequest.GamePage); }
//Restarts the game with the same options and a win counter private void RestartButtonClicked(object sender, RoutedEventArgs e) { if (DataContext is MainPageData data) { data.ResetGame(); } PageChangeRequested.Invoke(PageRequest.Game); }
//Takes the player back to the Main Menu page private void NewGameButtonClicked(object sender, RoutedEventArgs e) { if (DataContext is MainPageData data) { data.ResetGame(); data.ResetWinCount(); } PageChangeRequested.Invoke(PageRequest.Main); }
private void Page_Loaded(object sender, RoutedEventArgs e) { if (DataContext is MainPageData data) { winningLabel.Content = $"|{data.PlayerOne.NumberOfWins} - {data.PlayerTwo.NumberOfWins}|"; //creating a timer if it is not already created if (timer is null) { timer = new Timer(); timer.Interval = 1000; timer.Elapsed += OnTimedEvent; } //painting the background of the current turn player UpdateHighlight(); //draws the board if there are any pieces still on it. DrawPieces(data.Game.Pieces, data); if (!hasBeenSet) { //making sure to not add more than one event handler to the game. hasBeenSet = true; //setting up for captures data.Game.Capture += (color) => { RemovePieces(data.Game.PiecesToBeRemoved); data.UpdateCaptureValues(); data.Game.PiecesToBeRemoved.Clear(); }; data.Game.ComputerTurnMade += (point) => Dispatcher.Invoke(() => DrawPiece(FindRectangle(point), PieceColor.White)); data.Game.Win += (color) => PageChangeRequested?.Invoke(PageRequest.GameOver); //hijacking the property changed event in order to update the highlight and stop the timer when we change the current turn. data.PropertyChanged += (s, eve) => { if (eve.PropertyName == nameof(data.CurrentTurn)) { //timer.Stop(); data.TimerCount = 20; UpdateHighlight(); } }; } } }
//Opens the help window again private void HelpButtonClicked(object sender, RoutedEventArgs e) { PageChangeRequested?.Invoke(PageRequest.Help); }
private async void ShipControl_GoToCustomizeScalePageButtonPressed(object sender, EventArgs e) { PageChangeRequested?.Invoke(this, UI.Constants.Pages.ScaleSetup); }
private void Button_Click(object sender, RoutedEventArgs e) { PageChangeRequested?.Invoke(PageRequest.Halp); }
private void gOTsHOT(object sender, RoutedEventArgs e) { PageChangeRequested?.Invoke(PageRequest.SettingsPage); }
//Goes to the game window private void StartGame(object sender, RoutedEventArgs e) { PageChangeRequested?.Invoke(PageRequest.Game); }
private async void ScaleSetup_SaveChangesButtonPressed(object sender, EventArgs e) { ScaleSettingsChanged?.Invoke(this, _model.UseScale); PageChangeRequested?.Invoke(this, Constants.Pages.Ship); }