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

siteContentPiece.py (7541B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\contentPieces\siteContentPiece.py
      2 import inventorycommon.const as invConst
      3 from eve.client.script.ui.shared.agencyNew import agencyConst
      4 from eve.client.script.ui.shared.agencyNew.contentPieces.baseContentPiece import BaseContentPiece
      5 from eve.client.script.ui.shared.agencyNew.ui import agencyUIConst
      6 from eve.client.script.ui.shared.mapView.markers.mapMarkerUtil import GetSiteBracketIcon
      7 from eve.common.lib import appConst
      8 from eve.common.script.sys.eveCfg import IsDocked
      9 from localization import GetByLabel, GetByMessageID
     10 from evedungeons.client.data import GetDungeon
     11 
     12 class SiteContentPiece(BaseContentPiece):
     13     contentType = agencyConst.CONTENTTYPE_SITES
     14 
     15     def __init__(self, site = None, **kwargs):
     16         BaseContentPiece.__init__(self, **kwargs)
     17         self.site = site
     18 
     19     def GetName(self):
     20         return self.GetSiteName()
     21 
     22     def GetSiteNameAndLevel(self):
     23         return GetByLabel('UI/Agency/SiteNameAndLevel', siteName=self.GetName(), level=self.GetSiteLevel())
     24 
     25     def GetSiteLevel(self):
     26         return getattr(self.site, 'difficulty', None)
     27 
     28     def GetSiteLevelText(self):
     29         return GetByLabel('UI/Agency/LevelX', level=self.GetSiteLevel())
     30 
     31     def GetSiteTypeName(self):
     32         return GetByLabel(agencyConst.SITE_NAMES_BY_ARCHETYPE.get(self.GetSiteArchetype(), 'Unknown Site'))
     33 
     34     def GetSiteArchetype(self):
     35         return getattr(self.site, 'archetypeID', None)
     36 
     37     def GetSubtitle(self):
     38         return self.GetSiteNameAndLevel()
     39 
     40     def GetSiteName(self):
     41         return GetByMessageID(self.site.dungeonNameID)
     42 
     43     def GetSiteDescription(self):
     44         return GetByMessageID(GetDungeon(self.site.dungeonID).descriptionID)
     45 
     46     def GetSiteGameplayDescription(self):
     47         return GetByMessageID(GetDungeon(self.site.dungeonID).gameplayDescriptionID)
     48 
     49     def GetSubSolarSystemPosition(self):
     50         return self.site.position
     51 
     52     def GetMenu(self):
     53         if IsDocked():
     54             return
     55         elif self.GetTargetID():
     56             scanSvc = sm.GetService('scanSvc')
     57             return scanSvc.GetScannedDownMenu(self.site)
     58         else:
     59             return sm.GetService('menu').GetMenuFromItemIDTypeID(self.solarSystemID, appConst.typeSolarSystem)
     60 
     61     def _ExecutePrimaryFunction(self, actionID):
     62         if actionID == agencyUIConst.ACTION_WARPTO:
     63             targetID = self.GetTargetID()
     64             sm.GetService('menu').WarpToScanResult(targetID)
     65         else:
     66             super(SiteContentPiece, self)._ExecutePrimaryFunction(actionID)
     67 
     68     def GetTargetID(self):
     69         return getattr(self.site, 'targetID', None)
     70 
     71     def GetBlurbText(self):
     72         if self.GetSiteArchetype() == appConst.dunArchetypeOreAnomaly:
     73             return GetByLabel('UI/Inflight/Scanner/OreSiteTooltip')
     74         if self.GetSiteArchetype() == appConst.dunArchetypeGasClouds:
     75             return GetByLabel('UI/Agency/Blurbs/GasSites')
     76         if self.GetSiteArchetype() == appConst.dunArchetypeRelicSites:
     77             return GetByLabel('UI/Inflight/Scanner/RelicSiteTooltip')
     78         if self.GetSiteArchetype() == appConst.dunArchetypeDataSites:
     79             return GetByLabel('UI/Inflight/Scanner/DataSiteTooltip')
     80         if self.GetSiteArchetype() == appConst.dunArchetypeWormhole:
     81             return GetByLabel('UI/Inflight/Scanner/WormholeTooltip')
     82         if self.GetSiteArchetype() == appConst.dunArchetypeCombatSites:
     83             return GetByLabel('UI/Inflight/Scanner/CombatSiteTooltip')
     84         if self.GetSiteArchetype() == appConst.dunArchetypeIceBelt:
     85             return GetByLabel('UI/Agency/Blurbs/IceSite')
     86         if self.GetSiteArchetype() == appConst.dunArchetypeEventSites:
     87             return GetByLabel('UI/Agency/Blurbs/EventSites')
     88         if self.GetSiteArchetype() == appConst.dunArchetypeCombatHacking:
     89             return GetByLabel('UI/Agency/Blurbs/CombatHacking')
     90         if self.GetSiteArchetype() == appConst.dunArchetypeSitesOfInterest:
     91             return GetByLabel('UI/Agency/Blurbs/SitesOfInterest')
     92         if self.GetSiteArchetype() == appConst.dunArchetypeDrifterSites:
     93             return GetByLabel('UI/Agency/Blurbs/DrifterSites')
     94 
     95     def GetModulesRequiredTypeIDs(self):
     96         if self.GetSiteArchetype() == appConst.dunArchetypeIceBelt:
     97             return ({invConst.typeIceMiningLaser, invConst.typeIceHarvester},)
     98         if self.GetSiteArchetype() == appConst.dunArchetypeOreAnomaly:
     99             return (invConst.typeMiningLaser,)
    100         if self.GetSiteArchetype() == appConst.dunArchetypeGasClouds:
    101             return (invConst.typeGasCloudHarvester,)
    102         if self.GetSiteArchetype() == appConst.dunArchetypeRelicSites:
    103             return (invConst.typeRelicAnalyzer,)
    104         if self.GetSiteArchetype() == appConst.dunArchetypeDataSites:
    105             return (invConst.typeDataAnalyzer,)
    106         if self.GetSiteArchetype() == appConst.dunArchetypeWormhole:
    107             return (invConst.typeCoreScannerProbe, invConst.typeCoreProbeLauncher)
    108         if self.GetSiteArchetype() == appConst.dunArchetypeCombatHacking:
    109             return (invConst.typeDataAnalyzer,)
    110 
    111     def GetIconTexturePath(self):
    112         if self.GetSiteArchetype() == appConst.dunArchetypeOreAnomaly:
    113             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/OreSite.png'
    114         if self.GetSiteArchetype() == appConst.dunArchetypeGasClouds:
    115             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/GasSite.png'
    116         if self.GetSiteArchetype() == appConst.dunArchetypeRelicSites:
    117             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/RelicSite.png'
    118         if self.GetSiteArchetype() == appConst.dunArchetypeDataSites:
    119             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/DataSite.png'
    120         if self.GetSiteArchetype() == appConst.dunArchetypeCombatSites:
    121             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/CombatSite.png'
    122         if self.GetSiteArchetype() == appConst.dunArchetypeWormhole:
    123             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/Wormhole.png'
    124         if self.GetSiteArchetype() == appConst.dunArchetypeIceBelt:
    125             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/iceSite.png'
    126         if self.GetSiteArchetype() == appConst.dunArchetypeGhostSites:
    127             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/ghostSite.png'
    128         if self.GetSiteArchetype() in appConst.dunArchetypesFactionalWarfare:
    129             return 'res:/ui/Texture/classes/agency/Icons/ContentTypes/FWSite.png'
    130         if self.GetSiteArchetype() == appConst.dunArchetypeEventSites:
    131             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/event.png'
    132         if self.GetSiteArchetype() in appConst.dunArchetypesIncursionSites:
    133             return 'res:/UI/Texture/Classes/Agency/Icons/incursions.png'
    134         if self.GetSiteArchetype() == appConst.dunArchetypeCombatHacking:
    135             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/DataSite.png'
    136         if self.GetSiteArchetype() == appConst.dunArchetypeSitesOfInterest:
    137             return 'res:/UI/Texture/Classes/Agency/Icons/ContentTypes/RelicSite.png'
    138         if self.GetSiteArchetype() == appConst.dunArchetypeDrifterSites:
    139             return 'res:/UI/Texture/Classes/Agency/Icons/allContent.png'
    140 
    141     def GetBracketIconTexturePath(self):
    142         return GetSiteBracketIcon(self.GetSiteArchetype())
    143 
    144     def GetContentSubTypeID(self):
    145         return self.GetSiteArchetype()