public static List <Player> Create(List <Player> loadCustomRoster)
        {
            if (loadCustomRoster.Any())
            {
                customRoster = loadCustomRoster;
            }
            else
            {
                customRoster = new List <Player>();
            }

            #region Player Initialization
            // Team
            Console.Clear();
            newPlayerTeam = AssignPlayerTeam();

            // Name
            Console.Clear();
            TextFormat.Log("Team: " + newPlayerTeam + "\n");
            newPlayerName = AssignPlayerName();

            // Number
            Console.Clear();
            TextFormat.Log("Team: " + newPlayerTeam +
                           "\nName: " + newPlayerName + "\n");
            newPlayerNumber = (byte)AssignPlayerNumber();

            // Position
            Console.Clear();
            TextFormat.Log("Team: " + newPlayerTeam +
                           "\nName: " + newPlayerName +
                           "\nNumber: " + newPlayerNumber + "\n");
            newPlayerPosition = (Positions)AssignPlayerPosition();
            #endregion

            #region Roster Validations
            Player newPlayer = new Player(newPlayerTeam, newPlayerName, newPlayerPosition, newPlayerNumber);
            Console.Clear();
            Console.Write($"Checking {newPlayerTeam} roster");
            for (int i = 0; i < 3; i++)
            {
                Thread.Sleep(625);
                Console.Write('.');
            }
            Thread.Sleep(625);
            Console.WriteLine();

            PositionValidation(newPlayer);
            NameNumberValidation(newPlayer);
            #endregion

            #region Stat Points Allocation
            Console.Clear();
            TextFormat.Log($"Success! Welcome to the {newPlayerTeam}, {newPlayer.Name}!\n");
            short spBank = (short)SelectDifficulty();
            Console.Clear();
            AllocatePoints(newPlayer, spBank);
            #endregion

            customRoster.Add(newPlayer);
            Console.Clear();
            TextFormat.Green($"{newPlayer.Name} has been successfully added to the {newPlayerTeam.Name} roster!\n");
            Thread.Sleep(1000);
            Console.WriteLine("Press any key to return to the main menu...");
            Console.ReadKey();
            return(customRoster);
        }