def showMission(eventID, eventType=None): eventsCache = dependency.instance(IEventsCache) quests = eventsCache.getQuests() quest = quests.get(eventID) if quest is None: prefix = events_helpers.getMarathonPrefix(eventID) if prefix is not None: showMissionsMarathon(marathonPrefix=prefix) if eventType is not None and eventType == constants.EVENT_TYPE.PERSONAL_MISSION: showPersonalMission(eventID) elif quest is not None: if events_helpers.isMarathon(quest.getGroupID()): groups = eventsCache.getGroups() group = groups.get(quest.getGroupID()) groupContent = group.getGroupContent(quests) mainQuest = group.getMainQuest(groupContent) if mainQuest and quest.getID() != mainQuest.getID(): showMissionsGrouped(missionID=quest.getID(), groupID=group.getID(), anchor=group.getID()) else: showMissionsGrouped(anchor=group.getID()) elif events_helpers.isLinkedSet(quest.getGroupID()): showMissionsLinkedSet() else: showMissionsCategories(missionID=quest.getID(), groupID=quest.getGroupID(), anchor=quest.getGroupID()) return
def _getEventInfoData(event): if event.getType() == constants.EVENT_TYPE.PERSONAL_MISSION: return _PersonalMissionInfo(event) if event.getType() == constants.EVENT_TYPE.MOTIVE_QUEST: return _MotiveQuestInfo(event) if isLinkedSet(event.getGroupID()): return _LinkedSetQuestInfo(event) return _QuestInfo(event) if event.getType() in constants.EVENT_TYPE.QUEST_RANGE else _EventInfo(event)
def __filterFunc(cls, event): if event.getType() in (EVENT_TYPE.TOKEN_QUEST, EVENT_TYPE.REF_SYSTEM_QUEST): return False if not event.getFinishTimeLeft(): return False if event.getType() == EVENT_TYPE.MOTIVE_QUEST: return not event.isCompleted() and event.isAvailable()[0] return False if isLinkedSet(event.getGroupID()) else True
def getGroupTypeByID(groupID): if groupID in (DEFAULTS_GROUPS.UNGROUPED_QUESTS, DEFAULTS_GROUPS.MOTIVE_QUESTS): return groupID if events_helpers.isMarathon(groupID): return DEFAULTS_GROUPS.MARATHON_QUESTS if events_helpers.isPremium(groupID): return DEFAULTS_GROUPS.PREMIUM_QUESTS return DEFAULTS_GROUPS.LINKEDSET_QUESTS if events_helpers.isLinkedSet( groupID) else DEFAULTS_GROUPS.REGULAR_GROUPED_QUESTS
def __filterFunc(cls, event): if event.getType() in (EVENT_TYPE.TOKEN_QUEST, ): return False if not event.getFinishTimeLeft(): return False if event.getType() == EVENT_TYPE.MOTIVE_QUEST: return not event.isCompleted() and event.isAvailable()[0] if isPremium( event.getGroupID()) and not cls.lobbyContext.getServerSettings( ).getPremQuestsConfig().get('enabled', False): return False return False if isLinkedSet(event.getGroupID()) else True
def userFilterFunc(q): if q.getType() == EVENT_TYPE.MOTIVE_QUEST and not q.isAvailable().isValid: return False if q.getType() == EVENT_TYPE.TOKEN_QUEST and isMarathon(q.getID()): return False if isLinkedSet(q.getGroupID()) and not q.isAvailable().isValid: return False if isPremium(q.getGroupID()) and not q.isAvailable().isValid: return False if self.__eventProgression.isActive() and isDailyEpic(q.getGroupID()): activeQuests = self.__eventProgression.getActiveQuestIDs() if q.getID() not in activeQuests: return False return False if isRankedSeasonOff and (isRankedDaily(q.getGroupID()) or isRankedPlatform(q.getGroupID())) else filterFunc(q)
def showMission(eventID, eventType=None): from gui.impl.lobby.missions.daily_quests_view import DailyTabs if eventType == constants.EVENT_TYPE.C11N_PROGRESSION: itemIntCD, vehicleIntCD = parseEventID(eventID) service = dependency.instance(ICustomizationService) vehicle = service.getItemByCD(vehicleIntCD) service.showCustomization(vehicle.invID, lambda: showProgressiveItemsView(itemIntCD)) return else: eventsCache = dependency.instance(IEventsCache) quests = eventsCache.getQuests() quest = quests.get(eventID) if eventID == BattlePassConsts.FAKE_QUEST_ID: hideWebBrowserOverlay() showMissionsBattlePass() return if quest is None: prefix = events_helpers.getMarathonPrefix(eventID) if prefix is not None: return showMissionsMarathon(marathonPrefix=prefix) if eventType is not None and eventType == constants.EVENT_TYPE.PERSONAL_MISSION: showPersonalMission(eventID) elif quest is not None: if events_helpers.isMarathon(quest.getGroupID()): groups = eventsCache.getGroups() group = groups.get(quest.getGroupID()) groupContent = group.getGroupContent(quests) mainQuest = group.getMainQuest(groupContent) if mainQuest and quest.getID() != mainQuest.getID(): showMissionsGrouped(missionID=quest.getID(), groupID=group.getID(), anchor=group.getID()) else: showMissionsGrouped(anchor=group.getID()) elif events_helpers.isLinkedSet(quest.getGroupID()): showMissionsLinkedSet() elif events_helpers.isDailyQuest(quest.getID()): showDailyQuests(subTab=DailyTabs.QUESTS) elif events_helpers.isPremium(quest.getID()): showDailyQuests(subTab=DailyTabs.PREMIUM_MISSIONS) else: showMissionsCategories(missionID=quest.getID(), groupID=quest.getGroupID(), anchor=quest.getGroupID()) return
def userFilterFunc(q): qGroup = q.getGroupID() qIsValid = q.isAvailable().isValid qID = q.getID() if q.getType() == EVENT_TYPE.MOTIVE_QUEST and not qIsValid: return False if q.getType() == EVENT_TYPE.TOKEN_QUEST and isMarathon(qID): return False if isLinkedSet(qGroup) or isPremium(qGroup) and not qIsValid: return False if not isEpicBattleEnabled and isDailyEpic(qGroup): return False if isBattleRoyale(qGroup): quests = self.__battleRoyaleController.getQuests() if qID not in quests: return False if isMapsTraining(qGroup): return q.shouldBeShown() return False if isRankedSeasonOff and ( isRankedDaily(qGroup) or isRankedPlatform(qGroup)) else filterFunc(q)
def userFilterFunc(q): return isLinkedSet(q.getGroupID()) and filterFunc(q)
def userFilterFunc(q): if q.getType() == EVENT_TYPE.MOTIVE_QUEST and not q.isAvailable().isValid: return False if q.getType() == EVENT_TYPE.TOKEN_QUEST and isMarathon(q.getID()): return False return False if isLinkedSet(q.getGroupID()) and not q.isAvailable().isValid else filterFunc(q)
def userFilterFunc(q): return False if isLinkedSet(q.getGroupID()) and not self.linkedSet.isLinkedSetEnabled() else q.getFinishTimeLeft() and filterFunc(q)
def __applyFilter(self, quest): return isLinkedSet(quest.getGroupID())
def __applyFilter(self, quest): forbiddenQuestConditions = [lambda q: q.getType() in (EVENT_TYPE.TOKEN_QUEST,), lambda q: not q.getFinishTimeLeft(), lambda q: isLinkedSet(q.getGroupID()) or isPremium(q.getGroupID())] if any((isForbidden(quest) for isForbidden in forbiddenQuestConditions)): return False if not g_currentVehicle.isPresent(): return False return quest.isValidVehicleCondition(g_currentVehicle.item) if quest.getType() != EVENT_TYPE.MOTIVE_QUEST else quest.isValidVehicleCondition(g_currentVehicle.item) and not quest.isCompleted() and quest.isAvailable()[0]
def userFilterFunc(q): if isLinkedSet(q.getGroupID() ) and not self.linkedSet.isLinkedSetEnabled(): return False return False if not isPremiumQuestsEnable and isPremium( q.getGroupID()) else q.getFinishTimeLeft() and filterFunc(q)
def isLinkedSet(self): return events_helpers.isLinkedSet(self.getID())
def isLinkedSet(self): return isLinkedSet(self.getID())