siteSystemContentPiece.py (2367B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\contentPieces\siteSystemContentPiece.py 2 from eve.client.script.ui.shared.agencyNew import agencyConst 3 from eve.client.script.ui.shared.agencyNew.contentPieces.baseContentPiece import BaseContentPiece 4 from eve.client.script.ui.shared.agencyNew.contentPieces.siteContentPiece import SiteContentPiece 5 from eve.common.lib import appConst 6 from localization import GetByLabel 7 8 class SiteSystemContentPiece(BaseContentPiece): 9 contentType = agencyConst.CONTENTTYPE_SITES 10 archetypeID = appConst.dunArchetypeCombatSites 11 12 def __init__(self, dungeonInstances = None, archetypeID = None, *args, **kwargs): 13 if archetypeID is not None: 14 self.archetypeID = archetypeID 15 super(SiteSystemContentPiece, self).__init__(*args, **kwargs) 16 self.contentPieces = self._ConstructSiteContentPieces(dungeonInstances) 17 18 def GetName(self): 19 return cfg.evelocations.Get(self.solarSystemID).locationName 20 21 def GetNumDungeons(self): 22 return len(self.contentPieces) 23 24 def GetEnemyOwnerID(self): 25 regionID = cfg.mapSystemCache.Get(self.solarSystemID).regionID 26 pirateFactionIDs = sm.GetService('faction').GetPirateFactionsOfRegion(regionID) 27 if pirateFactionIDs: 28 return pirateFactionIDs[0] 29 30 def GetSiteContentPieces(self): 31 return self.contentPieces 32 33 def _ConstructSiteContentPieces(self, dungeonInstances): 34 if not dungeonInstances: 35 return [] 36 return [ self._ConstructSiteContentPiece(site) for site in dungeonInstances ] 37 38 def _ConstructSiteContentPiece(self, site): 39 if site is None: 40 return UnknownSiteContentPiece(solarSystemID=self.solarSystemID) 41 else: 42 return SiteContentPiece(solarSystemID=self.solarSystemID, enemyOwnerID=site.factionID, itemID=site.siteID, locationID=site.siteID, site=site, dungeonNameID=site.dungeonNameID, position=site.position) 43 44 def GetMenu(self): 45 return sm.GetService('menu').GetMenuFromItemIDTypeID(self.solarSystemID, appConst.typeSolarSystem) 46 47 48 class UnknownSiteContentPiece(BaseContentPiece): 49 50 def GetName(self): 51 return GetByLabel('UI/Agency/UnknownCombatAnomaly') 52 53 def GetSiteLevelText(self): 54 return GetByLabel('UI/Common/Unknown')