Esempio n. 1
0
 def _createByAccountState(self, ctx):
     created = None
     clientPrb = prb_getters.getClientPrebattle()
     if clientPrb is not None:
         if prb_getters.isPrebattleSettingsReceived(prebattle=clientPrb):
             prbSettings = prb_getters.getPrebattleSettings(
                 prebattle=clientPrb)
             prbType = prb_getters.getPrebattleType(settings=prbSettings)
             clazz = None
             if prbType in _SUPPORTED_FUNCTIONAL:
                 clazz = _SUPPORTED_FUNCTIONAL[prbType]
             ctx.removeFlags(FUNCTIONAL_FLAG.PREBATTLE_BITMASK)
             ctx.addFlags(FUNCTIONAL_FLAG.PREBATTLE)
             if clazz:
                 created = clazz(prbSettings)
             else:
                 LOG_ERROR('Prebattle with given type is not supported',
                           prbType)
                 created = not_supported.NotSupportedFunctional()
         elif not ctx.hasFlags(FUNCTIONAL_FLAG.PREBATTLE_INIT):
             ctx.removeFlags(FUNCTIONAL_FLAG.PREBATTLE_BITMASK)
             ctx.addFlags(FUNCTIONAL_FLAG.PREBATTLE_INIT)
             created = default.PrbInitFunctional()
     else:
         created = self._createByPrbType(ctx)
     return created
Esempio n. 2
0
 def __init__(self, pID, roster, group, waitingID=''):
     super(GroupAssignLegacyCtx,
           self).__init__(entityType=prb_getters.getPrebattleType(),
                          waitingID=waitingID)
     self.__group = group
     self.__pID = pID
     self.__roster = roster
Esempio n. 3
0
 def __init__(self, isReadyState, isInitial=False, waitingID=''):
     super(SetPlayerStateCtx,
           self).__init__(entityType=prb_getters.getPrebattleType(),
                          waitingID=waitingID)
     self.__isReadyState = isReadyState
     self.__isInitial = isInitial
     self.__errorString = ''
Esempio n. 4
0
 def __init__(self, pID, roster, waitingID=''):
     super(AssignLegacyCtx,
           self).__init__(entityType=prb_getters.getPrebattleType(),
                          waitingID=waitingID)
     self.__pID = pID
     self.__roster = roster
     self.__errorString = ''
Esempio n. 5
0
 def __init__(self, roster, fLane, tLane, waitingID=''):
     super(GroupSwapInTeamLegacyCtx,
           self).__init__(entityType=prb_getters.getPrebattleType(),
                          waitingID=waitingID)
     self.__roster = roster
     self.__fromLane = fLane
     self.__toLane = tLane
Esempio n. 6
0
 def join(self, ctx, callback=None):
     if prb_getters.getClientPrebattle() is None or ctx.isForced():
         ctx.startProcessing(callback=callback)
         BigWorld.player().prb_join(ctx.getID())
     else:
         LOG_ERROR(
             'First, player has to confirm exit from the current prebattle',
             prb_getters.getPrebattleType())
         if callback:
             callback(False)
     return
Esempio n. 7
0
 def __init__(self,
              team,
              isReadyState,
              waitingID='',
              isForced=True,
              gamePlayMask=0):
     super(SetTeamStateCtx,
           self).__init__(entityType=prb_getters.getPrebattleType(),
                          waitingID=waitingID,
                          isForced=isForced)
     self.__team = team
     self.__isReadyState = isReadyState
     self.__gamePlayMask = gamePlayMask
Esempio n. 8
0
 def canAssignToTeam(self, team = 1):
     result = super(BattleSessionPrbPermissions, self).canAssignToTeam(team)
     if not result:
         return False
     else:
         clientPrb = prb_getters.getClientPrebattle()
         result = False
         if clientPrb is not None:
             settings = prb_getters.getPrebattleSettings(prebattle=clientPrb)
             rosters = prb_getters.getPrebattleRosters(prebattle=clientPrb)
             prbType = prb_getters.getPrebattleType(clientPrb, settings)
             result, _ = limits.TeamNoPlayersInBattle(prbType).check(rosters, team, settings.getTeamLimits(team))
         return result
Esempio n. 9
0
 def canAssignToTeam(self, team = 1):
     result = super(BattleSessionPermissions, self).canAssignToTeam(team)
     if not result:
         return False
     else:
         clientPrb = prb_getters.getClientPrebattle()
         result = False
         if clientPrb is not None:
             settings = prb_getters.getPrebattleSettings(prebattle=clientPrb)
             rosters = prb_getters.getPrebattleRosters(prebattle=clientPrb)
             prbType = prb_getters.getPrebattleType(clientPrb, settings)
             result, _ = TeamNoPlayersInBattle(prbType).check(rosters, team, settings.getTeamLimits(team))
         return result
