コード例 #1
0
 def createGame(self,gameName,players):
     if (gameName == "ChessGame"):
         game = ChessGame(str(self.getNextGameId()),players)
         self.db.createGame(game.getId(),game.json(),players[0] + "," + players[1],game.getWhoseTurn())
         for player in players:
             self.db.addGameIdToUser(game.getId(),player)
         return game
     else:
         print("Error, game: " + gameName + " Does not exist")
         return None
コード例 #2
0
 def getGamesForUser(self,userName):
     """Returns a list of games for a user"""
     gameIdsCsv = self.db.getGamesForUser(userName)
     if (gameIdsCsv == [(None,)] or gameIdsCsv == [] or gameIdsCsv == [("",)]):
         return []
     else:
         gameIds = intifyList(gameIdsCsv[0][0].split(","))
         games = []
         for game_id in gameIds:
             game = self.db.getByGameId(game_id)[0]
             game_data = game[1]
             players = game[2]
             if ("chessGame" in game_data):
                 theGame = ChessGame(str(game_id),players)
                 theGame.decode(game_data.get("chessGame"))
                 games.append(theGame)
         return games
コード例 #3
0
 def getGamesForUser(self, userName):
     """Returns a list of games for a user"""
     gameIdsCsv = self.db.getGamesForUser(userName)
     if (gameIdsCsv == [(None, )] or gameIdsCsv == []
             or gameIdsCsv == [("", )]):
         return []
     else:
         gameIds = intifyList(gameIdsCsv[0][0].split(","))
         games = []
         for game_id in gameIds:
             game = self.db.getByGameId(game_id)[0]
             game_data = game[1]
             players = game[2]
             if ("chessGame" in game_data):
                 theGame = ChessGame(str(game_id), players)
                 theGame.decode(game_data.get("chessGame"))
                 games.append(theGame)
         return games
コード例 #4
0
 def createGame(self, gameName, players):
     if (gameName == "ChessGame"):
         game = ChessGame(str(self.getNextGameId()), players)
         self.db.createGame(game.getId(), game.json(),
                            players[0] + "," + players[1],
                            game.getWhoseTurn())
         for player in players:
             self.db.addGameIdToUser(game.getId(), player)
         return game
     else:
         print("Error, game: " + gameName + " Does not exist")
         return None
コード例 #5
0
    def createGame(self,gameName,players):
        """
            Input: gameName: String, players: List[String]
            Output: Success[Game] or Failure
        """
        gameId = self.getNextGameId()
        if (not self.playersExist(players)):
            return Failure("User does not exist")
        elif (gameName == "ChessGame"):
            game = ChessGame(str(gameId),players)
            playerOneIds = self.database.getGameIdsForUser(players[0]).get()[0][0]
            newPlayerOneIds = listToCsvString(playerOneIds.split(",").append(gameId))

            playerTwoIds = self.database.getGameIdsForUser(players[1]).get()[0][0]
            newPlayerTwoIds = listToCsvString(playerTwoIds.split(",").append(gameId))

            updateOne = self.database.updateGameIdsForUser(newPlayerOneIds,players[0])
            updateTwo = self.database.updateGameIdsForUser(newPlayerTwoIds,players[1])
            if (updateOne.isSuccess() and updateTwo.isSuccess()):
                return Success(game)
            else:
                Failure("Failed to update game ids for a user")
        else:
            return Failure("Generic Failure")