Ejemplo n.º 1
0
def getTimeLevel(value):
    criticalTime = _CRITICAL_TIME_LEVEL
    if isFalloutBattle():
        criticalTime = 120.0
    if value <= criticalTime:
        return 1
    return 0
Ejemplo n.º 2
0
 def setTeamKiller(self, vID):
     if vID not in self.__markers:
         return
     marker = self.__markers[vID]
     ctx = g_sessionProvider.getCtx()
     if not ctx.isTeamKiller(vID=vID) or ctx.isSquadMan(vID=vID) and not arena_info.isFalloutBattle():
         return
     self.invokeMarker(marker.id, 'setEntityName', [PLAYER_GUI_PROPS.teamKiller.name()])
Ejemplo n.º 3
0
 def start(self):
     super(_RageBarPlugin, self).start()
     avatarStatsCtrl = g_sessionProvider.getAvatarStatsCtrl()
     self.__currentValue = avatarStatsCtrl.getStats().get('ragePoints', 0)
     rageProps = _RageBarViewProps(maxValue=rage.g_cache.pointsLimit,
                                   curValue=self.__currentValue)
     self._parentObj.flashObject.initializeRageProgress(
         isFalloutBattle(), rageProps._asdict())
def getTimeLevel(value):
    if value is None:
        return 1
    criticalTime = _CRITICAL_TIME_LEVEL
    if isFalloutBattle():
        criticalTime = 120.0
    if value <= criticalTime:
        return 1
    else:
        return 0
Ejemplo n.º 5
0
 def setTeamKiller(self, vID):
     if vID not in self.__markers:
         return
     marker = self.__markers[vID]
     ctx = g_sessionProvider.getCtx()
     if not ctx.isTeamKiller(vID=vID) or ctx.isSquadMan(
             vID=vID) and not arena_info.isFalloutBattle():
         return
     self.invokeMarker(marker.id, 'setEntityName',
                       [PLAYER_GUI_PROPS.teamKiller.name()])
Ejemplo n.º 6
0
 def start(self):
     self.__flashObject = self.__ui.getMember('_level0.consumablesPanel')
     if self.__flashObject:
         self.__flashObject.resync()
         self.__flashObject.script = self
         self.__plugins.init()
         self.__plugins.start()
         props = _FalloutSlotViewProps(useStandardLayout=not hasRage())
         self.__flashObject.setProperties(isFalloutBattle(), props._asdict())
         self.__addListeners()
     else:
         LOG_ERROR('Display object is not found in the swf file.')
Ejemplo n.º 7
0
 def _setWinCondition(self):
     from gui.battle_control import g_sessionProvider
     arenaSubType = getArenaSubTypeName(BigWorld.player().arenaTypeID)
     arenaDP = g_sessionProvider.getArenaDP()
     if self._preBattleTimerUI is not None:
         if not arena_info.isFalloutBattle():
             winText = getBattleSubTypeWinText(BigWorld.player().arenaTypeID, arenaDP.getNumberOfTeam())
         elif arena_info.isFalloutMultiTeam():
             winText = i18n.makeString(ARENAS.TYPE_FALLOUTMUTLITEAM_DESCRIPTION)
         else:
             winText = i18n.makeString('#arenas:type/%s/description' % arenaSubType)
         self._preBattleTimerUI.setWinConditionText(winText)
     return
Ejemplo n.º 8
0
 def start(self):
     self.__flashObject = self.__ui.getMember('_level0.consumablesPanel')
     if self.__flashObject:
         self.__flashObject.resync()
         self.__flashObject.script = self
         self.__plugins.init()
         self.__plugins.start()
         props = _FalloutSlotViewProps(useStandardLayout=not hasRage())
         self.__flashObject.setProperties(isFalloutBattle(),
                                          props._asdict())
         self.__addListeners()
     else:
         LOG_ERROR('Display object is not found in the swf file.')