Esempio n. 10
0
 def __createByAccountState(self, ctx):
     clientPrb = prb_getters.getClientPrebattle()
     if clientPrb is not None:
         if prb_getters.isPrebattleSettingsReceived(prebattle=clientPrb):
             prbSettings = prb_getters.getPrebattleSettings(
                 prebattle=clientPrb)
             prbType = prb_getters.getPrebattleType(settings=prbSettings)
             clazz = None
             clazz = collectLegacyEntity(prbType)
             if clazz:
                 return clazz(prbSettings)
         else:
             return LegacyInitEntity()
     return self.__createByPrbType(ctx)
Esempio n. 11
0
 def create(self, ctx, callback=None):
     if prb_cooldown.validatePrbCreationCooldown():
         if callback is not None:
             callback(False)
     elif prb_getters.getClientPrebattle() is None or ctx.isForced():
         ctx.startProcessing(callback=callback)
         BigWorld.player().prb_createCompany(ctx.isOpened(),
                                             ctx.getComment(),
                                             ctx.getDivision())
         prb_cooldown.setPrbCreationCooldown()
     else:
         LOG_ERROR(
             'First, player has to confirm exit from the current prebattle',
             prb_getters.getPrebattleType())
         if callback is not None:
             callback(False)
     return
Esempio n. 12
0
 def create(self, ctx, callback=None):
     if not isinstance(ctx, EpicTrainingSettingsCtx):
         LOG_ERROR('Invalid context to create training', ctx)
         if callback is not None:
             callback(False)
     elif not self.canCreate():
         if callback is not None:
             callback(False)
     elif prb_getters.getClientPrebattle() is None or ctx.isForced():
         ctx.startProcessing(callback=callback)
         BigWorld.player().prb_createEpicTrainingBattle(
             ctx.getArenaTypeID(), ctx.getRoundLen(), ctx.isOpened(),
             ctx.getComment())
         cooldown.setPrbCreationCooldown()
     else:
         LOG_ERROR(
             'First, player has to confirm exit from the current prebattle',
             prb_getters.getPrebattleType())
         if callback is not None:
             callback(False)
     return
Esempio n. 13
0
 def __createByAccountState(self, ctx):
     """
     Tries to create entity by current account state.
     Args:
         ctx: creation request context.
     
     Returns:
         new prebattle legacy entity
     """
     clientPrb = prb_getters.getClientPrebattle()
     if clientPrb is not None:
         if prb_getters.isPrebattleSettingsReceived(prebattle=clientPrb):
             prbSettings = prb_getters.getPrebattleSettings(prebattle=clientPrb)
             prbType = prb_getters.getPrebattleType(settings=prbSettings)
             clazz = None
             if prbType in _SUPPORTED_ENTITY:
                 clazz = _SUPPORTED_ENTITY[prbType]
             if clazz:
                 return clazz(prbSettings)
         else:
             return LegacyInitEntity()
     return self.__createByPrbType(ctx)
Esempio n. 14
0
 def _createByAccountState(self, ctx):
     created = None
     clientPrb = prb_getters.getClientPrebattle()
     if clientPrb is not None:
         if prb_getters.isPrebattleSettingsReceived(prebattle=clientPrb):
             prbSettings = prb_getters.getPrebattleSettings(prebattle=clientPrb)
             prbType = prb_getters.getPrebattleType(settings=prbSettings)
             clazz = None
             if prbType in _SUPPORTED_FUNCTIONAL:
                 clazz = _SUPPORTED_FUNCTIONAL[prbType]
             ctx.removeFlags(FUNCTIONAL_FLAG.PREBATTLE_BITMASK)
             ctx.addFlags(FUNCTIONAL_FLAG.PREBATTLE)
             if clazz:
                 created = clazz(prbSettings)
             else:
                 LOG_ERROR('Prebattle with given type is not supported', prbType)
                 created = not_supported.NotSupportedFunctional()
         elif not ctx.hasFlags(FUNCTIONAL_FLAG.PREBATTLE_INIT):
             ctx.removeFlags(FUNCTIONAL_FLAG.PREBATTLE_BITMASK)
             ctx.addFlags(FUNCTIONAL_FLAG.PREBATTLE_INIT)
             created = default.PrbInitFunctional()
     else:
         created = self._createByPrbType(ctx)
     return created
