示例#1
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            if (CurrentGame?.State == SabberStoneCore.Enums.State.RUNNING)
            {
                var curPlayer = CurrentGame.CurrentPlayer;
                var nextTask  = CurrentSolution[0];
                CurrentSolution.Remove(nextTask);
                CurrentGame.Process(nextTask);
                ShowCurrentSolution();
                if (CurrentGame.CurrentPlayer != curPlayer || CurrentGame.CurrentPlayer.Choice != null)
                {
                    BtnStart.IsEnabled     = false;
                    SlidMaxDepth.IsEnabled = false;
                    SlidMaxWidth.IsEnabled = false;
                }
            }
            else
            {
                TxtPlayer1.Text = "* Starting a new Game .... ***";

                CurrentGame = new Game(GuiHelper.CreateGameConfig((MetaDeck)CboxDeck1.SelectedItem, (MetaDeck)CboxDeck2.SelectedItem));
                CurrentGame.StartGame();
                CboxDeck1.IsEnabled    = false;
                CboxDeck2.IsEnabled    = false;
                CboxAi1.IsEnabled      = false;
                CboxAi2.IsEnabled      = false;
                BtnStart.IsEnabled     = false;
                SlidMaxDepth.IsEnabled = false;
                SlidMaxWidth.IsEnabled = false;
            }

            Actualize();
        }