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

colonyResourcesAgencySystemContentPiece.py (2639B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\contentPieces\colonyResourcesAgencySystemContentPiece.py
      2 import log
      3 import telemetry
      4 import evetypes
      5 import uthread2
      6 from eve.client.script.ui.shared.agencyNew import agencyConst
      7 from eve.client.script.ui.shared.agencyNew.contentPieces.baseContentPiece import BaseContentPiece
      8 from eve.client.script.ui.shared.agencyNew.contentPieces.colonyResourcesAgencyPlanetContentPiece import ColonyResourcesAgencyPlanetContentPiece
      9 from signals import Signal
     10 
     11 class ColonyResourcesAgencySystemContentPiece(BaseContentPiece):
     12     contentType = agencyConst.CONTENTTYPE_COLONYRESOURCESAGENCY
     13 
     14     def __init__(self, planetLookupPerSolarSystem, solarSystemValues, sovAllianceID, *args, **kwargs):
     15         super(ColonyResourcesAgencySystemContentPiece, self).__init__(*args, **kwargs)
     16         self.mapSvc = sm.GetService('map')
     17         self.sovereigntyResourceSvc = sm.GetService('sovereigntyResourceSvc')
     18         self.planetLookupPerSolarSystem = planetLookupPerSolarSystem
     19         self.solarSystemValues = solarSystemValues
     20         self.sovAllianceID = sovAllianceID
     21         self.planetContentPieces = None
     22 
     23     @telemetry.ZONE_METHOD
     24     def ConstructPlanetContentPieces(self):
     25         skyhook_info = self.sovereigntyResourceSvc.GetPlanetIDsAndTheftVulnerabilityData(self.itemID)
     26         info_by_planet = {data.planet_id:data for data in skyhook_info}
     27         validPlanetValues = self.planetLookupPerSolarSystem.GetValidPlanetResourceValues()
     28         planetIDs = [ x.itemID for x in validPlanetValues ]
     29         cfg.evelocations.Prime(planetIDs)
     30         self.planetContentPieces = filter(None, [ self.ConstructPlanetContentPiece(value.itemID, value, value.itemID in info_by_planet, info_by_planet.get(value.itemID, None)) for value in validPlanetValues ])
     31         return self.planetContentPieces
     32 
     33     @telemetry.ZONE_METHOD
     34     def ConstructPlanetContentPiece(self, planetID, planetValues, hasVulnerableSkyhook, skyhook_info):
     35         planetItem = self.mapSvc.GetItem(planetID)
     36         return ColonyResourcesAgencyPlanetContentPiece(planetValues, solarSystemID=self.solarSystemID, itemID=planetItem.itemID, locationID=planetItem.locationID, position=(planetItem.x, planetItem.y, planetItem.z), typeID=planetItem.typeID, groupID=evetypes.GetGroupID(planetItem.typeID), planetName=planetItem.itemName, hasVulnerableSkyhook=hasVulnerableSkyhook, start=skyhook_info.start if skyhook_info else None, expiry=skyhook_info.expiry if skyhook_info else None)
     37 
     38     def GetPlanetContentPieces(self):
     39         return self.ConstructPlanetContentPieces()