Exemple #1
0
 def hasLockMode(self):
     isBS = prb_control.isBattleSession()
     if isBS:
         isBSVehicleLockMode = bool(prb_control.getPrebattleSettings()[PREBATTLE_SETTING_NAME.VEHICLE_LOCK_MODE])
         if isBSVehicleLockMode and self.clanLock > 0:
             return True
     return False
    def createFunctional(self, dispatcher, ctx):
        clientPrb = prb_control.getClientPrebattle()
        if clientPrb is not None:
            if prb_control.isPrebattleSettingsReceived(prebattle=clientPrb):
                prbSettings = prb_control.getPrebattleSettings(prebattle=clientPrb)
                prbType = prb_control.getPrebattleType(settings=prbSettings)
                clazz = None
                if prbType in _SUPPORTED_FUNCTIONAL:
                    clazz = _SUPPORTED_FUNCTIONAL[prbType]
                if clazz:
                    prbFunctional = clazz(prbSettings)
                    for listener in dispatcher._globalListeners:
                        prbFunctional.addListener(listener())

                    createParams = ctx.getCreateParams()
                    if 'settings' in createParams and isStatefulFunctional(prbFunctional):
                        guiSettings = createParams['settings']
                        if guiSettings:
                            prbFunctional.applyStates(guiSettings.get(CTRL_ENTITY_TYPE.PREBATTLE))
                else:
                    LOG_ERROR('Prebattle with given type is not supported', prbType)
                    prbFunctional = PrbNotSupportedFunctional(prbSettings)
            else:
                prbFunctional = PrbInitFunctional()
        else:
            prbType = ctx.getPrbType()
            clazz = None
            if prbType in _SUPPORTED_INTRO:
                clazz = _SUPPORTED_INTRO[prbType]
            if clazz is None:
                clazz = NoPrbFunctional
            prbFunctional = clazz()
        return prbFunctional
Exemple #3
0
 def hasLockMode(self):
     isBS = prb_control.isBattleSession()
     if isBS:
         isBSVehicleLockMode = bool(prb_control.getPrebattleSettings()[PREBATTLE_SETTING_NAME.VEHICLE_LOCK_MODE])
         if isBSVehicleLockMode and self.clanLock > 0:
             return True
     return False
Exemple #4
0
 def _canAddPlayers(self):
     clientPrb = prb_control.getClientPrebattle()
     result = False
     if clientPrb is not None:
         settings = prb_control.getPrebattleSettings(prebattle=clientPrb)
         rosters = prb_control.getPrebattleRosters(prebattle=clientPrb)
         result, _ = MaxCount().check(rosters, 1, settings.getTeamLimits(1))
     return result
Exemple #5
0
 def _canAddPlayers(self):
     clientPrb = prb_control.getClientPrebattle()
     result = False
     if clientPrb is not None:
         settings = prb_control.getPrebattleSettings(prebattle=clientPrb)
         rosters = prb_control.getPrebattleRosters(prebattle=clientPrb)
         result, _ = MaxCount().check(rosters, 1, settings.getTeamLimits(1))
     return result
 def canAssignToTeam(self, team = 1):
     clientPrb = prb_control.getClientPrebattle()
     result = False
     if clientPrb is not None:
         settings = prb_control.getPrebattleSettings(prebattle=clientPrb)
         rosters = prb_control.getPrebattleRosters(prebattle=clientPrb)
         prbType = prb_control.getPrebattleType(clientPrb, settings)
         result, _ = TeamNoPlayersInBattle(prbType).check(rosters, team, settings.getTeamLimits(team))
     return result
Exemple #7
0
 def canAssignToTeam(self, team=1):
     clientPrb = prb_control.getClientPrebattle()
     result = False
     if clientPrb is not None:
         settings = prb_control.getPrebattleSettings(prebattle=clientPrb)
         rosters = prb_control.getPrebattleRosters(prebattle=clientPrb)
         prbType = prb_control.getPrebattleType(clientPrb, settings)
         result, _ = TeamNoPlayersInBattle(prbType).check(
             rosters, team, settings.getTeamLimits(team))
     return result
