def doAction(self, action=None, dispatcher=None): if self.isCreator(): if self.getRosterKey() != PREBATTLE_ROSTER.ASSIGNED_IN_TEAM1: DialogsInterface.showI18nInfoDialog('teamDoesNotHaveCommander', lambda result: None) return True stats = self.getPlayersStateStats() creatorWeight = 1 if not self.getPlayerInfo().isReady() else 0 readyCount = stats.playersCount - stats.notReadyCount if readyCount < stats.limitMaxCount - creatorWeight: DialogsInterface.showDialog( I18nConfirmDialogMeta('teamHaveNotReadyPlayers', messageCtx={ 'readyCount': readyCount, 'playersCount': stats.playersCount }), self.__setCreatorReady) return True self.__setCreatorReady(True) elif self.getPlayerInfo().isReady(): self.setPlayerState( prb_ctx.SetPlayerStateCtx( False, waitingID='prebattle/player_not_ready')) else: self.setPlayerState( prb_ctx.SetPlayerStateCtx(True, waitingID='prebattle/player_ready')) return True
def doAction(self, action=None, dispatcher=None): if self.getPlayerInfo().isReady(): self.setPlayerState( prb_ctx.SetPlayerStateCtx( False, waitingID='prebattle/player_not_ready')) else: self.setPlayerState( prb_ctx.SetPlayerStateCtx(True, waitingID='prebattle/player_ready')) return True
def __setCreatorReady(self, result): if not result: return if self.getPlayerInfo().isReady(): self.__setTeamReady() else: self.setPlayerState(prb_ctx.SetPlayerStateCtx( True, waitingID='prebattle/player_ready'), callback=self.__onCreatorReady)
def requestToReady(self, value): if value: waitingID = 'prebattle/player_ready' else: waitingID = 'prebattle/player_not_ready' result = yield self.prbDispatcher.sendPrbRequest( prb_ctx.SetPlayerStateCtx(value, waitingID=waitingID)) if result: self.as_toggleReadyBtnS(not value)
def exitFromQueue(self): if self.isCreator(): self.setTeamState( prb_ctx.SetTeamStateCtx(1, False, waitingID='prebattle/team_not_ready')) else: self.setPlayerState( prb_ctx.SetPlayerStateCtx( False, waitingID='prebattle/player_not_ready')) return True
def __enterTrainingRoom(self): if self.storage.isObserver: self.changeUserObserverStatus( prb_ctx.SetPlayerObserverStateCtx( True, True, waitingID='prebattle/change_user_status'), self.__onPlayerReady) else: self.setPlayerState( prb_ctx.SetPlayerStateCtx(True, waitingID='prebattle/player_ready'), self.__onPlayerReady)
def changeUserObserverStatus(self, ctx, callback=None): if self._cooldown.validate(REQUEST_TYPE.CHANGE_USER_STATUS): if callback: callback(False) return if ctx.isObserver(): self._setPlayerReady(ctx, callback=callback) else: self._setPlayerReady( prb_ctx.SetPlayerStateCtx(True, waitingID='prebattle/player_ready'), self.__onPlayerReady) self._cooldown.process(REQUEST_TYPE.CHANGE_USER_STATUS)
def __loadTrainingRoom(self, dispatcher): result = yield dispatcher.sendPrbRequest( prb_ctx.SetPlayerStateCtx(True, waitingID='prebattle/player_not_ready')) if result: g_eventDispatcher.loadTrainingRoom()
def __handleViewLoad(self, _): self.setPlayerState( prb_ctx.SetPlayerStateCtx(False, waitingID='prebattle/player_not_ready'))