Beispiel #1
0
 private static void StartNextTurn(bool nextPlayer = true)
 {
     if (nextPlayer)
     {
         Game.Current.CurrentPlayerIndex++;
         if (Game.Current.CurrentPlayerIndex >= Game.Current.Players.Count)
         {
             Game.Current.CurrentPlayerIndex = 0;
         }
     }
     SidebarController.ToggleUserButtons(Game.Current.CurrentPlayer.IsAI == false);
     SidebarController.RenderTurnPlayerLabel();
     SidebarController.RenderTurnPointsLabel(0);
     SidebarController.RenderScoreboard();
     HandController.LoadHand(Game.Current.CurrentPlayer);
     if (Game.Current.CurrentPlayer.IsAI)
     {
         Game.Current.CurrentPlayer.AI.PlayTurn();
     }
     else
     {
         if (nextPlayer)
         {
             Game.Save(autosave: true);
         }
     }
 }
Beispiel #2
0
        public static void NewGame(Panel contentContainer = null)
        {
            Game.Current = new Game()
            {
                Id = DateTime.Now.ToString("yyyyMMddHHmmss")
            };

            foreach (var player in UserSettings.Players)
            {
                Game.Current.Players.Add(new Player.Player(player.Name, player.Avatar, player.AI));
            }
            Game.Current.CurrentPlayerIndex = 0;
            SidebarController.RenderTurnPlayerLabel();

            DeckController.LoadDeck();
            HandController.ReturnAllToHand(changeVisualPosition: true);
            HandController.LoadHand(Game.Current.CurrentPlayer);
            HandController.SaveHand(Game.Current.CurrentPlayer);
            BoardController.LoadBoard(contentContainer ?? Program.MainView.Controls.Find("content", true).First());
        }