pirateInsurgencySystemContentPiece.py (3471B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\contentPieces\pirateInsurgencySystemContentPiece.py 2 from carbonui.util.bunch import Bunch 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.contentPieces.pirateInsurgencySiteContentPiece import PirateInsurgencySiteContentPiece 6 from eve.client.script.ui.shared.agencyNew.ui import agencyUIConst 7 from eve.common.lib import appConst 8 from eve.common.script.sys.idCheckers import IsCorporation 9 from localization import GetByLabel 10 11 class PirateInsurgencySystemContentPiece(BaseContentPiece): 12 contentType = agencyConst.CONTENTTYPE_PIRATEINSURGENCESYSTEM 13 14 def __init__(self, dungeonInstances = None, pirateFactionID = None, isFobSystem = False, **kwargs): 15 super(PirateInsurgencySystemContentPiece, self).__init__(**kwargs) 16 self.pirateFactionID = pirateFactionID 17 self.isFobSystem = isFobSystem 18 self.corruptionSuppressionSvc = sm.GetService('corruptionSuppressionSvc') 19 self.contentPieces = self._ConstructPirateInsurgencySiteContentPieces(dungeonInstances) 20 21 def _ConstructPirateInsurgencySiteContentPieces(self, dungeonInstances): 22 return filter(None, [ self.ConstructPirateInsurgencySiteContentPiece(site) for site in dungeonInstances ]) 23 24 def ConstructPirateInsurgencySiteContentPiece(self, site): 25 return PirateInsurgencySiteContentPiece(solarSystemID=self.solarSystemID, ownerID=site.factionID, enemyOwnerID=site.factionID, itemID=site.siteID, locationID=site.siteID, site=site, dungeonNameID=site.dungeonNameID, position=site.position) 26 27 def _GetButtonState(self): 28 return agencyUIConst.ACTION_SETDESTINATION 29 30 def GetCardID(self): 31 return (self.contentType, self.solarSystemID) 32 33 def GetOwnerTypeID(self, ownerID): 34 if IsCorporation(ownerID): 35 return appConst.typeCorporation 36 return appConst.typeFaction 37 38 def GetDragData(self): 39 dragData = Bunch() 40 dragData.__guid__ = 'xtriui.ListSurroundingsBtn' 41 dragData.itemID = self.itemID 42 dragData.typeID = self.typeID 43 dragData.label = cfg.evelocations.Get(self.solarSystemID).name 44 return [dragData] 45 46 def GetCorruptionStageText(self): 47 stage = self.corruptionSuppressionSvc.GetSystemCorruptionStage(self.solarSystemID) 48 if stage is None: 49 return '' 50 return GetByLabel('UI/Agency/PirateIncursions/CorruptionStageX', stage=stage) 51 52 def GetSuppressionStageText(self): 53 stage = self.corruptionSuppressionSvc.GetSystemSuppressionStage(self.solarSystemID) 54 if stage is None: 55 return '' 56 return GetByLabel('UI/Agency/PirateIncursions/SuppressionStageX', stage=stage) 57 58 def GetPirateText(self): 59 if not self.pirateFactionID: 60 return '' 61 factionName = cfg.eveowners.Get(self.pirateFactionID).name 62 if self.isFobSystem: 63 return GetByLabel('UI/PirateInsurgencies/FOBSystem', factionName=factionName) 64 return GetByLabel('UI/PirateInsurgencies/FactionInsurgencySystem', factionName=factionName) 65 66 def GetPirateFactionID(self): 67 return self.pirateFactionID 68 69 def GetFobOwnerInSystem(self): 70 if not self.isFobSystem: 71 return 72 return self.pirateFactionID