示例#1
0
        public async Task <List <UserCardsViewModel> > GetBotsCards(int gameId, int roundId)
        {
            var bots = _userRepository.GetAll()
                       .Where(bot => bot.TypeId == (int)PlayerTypeEnum.Bot && bot.GameId == gameId);
            var listOfBotCards = new List <UserCardsViewModel>();

            foreach (var bot in bots)
            {
                var userCardViewModel = new UserCardsViewModel();
                userCardViewModel.name = bot.Name;
                userCardViewModel.id   = bot.Id;
                for (int i = 0; i < _countCardsForStartGame; i++)
                {
                    var cardId      = Randomizer.RandomId();
                    var cardForUser = _cardRepository.Get(cardId);
                    userCardViewModel.cards.Add(cardForUser.Id);
                    var userCard = new UserCard();
                    userCard.CardId  = cardForUser.Id;
                    userCard.UserId  = bot.Id;
                    userCard.RoundId = roundId;
                    await _userCardRepository.CreateAsync(userCard);

                    Thread.Sleep(100);
                }
                listOfBotCards.Add(userCardViewModel);
            }

            return(listOfBotCards);
        }
示例#2
0
        public async Task <UserCardsViewModel> GetCardsForStartGame(int gameId, string userName, int idRound)
        {
            try
            {
                int countsCardsInStartGame = 2;
                var user      = _userRepository.GetAll().SingleOrDefault(x => x.GameId == gameId && x.Name == userName);
                var userCards = new UserCardsViewModel();
                userCards.id = user.Id;
                for (int i = 0; i < countsCardsInStartGame; i++)
                {
                    var random      = Randomizer.RandomId();
                    var cardForUser = _cardRepository.Get(random);
                    userCards.cards.Add(cardForUser.Id);
                    var userCard = new UserCard();
                    userCard.CardId  = cardForUser.Id;
                    userCard.UserId  = user.Id;
                    userCard.RoundId = idRound;
                    await _userCardRepository.CreateAsync(userCard);

                    Thread.Sleep(100);
                }
                return(userCards);
            }
            catch (Exception e)
            {
                LogWriter.WriteLog(e.Message, "RoundService");
                return(null);
            }
        }
示例#3
0
        public async Task <UserCardsViewModel> GetPlayerDealerCards(int role, int gameId, int roundId)
        {
            var userCards = new UserCardsViewModel();
            var user      = _userRepository.GetAll().Single(player => player.GameId == gameId && player.TypeId == role);

            userCards.id   = user.Id;
            userCards.name = user.Name;
            for (int i = 0; i < _countCardsForStartGame; i++)
            {
                var cardId      = Randomizer.RandomId();
                var cardForUser = _cardRepository.Get(cardId);
                userCards.cards.Add(cardForUser.Id);
                var userCard = new UserCard();
                userCard.CardId  = cardForUser.Id;
                userCard.UserId  = user.Id;
                userCard.RoundId = roundId;
                await _userCardRepository.CreateAsync(userCard);

                Thread.Sleep(100);
            }

            return(userCards);
        }
 public YourCardsPage()
 {
     InitializeComponent();
     BindingContext = new UserCardsViewModel();
 }