예제 #1
0
def runHooks(gameTime, postGameHooks):
    games = CachingGameStore(config.ladderFilePath).loadGames({'now': True}, PresetTransforms.transforms_for_recent())
    try:
        game = next(g for g in games if g.time == gameTime)
        for hook in postGameHooks:
            hook(game)
    except StopIteration:
        pass
예제 #2
0
    def __init__(self, ladderFilePath, timeRange=None, transforms=None, games=None, postGameHooks=[]):
        self.games = []
        self.players = {}
        self._recentlyActivePlayers = (-1, [])

        self._ladderTime = {'now': timeRange is None, 'range': timeRange}
        self._theTime = time.time()
        self.postGameHooks = postGameHooks

        self._gameStore = None
        if games is None:
            self._gameStore = CachingGameStore(ladderFilePath)
            transforms = PresetTransforms.transforms_for_full_games(self._ladderTime) if transforms is None else transforms
            games = self._gameStore.loadGames(self._ladderTime, transforms)
        withAchievements = 'achievement' in [t.getName() for t in transforms] if transforms is not None else True
        self._loadGamesIntoLadder(games, withAchievements)
예제 #3
0
파일: ladder.py 프로젝트: donqstepper/TNTFL
    def __init__(self,
                 ladderFilePath,
                 useCache=True,
                 timeRange=None,
                 transforms=None,
                 games=None):
        self.games = []
        self.players = {}
        self.achievements = Achievements()
        self._skillChange = Elo()
        self._recentlyActivePlayers = (-1, [])

        self._ladderTime = {'now': timeRange is None, 'range': timeRange}
        self._theTime = time.time()

        self._gameStore = None
        if games is None:
            self._gameStore = CachingGameStore(ladderFilePath, useCache)
            transforms = PresetTransforms.transforms_for_full_games(
                self._ladderTime) if transforms is None else transforms
            games = self._gameStore.loadGames(self._ladderTime, transforms)
        self._loadGamesIntoLadder(games)