Esempio n. 15
0
 def __init__(self, isReadyState, waitingID = ''):
     super(SetPlayerStateCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__isReadyState = isReadyState
Esempio n. 16
0
 def __init__(self, **kwargs):
     super(SwapTeamsCtx, self).__init__(entityType=prb_getters.getPrebattleType(), **kwargs)
Esempio n. 17
0
 def __init__(self, pID, roster, waitingID = ''):
     super(AssignPrbCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__pID = pID
     self.__roster = roster
Esempio n. 18
0
 def __init__(self, team, isReadyState, waitingID = '', isForced = True, gamePlayMask = 0):
     super(SetTeamStateCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID, isForced=isForced)
     self.__team = team
     self.__isReadyState = isReadyState
     self.__gamePlayMask = gamePlayMask
Esempio n. 19
0
 def __init__(self, pID, waitingID = ''):
     super(KickPlayerCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__pID = pID
Esempio n. 20
0
 def __init__(self, lane, waitingID=''):
     super(GroupSwapBetweenTeamLegacyCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__lane = lane
Esempio n. 21
0
 def join(self, ctx, callback = None):
     if prb_getters.getClientPrebattle() is None or ctx.isForced():
         ctx.startProcessing(callback=callback)
         BigWorld.player().prb_join(ctx.getID())
     else:
         LOG_ERROR('First, player has to confirm exit from the current prebattle', prb_getters.getPrebattleType())
         if callback:
             callback(False)
     return
Esempio n. 22
0
 def __init__(self, comment, waitingID = ''):
     super(ChangeCommentCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__comment = truncate_utf8(comment, PREBATTLE_COMMENT_MAX_LENGTH)
Esempio n. 23
0
 def __init__(self, division, waitingID=''):
     super(ChangeDivisionCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__division = int(division)
Esempio n. 24
0
 def __init__(self, pID, waitingID=''):
     super(KickPlayerCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__pID = pID
Esempio n. 25
0
 def __init__(self, comment, waitingID=''):
     super(ChangeCommentCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__comment = truncate_utf8(comment, PREBATTLE_COMMENT_MAX_LENGTH)
Esempio n. 26
0
 def __init__(self, channels, waitingID = ''):
     super(ChangeArenaVoipCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__channels = channels
Esempio n. 27
0
 def __init__(self, **kwargs):
     super(SwapTeamsCtx, self).__init__(entityType=prb_getters.getPrebattleType(), **kwargs)
Esempio n. 28
0
 def __init__(self, channels, waitingID = ''):
     super(ChangeArenaVoipCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__channels = int(channels)
Esempio n. 29
0
 def __init__(self, waitingID = '', flags = _FUNCTIONAL_FLAG.UNDEFINED):
     super(LeavePrbCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID, flags=flags)
Esempio n. 30
0
 def __init__(self, isOpened, waitingID = ''):
     super(ChangeOpenedCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__isOpened = isOpened
Esempio n. 31
0
 def create(self, ctx, callback = None):
     if not isinstance(ctx, prb_ctx.TrainingSettingsCtx):
         LOG_ERROR('Invalid context to create training', ctx)
         if callback is not None:
             callback(False)
     elif prb_cooldown.validatePrbCreationCooldown():
         if callback is not None:
             callback(False)
     elif prb_getters.getClientPrebattle() is None or ctx.isForced():
         ctx.startProcessing(callback=callback)
         BigWorld.player().prb_createTraining(ctx.getArenaTypeID(), ctx.getRoundLen(), ctx.isOpened(), ctx.getComment())
         prb_cooldown.setPrbCreationCooldown()
     else:
         LOG_ERROR('First, player has to confirm exit from the current prebattle', prb_getters.getPrebattleType())
         if callback is not None:
             callback(False)
     return
Esempio n. 32
0
 def __init__(self, division, waitingID = ''):
     super(ChangeDivisionCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__division = int(division)
Esempio n. 33
0
 def __init__(self, waitingID = '', flags = _FUNCTIONAL_FLAG.UNDEFINED):
     super(LeavePrbCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID, flags=flags)
Esempio n. 34
0
 def __init__(self, isOpened, waitingID=''):
     super(ChangeOpenedCtx, self).__init__(entityType=prb_getters.getPrebattleType(), waitingID=waitingID)
     self.__isOpened = isOpened
Esempio n. 35
0
 def create(self, ctx, callback = None):
     if prb_cooldown.validatePrbCreationCooldown():
         if callback is not None:
             callback(False)
     elif prb_getters.getClientPrebattle() is None or ctx.isForced():
         ctx.startProcessing(callback=callback)
         BigWorld.player().prb_createCompany(ctx.isOpened(), ctx.getComment(), ctx.getDivision())
         prb_cooldown.setPrbCreationCooldown()
     else:
         LOG_ERROR('First, player has to confirm exit from the current prebattle', prb_getters.getPrebattleType())
         if callback is not None:
             callback(False)
     return