public GameRunner CreateNewGame()
        {
            // Player chooses amount of players

            Game = new LudoGame()
            {
                Created = DateTime.Now
            };
            Game.GamePlayers.Players = new List <GamePlayer>();
            Game.Moves    = new List <GameMove>();
            Game.Status   = "Created";
            Game.GameName = InputDialogs.GetGameName();
            int playerAmount = InputDialogs.GetPlayerAmount();

            Game.GamePlayers.Players = InputDialogs.GetPlayers(playerAmount);

            int startingPlayerIndex = new Random().Next(0, Game.GamePlayers.Players.Count);

            Game.NextPlayer = Game.GamePlayers.Players[startingPlayerIndex];

            Game.PieceSetup = Tools.GetGamePieceSetup(Game.GamePlayers.Players);
            Board.UpdateBoardBases(Game.PieceSetup);

            if (DbConnectionIsActive)
            {
                var db = new LudoGameDbContext();
                SaveNewGameTask = new Task(() => SaveGameToDataBase(db));
                SaveNewGameTask.Start();
            }

            return(this);
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Welcome to Ludo!");
            Console.WriteLine("Number of players:");
            int numberOfPlayers = int.Parse(Console.ReadLine());
            var game            = new GameEngine.LudoGame();

            game.StartGame(numberOfPlayers);
        }
        public void LoadGameFromDatabase(LudoGame ludoGame, LudoGameDbContext db)
        {
            Game = db.Games
                   .Where(g => g == ludoGame)
                   .Include(g => g.GamePlayers)
                   .Include(g => g.Moves)
                   .Include(g => g.PieceSetup)
                   .SingleOrDefault();

            var gamePlayers = db.PlayersInGame
                              .Where(pig => pig.GamePlayersId == Game.LudoGameId)
                              .Include("Players")
                              .Single();

            var id = Game.LudoGameId;

            Game.GamePlayers = gamePlayers;
        }