コード例 #1
0
ファイル: UserIdetifier.cs プロジェクト: CheSNik/FoolGame
        //TODO include DB Manager that reads Names from DataBase

        public UserIdetifier(ISecondaryInputProvider inputProvider, IDBManager dbManager)
        {
            _inputProvider = inputProvider;
            _dbManager     = dbManager;

            Console.WriteLine("Enter you User Name");
            Console.WriteLine("0: Create New User");
            //DBManager return List<string> userNames; UserNames = userNames
            for (int i = 1; i <= UserNames.Count; i++)
            {
                Console.WriteLine($"{i}: {UserNames[i - 1]}");
            }

            int intChoiceResult = ReturnUsersChoice();

            if (intChoiceResult == 0)
            {
                _userName = ReturnNewUserName();
                while (UserNames.Contains(_userName))
                {
                    _userName = ReturnNewUserName();
                }

                Log.Information($"Created new user, name is {_userName}, in {nameof(UserIdetifier)}");
                //DB Creates new entity with This name in DB
            }
            else
            {
                _userName = UserNames[intChoiceResult - 1];
            }
        }
コード例 #2
0
ファイル: GameLoader.cs プロジェクト: CheSNik/FoolGame
        /// <summary>
        /// If user Identified in UserIdetifier class, than GamePicker loads games and Save choice to the Game linked with User,
        /// if New User, than Game remains null.
        /// </summary>
        /// <param name="inputProvider"></param>
        /// <param name="userIdetifier"></param>
        /// <param name="dbManager"></param>
        public GameLoader(ISecondaryInputProvider inputProvider, IUserIdetifier userIdetifier, IDBManager dbManager)
        {
            // DB manager load GameNames from DB linked with Name: GameType, Deck, Players
            //DBManager.load => returns List<Game>
            _inputProvider = inputProvider;
            _dbManager     = dbManager;
            _userIdetifier = userIdetifier;


            Console.WriteLine("0: Play New Game");
            //DBManager return List<Game> _gameList; _gameList = gameList
            for (int i = 1; i <= _gameList.Count; i++)
            {
                Console.WriteLine($"{i}: {_gameList[i - 1]}");
            }

            GameNum = ReturnUsersChoice();
            if (GameNum > 1 && GameNum < _gameList.Count)
            {
                //Game = DBManager.Load(_gameList[GameType];
                Log.Information($"Creater List of available saved games, in {nameof(GameLoader)}");
                //DB Creates new entity with This name in DB
            }
        }
コード例 #3
0
ファイル: GameSetter.cs プロジェクト: CheSNik/FoolGame
        public GameSetter(IConfigurationSetter languageSet, ISecondaryInputProvider inputProvider,
                          IPlayerFactory playerFactory, IStrategyFactory strategyFactory)
        {
            if (languageSet == null || playerFactory == null || strategyFactory == null || inputProvider == null)
            {
                throw new NullReferenceException(nameof(GameSetter));
            }

            LanguageSet     = languageSet;
            PlayerFactory   = playerFactory;
            StrategyFactory = strategyFactory;
            InputProvider   = inputProvider;

            GameType = inputProvider.ReturnTypeOfGame();
            if (GameType == 1)
            {
                CreatePlayersFor36CardGame();
            }

            if (GameType == 2)
            {
                CreatePlayersFor54CardGame();
            }
        }