Exemple #8
0
def createPrbFunctional(dispatcher):
    clientPrb = prb_control.getClientPrebattle()
    if clientPrb is not None:
        if prb_control.isPrebattleSettingsReceived(prebattle=clientPrb):
            prbSettings = prb_control.getPrebattleSettings(prebattle=clientPrb)
            prbType = prb_control.getPrebattleType(settings=prbSettings)
            if prbType in _SUPPORTED_PREBATTLE:
                prbFunctional = _SUPPORTED_PREBATTLE[prbType][1](prbSettings)
                for listener in dispatcher._globalListeners:
                    prbFunctional.addListener(listener())

            else:
                LOG_ERROR("Prebattle with given type is not supported", prbType)
                prbFunctional = PrbNotSupportedFunctional(prbSettings)
        else:
            prbFunctional = PrbInitFunctional()
    else:
        prbFunctional = NoPrbFunctional()
    return prbFunctional
Exemple #9
0
def createPrbFunctional(dispatcher):
    clientPrb = prb_control.getClientPrebattle()
    if clientPrb is not None:
        if prb_control.isPrebattleSettingsReceived(prebattle=clientPrb):
            prbSettings = prb_control.getPrebattleSettings(prebattle=clientPrb)
            prbType = prb_control.getPrebattleType(settings=prbSettings)
            if prbType in _SUPPORTED_PREBATTLE:
                prbFunctional = _SUPPORTED_PREBATTLE[prbType][1](prbSettings)
                for listener in dispatcher._globalListeners:
                    prbFunctional.addListener(listener())

            else:
                LOG_ERROR('Prebattle with given type is not supported', prbType)
                prbFunctional = PrbNotSupportedFunctional(prbSettings)
        else:
            prbFunctional = PrbInitFunctional()
    else:
        prbFunctional = NoPrbFunctional()
    return prbFunctional
    def createFunctional(self, dispatcher, ctx):
        clientPrb = prb_control.getClientPrebattle()
        if clientPrb is not None:
            if prb_control.isPrebattleSettingsReceived(prebattle=clientPrb):
                prbSettings = prb_control.getPrebattleSettings(
                    prebattle=clientPrb)
                prbType = prb_control.getPrebattleType(settings=prbSettings)
                clazz = None
                if prbType in _SUPPORTED_FUNCTIONAL:
                    clazz = _SUPPORTED_FUNCTIONAL[prbType]
                if clazz:
                    prbFunctional = clazz(prbSettings)
                    for listener in dispatcher._globalListeners:
                        prbFunctional.addListener(listener())

                    createParams = ctx.getCreateParams()
                    if 'settings' in createParams and isStatefulFunctional(
                            prbFunctional):
                        guiSettings = createParams['settings']
                        if guiSettings:
                            prbFunctional.applyStates(
                                guiSettings.get(CTRL_ENTITY_TYPE.PREBATTLE))
                else:
                    LOG_ERROR('Prebattle with given type is not supported',
                              prbType)
                    prbFunctional = PrbNotSupportedFunctional(prbSettings)
            else:
                prbFunctional = PrbInitFunctional()
        else:
            prbType = ctx.getPrbType()
            clazz = None
            if prbType in _SUPPORTED_INTRO:
                clazz = _SUPPORTED_INTRO[prbType]
            if clazz is None:
                clazz = NoPrbFunctional
            prbFunctional = clazz()
        return prbFunctional
 def getTeamLimits(self):
     return getPrebattleSettings().getTeamLimits(self.getPlayerTeam())
Exemple #12
0
 def getTeamLimits(self):
     return getPrebattleSettings().getTeamLimits(self.getPlayerTeam())