private void SetupGame()
        {
            Info_Player.SetupAllArmy();
            int playerid = 0;

            foreach (CommanderType com in CurrentGame.Commanders)
            {
                Info_Player player = new Info_Player();
                {
                    player.Commander     = com;
                    player.CommanderPath = Program.PATH_COMMANDER[com.ModelID];
                }
                player.Initialise();
                CurrentPlayers.Add(player);

                // Load their armies
                if (player.Commander.Armies != null)
                {
                    foreach (ArmyType armytype in player.Commander.Armies)
                    {
                        Entity_PlayerArmy army = new Entity_PlayerArmy();
                        {
                            army.Player = playerid;
                            army.MoveToSystem(Galaxy.GetSystemByID(armytype.SystemPosition));
                        }
                        player.Armies.Add(army);
                        Scene.Instance.Add(army);
                    }
                }

                // NOTE: Depends on player being in the CurrentPlayers list first
                // Load the owned systems from the json into the galaxy map
                if (player.Commander.OwnedSystems != null)
                {
                    foreach (int systemid in player.Commander.OwnedSystems)
                    {
                        Entity_StarSystem system = Galaxy.GetSystemByID(systemid);
                        system.SetOwner(playerid);
                    }
                }

                playerid++;
            }

            // Temp testing
            RewardSelection();
        }
        public void DoTurn(int action, int systemid, int player, int armyid, bool doturn = true)
        {
            // Actually perform the turn if received confirmation
            if (doturn)
            {
                Entity_PlayerArmy army   = Helper.GetPlayerArmy(player, armyid);
                Entity_StarSystem system = Galaxy.GetSystemByID(systemid);
                switch (action)
                {
                case Helper.ACTION_MOVE:
                    system.Action_Move(army);
                    break;

                case Helper.ACTION_WAR:
                    system.Action_War(army);
                    break;

                default:
                    break;
                }
            }

            // Add to turn history
            if (CurrentGame.TurnHistory == null)
            {
                CurrentGame.TurnHistory = new List <TurnType>();
            }

            TurnType turn;

            {
                turn.ActionID = action;
                turn.Player   = player;
                turn.Data     = systemid + " " + armyid;
            }
            CurrentGame.TurnHistory.Add(turn);
        }