def getRosters(self, keys = None):
        rosters = prb_getters.getPrebattleRosters()
        prbRosters = PREBATTLE_ROSTER.getRange(self.getEntityType(), self.getPlayerTeam())
        result = dict(((r, []) for r in prbRosters))
        for roster in prbRosters:
            if roster in rosters:
                result[roster] = map(lambda accInfo: prb_items.PlayerPrbInfo(accInfo[0], functional=self, roster=roster, **accInfo[1]), rosters[roster].iteritems())

        return result
示例#2
0
    def getRosters(self, keys = None):
        rosters = prb_getters.getPrebattleRosters()
        prbRosters = PREBATTLE_ROSTER.getRange(self.getEntityType(), self.getPlayerTeam())
        result = dict(((r, []) for r in prbRosters))
        for roster in prbRosters:
            if roster in rosters:
                result[roster] = map(lambda accInfo: prb_items.PlayerPrbInfo(accInfo[0], functional=self, roster=roster, **accInfo[1]), rosters[roster].iteritems())

        return result
示例#3
0
    def getPlayerInfoByDbID(self, dbID):
        rosters = prb_getters.getPrebattleRosters()
        rosterRange = PREBATTLE_ROSTER.getRange(self.getEntityType())
        for roster in rosterRange:
            if roster in rosters:
                for pID, data in rosters[roster].iteritems():
                    if data['dbID'] == dbID:
                        return prb_items.PlayerPrbInfo(pID, functional=self, roster=roster, **rosters[roster][pID])

        return prb_items.PlayerPrbInfo(-1L)
示例#4
0
    def getRosterKey(self, pID = None):
        rosters = prb_getters.getPrebattleRosters()
        rosterRange = PREBATTLE_ROSTER.getRange(self.getEntityType())
        if pID is None:
            pID = account_helpers.getPlayerID()
        for roster in rosterRange:
            if roster in rosters and pID in rosters[roster].keys():
                return roster

        return PREBATTLE_ROSTER.UNKNOWN
    def _getRoleByDatabaseID(self, dbID=None, team=None):
        if dbID is None:
            dbID = account_helpers.getAccountDatabaseID()
        rosters = prb_getters.getPrebattleRosters()
        possibleRosters = PREBATTLE_ROSTER.getRange(self.getEntityType(), team)
        for roster in possibleRosters:
            if roster in rosters:
                for data in rosters[roster].itervalues():
                    if data['dbID'] == dbID:
                        return data.get('role', 0)

        return 0
示例#6
0
    def getPlayerInfo(self, pID = None, rosterKey = None):
        rosters = prb_getters.getPrebattleRosters()
        if pID is None:
            pID = account_helpers.getPlayerID()
        if rosterKey is not None:
            if rosterKey in rosters and pID in rosters[rosterKey].keys():
                return prb_items.PlayerPrbInfo(pID, functional=self, roster=rosterKey, **rosters[rosterKey][pID])
        else:
            rosterRange = PREBATTLE_ROSTER.getRange(self.getEntityType())
            for roster in rosterRange:
                if roster in rosters and pID in rosters[roster].keys():
                    return prb_items.PlayerPrbInfo(pID, functional=self, roster=roster, **rosters[roster][pID])

        return prb_items.PlayerPrbInfo(-1L)
示例#7
0
 def __init__(self, prbType):
     super(TeamNoPlayersInBattle, self).__init__()
     self.__range = PREBATTLE_ROSTER.getRange(prbType)
示例#8
0
文件: limits.py 项目: kblw/wot_client
 def __init__(self, prbType):
     super(TeamNoPlayersInBattle, self).__init__()
     self.__range = PREBATTLE_ROSTER.getRange(prbType)