def showQuestRewards(self): if hasattr(self, '_questRewardsEarned') and self.containerId: container = QuestLadderDB.getContainer(self.containerId) self.questRewardGUI = QuestRewardGUI(container, self._questRewardsEarned)
def setQuestsCompleted(self, menuFlag, completedContainerIds, completedChainedQuestIds, completedQuestIds, completedQuestDoIds): questStr = '' self.cleanUpQuestDetails() def handleOption(option, questStr, menuFlag, confirm, animSet): self.cleanUpQuestDetails(hide = True) self.playQuestString(questStr, quitButton = menuFlag, confirm = True, animSet = animSet) if len(completedContainerIds): if completedContainerIds[0] in [ 'c3visitJack']: return None if len(completedContainerIds) > 1: self.notify.warning('Multiple simultaneous completed quest containers for the same NPC: %s!' % completedContainerIds) containerId = completedContainerIds[0] self.containerId = containerId container = QuestLadderDB.getContainer(containerId) if container: dialogId = container.getDialogAfter() if dialogId: self.requestDialog(dialogId) return None questStr = container.getStringAfter() animSet = container.getAnimSetAfter() localAvatar.b_setGameState('NPCInteract', localArgs = [ self, False, False]) if hasattr(self, '_questRewardsEarned'): self.questRewardGUI = QuestRewardGUI(container, self._questRewardsEarned) localAvatar.guiMgr.subtitler.setPageChat('', options = [ PLocalizer.Continue], callback = handleOption, extraArgs = [ questStr, menuFlag, True, animSet]) else: handleOption(questStr, menuFlag, True, animSet) return None else: self.notify.warning('%s not in QuestLadderDB!' % containerId) if len(completedChainedQuestIds): pass 1 if len(completedQuestIds): if len(completedContainerIds) == 0: questId = completedQuestIds[0] quest = QuestDB.QuestDict.get(questId) if quest: questStr = quest.getStringAfter() animSet = quest.getAnimSetAfter() self.notify.debug('%s stringAfter: %s' % (questId, questStr)) if hasattr(self, '_questRewardsEarned'): print 'GOT questRewardsEarned: %s' % self._questRewardsEarned self.questRewardGUI = QuestRewardGUI(quest, self._questRewardsEarned) localAvatar.guiMgr.subtitler.setPageChat('', options = [ PLocalizer.Continue], callback = handleOption, extraArgs = [ questStr, menuFlag, True, animSet]) else: handleOption(questStr, menuFlag, True, animSet) else: self.notify.warning('%s not in QuestDB!' % questId) localAvatar.b_setGameState('NPCInteract', localArgs = [ self, True, False]) if len(completedQuestIds) == 0 and len(completedChainedQuestIds) == 0 and len(completedContainerIds) == 0: if not self.hasOpenGUI(): self.cancelInteraction(base.localAvatar)