NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

careerAgentContentPiece.py (4723B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\contentPieces\careerAgentContentPiece.py
      2 import uuid
      3 import eve.common.lib.appConst as appConst
      4 from eve.client.script.ui.shared.agencyNew import agencyConst
      5 from eve.client.script.ui.shared.agencyNew.contentPieces.agentContentPiece import AgentContentPiece
      6 from eve.client.script.ui.shared.careerPortal import careerConst
      7 from eve.client.script.ui.skillPlan.link import skillplan_link
      8 from evemissions.client.const import CAREER_PATH_BY_DIVISION
      9 from localization import GetByLabel
     10 from npcs.divisions import get_division_description
     11 from npcs.divisions import get_division_name
     12 from skills.skillplan.skillPlanService import GetSkillPlanSvc
     13 BLURB_LABEL_BY_DIVISION = {appConst.agentDivisionBusiness: 'UI/Agency/Blurbs/CareerAgentBusiness',
     14  appConst.agentDivisionExploration: 'UI/Agency/Blurbs/CareerAgentExploration',
     15  appConst.agentDivisionIndustry: 'UI/Agency/Blurbs/CareerAgentIndustry',
     16  appConst.agentDivisionMilitary: 'UI/Agency/Blurbs/CareerAgentMilitary',
     17  appConst.agentDivisionAdvMilitary: 'UI/Agency/Blurbs/CareerAgentAdvMilitary'}
     18 skillPlansByRaceAndDivision = {(appConst.raceAmarr, appConst.agentDivisionBusiness): uuid.UUID(int=47),
     19  (appConst.raceAmarr, appConst.agentDivisionExploration): uuid.UUID(int=42),
     20  (appConst.raceAmarr, appConst.agentDivisionIndustry): uuid.UUID(int=46),
     21  (appConst.raceAmarr, appConst.agentDivisionMilitary): uuid.UUID(int=34),
     22  (appConst.raceAmarr, appConst.agentDivisionAdvMilitary): uuid.UUID(int=38),
     23  (appConst.raceCaldari, appConst.agentDivisionBusiness): uuid.UUID(int=47),
     24  (appConst.raceCaldari, appConst.agentDivisionExploration): uuid.UUID(int=43),
     25  (appConst.raceCaldari, appConst.agentDivisionIndustry): uuid.UUID(int=46),
     26  (appConst.raceCaldari, appConst.agentDivisionMilitary): uuid.UUID(int=35),
     27  (appConst.raceCaldari, appConst.agentDivisionAdvMilitary): uuid.UUID(int=39),
     28  (appConst.raceGallente, appConst.agentDivisionBusiness): uuid.UUID(int=47),
     29  (appConst.raceGallente, appConst.agentDivisionExploration): uuid.UUID(int=44),
     30  (appConst.raceGallente, appConst.agentDivisionIndustry): uuid.UUID(int=46),
     31  (appConst.raceGallente, appConst.agentDivisionMilitary): uuid.UUID(int=36),
     32  (appConst.raceGallente, appConst.agentDivisionAdvMilitary): uuid.UUID(int=40),
     33  (appConst.raceMinmatar, appConst.agentDivisionBusiness): uuid.UUID(int=47),
     34  (appConst.raceMinmatar, appConst.agentDivisionExploration): uuid.UUID(int=45),
     35  (appConst.raceMinmatar, appConst.agentDivisionIndustry): uuid.UUID(int=46),
     36  (appConst.raceMinmatar, appConst.agentDivisionMilitary): uuid.UUID(int=37),
     37  (appConst.raceMinmatar, appConst.agentDivisionAdvMilitary): uuid.UUID(int=41)}
     38 sortOrder = [appConst.agentDivisionMilitary,
     39  appConst.agentDivisionIndustry,
     40  appConst.agentDivisionExploration,
     41  appConst.agentDivisionAdvMilitary,
     42  appConst.agentDivisionBusiness]
     43 
     44 class CareerAgentContentPiece(AgentContentPiece):
     45     contentType = agencyConst.CONTENTTYPE_CAREERAGENTS
     46 
     47     def GetCareerAgentPathName(self):
     48         divisionID = self.GetDivisionID()
     49         if divisionID in appConst.agentDivisionsCareer:
     50             return get_division_name(divisionID)
     51 
     52     def GetCareerAgentDescription(self):
     53         divisionID = self.GetDivisionID()
     54         if divisionID in appConst.agentDivisionsCareer:
     55             return get_division_description(divisionID)
     56 
     57     def _GetDivisionSortKey(self):
     58         return -1
     59 
     60     def GetCardSortValue(self):
     61         divisionID = self.GetDivisionID()
     62         if divisionID in sortOrder:
     63             return sortOrder.index(divisionID)
     64 
     65     def GetBlurbText(self):
     66         divisionID = self.agent.divisionID
     67         if divisionID in BLURB_LABEL_BY_DIVISION:
     68             labelPath = BLURB_LABEL_BY_DIVISION[divisionID]
     69             return GetByLabel(labelPath)
     70 
     71     def IsCareerAgent(self):
     72         return True
     73 
     74     def GetCareerTexturePath(self):
     75         divisionID = self.agent.divisionID
     76         careerID = CAREER_PATH_BY_DIVISION.get(divisionID, None)
     77         if not careerID:
     78             return
     79         texturePath = careerConst.CAREERS_32_SIZES.get(careerID, None)
     80         return texturePath
     81 
     82     def SkillPlanLink(self):
     83         divisionID = self.agent.divisionID
     84         factionID = self.agent.factionID
     85         if not factionID:
     86             return
     87         raceID = appConst.raceByFaction.get(factionID)
     88         if not raceID:
     89             return
     90         planID = skillPlansByRaceAndDivision.get((raceID, divisionID), None)
     91         if not planID:
     92             return
     93         skillPlan = GetSkillPlanSvc().GetCertifiedSkillPlan(planID)
     94         if not skillPlan:
     95             return
     96         return skillplan_link(planID, skillPlan.GetName())