コード例 #1
0
ファイル: GameService.cs プロジェクト: Robrownn/TigerBot
        public TigerGame Add(TigerGame newGame)
        {
            _context.Games.Add(newGame);
            _context.SaveChanges();

            return(newGame);
        }
コード例 #2
0
ファイル: UserGameService.cs プロジェクト: Robrownn/TigerBot
        public UserGame Add(User user, TigerGame game)
        {
            var selectedUser = _context.Users.Where(u => u.UserName == user.UserName).FirstOrDefault();
            var selectedGame = _context.Games.Where(g => g.GameName == game.GameName).FirstOrDefault();

            if (selectedUser != null && selectedGame != null)
            {
                try
                {
                    var newUserGame = new UserGame
                    {
                        UserID = selectedUser.Id,
                        GameID = selectedGame.Id
                    };

                    _context.UserGames.Add(newUserGame);
                    _context.SaveChanges();
                    return(newUserGame);
                }catch (Exception ex)
                {
                    Console.WriteLine($"{ex.Source}: {ex.Message}");
                }
            }

            return(null);
        }
コード例 #3
0
        public async Task <bool> UserGameExists(SocketGuildUser y)
        {
            var newUser = new User
            {
                UserName = y.Mention
            };

            var newGame = new TigerGame
            {
                GameName = y.Game.ToString()
            };

            var ExistingUser = _users.Get(newUser);
            var ExistingGame = _games.Get(newGame);

            if (ExistingUser == null)
            {
                throw new UserNotFoundException("User not found!");
            }
            if (ExistingGame == null)
            {
                throw new GameNotFoundException("Game not found!");
            }


            if (_ug.Get(ExistingUser, ExistingGame) is null)
            {
                return(false);
            }

            return(true);
        }
コード例 #4
0
        private async Task AddUserGame(SocketGuildUser y)
        {
            try
            {
                // Create an ad-hoc user and game
                var newUser = new User
                {
                    UserName = y.Mention
                };
                var newGame = new TigerGame
                {
                    GameName = y.Game.ToString()
                };

                // get the actual user and game. These values have to be present in order to make the game.
                var user = _users.Get(newUser);
                var game = _games.Get(newGame);

                if (user == null)
                {
                    throw new UserNotFoundException($"{newUser.UserName} not found.");
                }
                if (game == null)
                {
                    throw new GameNotFoundException($"{newGame.GameName} not found.");
                }
                _ug.Add(user, game);

                await Log(CreateLogMessage(LogSeverity.Info, "Add usergame to usergame table", $"Added {newUser.UserName}, {newGame.GameName}."));
            }
            catch (Exception ex)
            {
                await Log(CreateLogMessage(LogSeverity.Critical, $"{ex.Source}", $"Exception: {ex.Message}"));
            }
        }
コード例 #5
0
ファイル: Summon.cs プロジェクト: Robrownn/TigerBot
        private TigerGame CreateNewGame(string gameName)
        {
            var newGame = new TigerGame
            {
                GameName = gameName
            };

            return(newGame);
        }
コード例 #6
0
ファイル: Summon.cs プロジェクト: Robrownn/TigerBot
        private bool CheckUserGameExists(TigerGame game, User user)
        {
            var selectedUserGame = _userGames.Get(user, game);

            if (selectedUserGame == null)
            {
                return(false);
            }

            return(true);
        }
コード例 #7
0
ファイル: Summon.cs プロジェクト: Robrownn/TigerBot
        private bool CheckGameExists(TigerGame game)
        {
            var selectedGame = _games.Get(game);

            if (selectedGame == null)
            {
                return(false);
            }

            return(true);
        }
コード例 #8
0
        public async Task <bool> GameExists(SocketGuildUser game)
        {
            var newGame = new TigerGame
            {
                GameName = game.Game.ToString()
            };

            if (_games.Get(newGame) != null)
            {
                return(true);
            }

            return(false);
        }
コード例 #9
0
ファイル: UserGameService.cs プロジェクト: Robrownn/TigerBot
        public IQueryable <UserGame> GetGameUsersLoose(TigerGame game)
        {
            var selectedGame = _context.Games.Where(g => g.GameName.Contains(game.GameName)).FirstOrDefault();

            if (selectedGame != null)
            {
                var newUserGame = new UserGame
                {
                    GameID = selectedGame.Id
                };

                return(_context.UserGames.Where(ug => ug.GameID == newUserGame.GameID).OrderBy(ug => ug.GameID == newUserGame.GameID));
            }

            return(null);
        }
コード例 #10
0
        private async Task AddGameToGameTable(SocketGuildUser game)
        {
            try
            {
                var newGame = new TigerGame
                {
                    GameName = game.Game.ToString()
                };
                _games.Add(newGame);

                await Log(CreateLogMessage(LogSeverity.Info, "Add game to game table", $"Added {newGame.GameName}"));
            }
            catch (Exception ex)
            {
                await Log(CreateLogMessage(LogSeverity.Critical, $"{ex.Source}", $"Exception: {ex.Message}"));
            }
        }
コード例 #11
0
ファイル: GameService.cs プロジェクト: Robrownn/TigerBot
 public TigerGame Update(TigerGame game)
 {
     throw new NotImplementedException();
 }
コード例 #12
0
ファイル: GameService.cs プロジェクト: Robrownn/TigerBot
 public TigerGame GetGameById(TigerGame game)
 {
     return(_context.Games.FirstOrDefault(g => g.Id == game.Id));
 }
コード例 #13
0
ファイル: GameService.cs プロジェクト: Robrownn/TigerBot
 public TigerGame Get(TigerGame game)
 {
     return(_context.Games.FirstOrDefault(g => g.GameName.Equals(game.GameName)));
 }