Ejemplo n.º 9
0
def _getQuestsTipData(arena, arenaDP):
    pqTipData = [None] * 3
    serverSettings = g_lobbyContext.getServerSettings()
    isPQEnabled = serverSettings is not None and serverSettings.isPotapovQuestEnabled()
    if isPQEnabled and (arena.guiType == constants.ARENA_GUI_TYPE.RANDOM or arena.guiType == constants.ARENA_GUI_TYPE.TRAINING and constants.IS_DEVELOPMENT or isFalloutBattle()):
        vehInfo = arenaDP.getVehicleInfo(arenaDP.getPlayerVehicleID())
        if isFalloutBattle():
            pQuests = vehInfo.player.getFalloutPotapovQuests()
        else:
            pQuests = vehInfo.player.getRandomPotapovQuests()
        if len(pQuests):
            quest = pQuests[0]
            pqTipData = [quest.getUserName(), _getQuestConditionsMessage(INGAME_GUI.POTAPOVQUESTS_TIP_MAINHEADER, quest.getUserMainCondition()), _getQuestConditionsMessage(INGAME_GUI.POTAPOVQUESTS_TIP_ADDITIONALHEADER, quest.getUserAddCondition())]
        else:
            pqTipData = [i18n.makeString(INGAME_GUI.POTAPOVQUESTS_TIP_NOQUESTS_BATTLETYPE if isFalloutBattle() else INGAME_GUI.POTAPOVQUESTS_TIP_NOQUESTS_VEHICLETYPE), None, None]
    return pqTipData
Ejemplo n.º 10
0
 def __populateData(self):
     arena = avatar_getter.getArena()
     arenaDP = g_sessionProvider.getArenaDP()
     arenaData = ['',
      0,
      '',
      '',
      '']
     if arena:
         arenaData = [toUpper(arena.arenaType.name)]
         descExtra = getPrebattleFullDescription(arena.extraData or {})
         arenaSubType = getArenaSubTypeName(BigWorld.player().arenaTypeID)
         if descExtra:
             arenaData.extend([arena.guiType + 1, descExtra])
         elif arena.guiType in [constants.ARENA_GUI_TYPE.RANDOM, constants.ARENA_GUI_TYPE.TRAINING]:
             arenaTypeName = '#arenas:type/%s/name' % arenaSubType
             arenaData.extend([getNecessaryArenaFrameName(arenaSubType, isBaseExists(BigWorld.player().arenaTypeID, BigWorld.player().team)), arenaTypeName])
         elif arena.guiType in constants.ARENA_GUI_TYPE.RANGE:
             arenaData.append(constants.ARENA_GUI_TYPE_LABEL.LABELS[arena.guiType])
             arenaData.append('#menu:loading/battleTypes/%d' % arena.guiType)
         else:
             arenaData.extend([arena.guiType + 1, '#menu:loading/battleTypes/%d' % arena.guiType])
         myTeamNumber = arenaDP.getNumberOfTeam()
         getTeamName = g_sessionProvider.getCtx().getTeamName
         arenaData.extend([getTeamName(myTeamNumber), getTeamName(arenaDP.getNumberOfTeam(enemy=True))])
         teamHasBase = 1 if isBaseExists(BigWorld.player().arenaTypeID, myTeamNumber) else 2
         if not isFalloutBattle():
             typeEvent = 'normal'
             winText = getBattleSubTypeWinText(BigWorld.player().arenaTypeID, teamHasBase)
         else:
             typeEvent = 'fallout'
             if isFalloutMultiTeam():
                 winText = i18n.makeString(ARENAS.TYPE_FALLOUTMUTLITEAM_DESCRIPTION)
             else:
                 winText = i18n.makeString('#arenas:type/%s/description' % arenaSubType)
         arenaData.append(winText)
         arenaData.append(typeEvent)
         arenaData.extend(_getQuestsTipData(arena, arenaDP))
         arenaData.extend([_SMALL_MAP_SOURCE % arena.arenaType.geometryName])
     self.__callEx('arenaData', arenaData)
Ejemplo n.º 11
0
 def __makeVisualTipVO(self, arenaDP, arena, tip = None):
     setting = g_settingsCore.options.getSetting(settings_constants.GAME.BATTLE_LOADING_INFO)
     settingID = setting.getSettingID(isInSandbox=arena_info.isInSandboxBattle(arena), isFallout=arena_info.isFalloutBattle())
     return {'settingID': settingID,
      'tipIcon': tip.icon if tip is not None else None,
      'arenaTypeID': arena_info.getArenaTypeID(),
      'minimapTeam': arenaDP.getNumberOfTeam()}
Ejemplo n.º 12
0
 def afterCreate(self):
     event = events.AppLifeCycleEvent
     g_eventBus.handleEvent(event(self.__ns, event.INITIALIZING))
     player = BigWorld.player()
     voice = VoiceChatInterface.g_instance
     LOG_DEBUG('[Battle] afterCreate')
     setattr(self.movie, '_global.wg_isShowLanguageBar', GUI_SETTINGS.isShowLanguageBar)
     setattr(self.movie, '_global.wg_isShowServerStats', constants.IS_SHOW_SERVER_STATS)
     setattr(self.movie, '_global.wg_isShowVoiceChat', GUI_SETTINGS.voiceChat)
     setattr(self.movie, '_global.wg_voiceChatProvider', voice.voiceChatProvider)
     setattr(self.movie, '_global.wg_isChina', constants.IS_CHINA)
     setattr(self.movie, '_global.wg_isKorea', constants.IS_KOREA)
     setattr(self.movie, '_global.wg_isReplayPlaying', BattleReplay.g_replayCtrl.isPlaying)
     BattleWindow.afterCreate(self)
     addListener = g_eventBus.addListener
     addListener(events.GameEvent.HELP, self.toggleHelpWindow, scope=_SCOPE)
     addListener(events.GameEvent.GUI_VISIBILITY, self.showAll, scope=_SCOPE)
     player.inputHandler.onPostmortemVehicleChanged += self.onPostmortemVehicleChanged
     player.inputHandler.onCameraChanged += self.onCameraChanged
     g_settingsCore.onSettingsChanged += self.__accs_onSettingsChanged
     g_settingsCore.interfaceScale.onScaleChanged += self.__onRecreateDevice
     isMutlipleTeams = isFalloutMultiTeam()
     isFallout = isFalloutBattle()
     self.proxy = weakref.proxy(self)
     self.__battle_flashObject = self.proxy.getMember('_level0')
     if self.__battle_flashObject:
         self.__battle_flashObject.resync()
     voice.populateUI(self.proxy)
     voice.onPlayerSpeaking += self.setPlayerSpeaking
     voice.onVoiceChatInitFailed += self.onVoiceChatInitFailed
     self.colorManager = ColorSchemeManager._ColorSchemeManager()
     self.colorManager.populateUI(self.proxy)
     self.movingText = MovingText()
     self.movingText.populateUI(self.proxy)
     self.__settingsInterface = SettingsInterface()
     self.__settingsInterface.populateUI(self.proxy)
     self.__soundManager = SoundManager()
     self.__soundManager.populateUI(self.proxy)
     self.__timersBar = TimersBar(self.proxy, isFallout)
     self.__teamBasesPanel = TeamBasesPanel(self.proxy)
     self.__debugPanel = DebugPanel(self.proxy)
     self.__consumablesPanel = ConsumablesPanel(self.proxy)
     self.__damagePanel = DamagePanel(self.proxy)
     self.__markersManager = MarkersManager(self.proxy)
     self.__ingameHelp = IngameHelp(self.proxy)
     self.__minimap = Minimap(self.proxy)
     self.__radialMenu = RadialMenu(self.proxy)
     self.__ribbonsPanel = BattleRibbonsPanel(self.proxy)
     self.__indicators = IndicatorsCollection()
     self.__ppSwitcher = PlayersPanelsSwitcher(self.proxy)
     isColorBlind = g_settingsCore.getSetting('isColorBlind')
     self.__leftPlayersPanel = playersPanelFactory(self.proxy, True, isColorBlind, isFallout, isMutlipleTeams)
     self.__rightPlayersPanel = playersPanelFactory(self.proxy, False, isColorBlind, isFallout, isMutlipleTeams)
     self.__damageInfoPanel = VehicleDamageInfoPanel(self.proxy)
     self.__damageInfoPanel.start()
     self.__fragCorrelation = scorePanelFactory(self.proxy, isFallout, isMutlipleTeams)
     self.__statsForm = statsFormFactory(self.proxy, isFallout, isMutlipleTeams)
     self.__plugins.init()
     self.isVehicleCountersVisible = g_settingsCore.getSetting('showVehiclesCounter')
     self.__fragCorrelation.showVehiclesCounter(self.isVehicleCountersVisible)
     self.__vErrorsPanel = VehicleErrorMessages(self.proxy)
     self.__vMsgsPanel = VehicleMessages(self.proxy)
     self.__pMsgsPanel = PlayerMessages(self.proxy)
     self.__plugins.start()
     self.__debugPanel.start()
     self.__consumablesPanel.start()
     self.__damagePanel.start()
     self.__ingameHelp.start()
     self.__vErrorsPanel.start()
     self.__vMsgsPanel.start()
     self.__pMsgsPanel.start()
     self.__markersManager.start()
     self.__markersManager.setMarkerDuration(GUI_SETTINGS.markerHitSplashDuration)
     markers = {'enemy': g_settingsCore.getSetting('enemy'),
      'dead': g_settingsCore.getSetting('dead'),
      'ally': g_settingsCore.getSetting('ally')}
     self.__markersManager.setMarkerSettings(markers)
     MessengerEntry.g_instance.gui.invoke('populateUI', self.proxy)
     g_guiResetters.add(self.__onRecreateDevice)
     g_repeatKeyHandlers.add(self.component.handleKeyEvent)
     self.__onRecreateDevice()
     self.__statsForm.populate()
     self.__leftPlayersPanel.populateUI(self.proxy)
     self.__rightPlayersPanel.populateUI(self.proxy)
     if BattleReplay.g_replayCtrl.isPlaying:
         BattleReplay.g_replayCtrl.onBattleSwfLoaded()
     self.__populateData()
     self.__minimap.start()
     self.__radialMenu.setSettings(self.__settingsInterface)
     self.__radialMenu.populateUI(self.proxy)
     self.__ribbonsPanel.start()
     g_sessionProvider.setBattleUI(self)
     self.__arenaCtrl = battleArenaControllerFactory(self, isFallout, isMutlipleTeams)
     g_sessionProvider.addArenaCtrl(self.__arenaCtrl)
     self.updateFlagsColor()
     self.movie.setFocussed(SCALEFORM_SWF_PATH)
     self.call('battle.initDynamicSquad', self.__getDynamicSquadsInitParams(enableButton=not BattleReplay.g_replayCtrl.isPlaying))
     self.call('sixthSenseIndicator.setDuration', [GUI_SETTINGS.sixthSenseDuration])
     g_tankActiveCamouflage[player.vehicleTypeDescriptor.type.compactDescr] = self.__arena.arenaType.vehicleCamouflageKind
     keyCode = CommandMapping.g_instance.get('CMD_VOICECHAT_MUTE')
     if not BigWorld.isKeyDown(keyCode):
         VOIP.getVOIPManager().setMicMute(True)
     ctrl = g_sessionProvider.getVehicleStateCtrl()
     ctrl.onVehicleStateUpdated += self.__onVehicleStateUpdated
     ctrl.onPostMortemSwitched += self.__onPostMortemSwitched
     if BattleReplay.g_replayCtrl.isPlaying:
         self.__dynSquadListener = ReplayDynSquadViewListener(self.proxy)
     elif BattleReplay.g_replayCtrl.isRecording:
         self.__dynSquadListener = RecordDynSquadViewListener(self.proxy)
     else:
         self.__dynSquadListener = DynSquadViewListener(self.proxy)
     g_eventBus.handleEvent(event(self.__ns, event.INITIALIZED))
Ejemplo n.º 13
0
 def start(self):
     super(_RageBarPlugin, self).start()
     avatarStatsCtrl = g_sessionProvider.getAvatarStatsCtrl()
     self.__currentValue = avatarStatsCtrl.getStats().get('ragePoints', 0)
     rageProps = _RageBarViewProps(maxValue=rage.g_cache.pointsLimit, curValue=self.__currentValue)
     self._parentObj.flashObject.initializeRageProgress(isFalloutBattle(), rageProps._asdict())