asteroidBeltSystemContentPiece.py (2889B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\contentPieces\asteroidBeltSystemContentPiece.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.asteroidBeltContentPiece import AsteroidBeltContentPiece 5 from eve.client.script.ui.shared.agencyNew.contentPieces.baseContentPiece import BaseContentPiece 6 from eve.client.script.ui.shared.comtool.constants import CHANNEL_MINING 7 from eve.common.lib import appConst 8 from evedungeons.client.oreTypesInDungeons.util import get_consolidated_ore_types_in_system 9 from localization import GetByLabel 10 11 class AsteroidBeltSystemContentPiece(BaseContentPiece): 12 contentType = agencyConst.CONTENTTYPE_ASTEROIDBELTS 13 14 def __init__(self, *args, **kwargs): 15 super(AsteroidBeltSystemContentPiece, self).__init__(*args, **kwargs) 16 self.contentPieces = [ self.ConstructAsteroidBeltContentPiece(asteroidBeltContentPiece) for asteroidBeltContentPiece in self.GetAllAsteroidBeltsInSystem() ] 17 18 def ConstructAsteroidBeltContentPiece(self, asteroidBelt): 19 return AsteroidBeltContentPiece(solarSystemID=self.solarSystemID, locationID=asteroidBelt.itemID, typeID=asteroidBelt.typeID, itemID=asteroidBelt.itemID, orbitIndex=asteroidBelt.orbitIndex, celestialIndex=asteroidBelt.celestialIndex) 20 21 def GetName(self): 22 return cfg.evelocations.Get(self.solarSystemID).locationName 23 24 def GetMenu(self): 25 return sm.GetService('menu').GetMenuFromItemIDTypeID(self.solarSystemID, appConst.typeSolarSystem) 26 27 def GetCardSortValue(self): 28 isCurrentSystem = self.solarSystemID == session.solarsystemid2 29 return (-int(isCurrentSystem), -self.GetSystemSecurityStatus(), self.GetJumpsToSelfFromCurrentLocation()) 30 31 def GetAllAsteroidBeltsInSystem(self): 32 celestials = cfg.GetLocationsLocalBySystem(self.solarSystemID, requireLocalizedTexts=False) 33 asteroidBelts = sorted([ celestial for celestial in celestials if celestial.groupID == appConst.groupAsteroidBelt ], key=lambda x: (x.celestialIndex, x.orbitIndex)) 34 return asteroidBelts 35 36 def GetBlurbText(self): 37 return GetByLabel('UI/Agency/Blurbs/AsteroidBelt') 38 39 def GetEnemyOwnerID(self): 40 regionID = cfg.mapSystemCache.Get(self.solarSystemID).regionID 41 pirateFactionIDs = sm.GetService('faction').GetPirateFactionsOfRegion(regionID) 42 if pirateFactionIDs: 43 return pirateFactionIDs[0] 44 45 def GetModulesRequiredTypeIDs(self): 46 return (invConst.typeMiningLaser,) 47 48 def GetRewardTypes(self): 49 return (agencyConst.REWARDTYPE_ASTEROID,) 50 51 def GetChatChannelID(self): 52 return CHANNEL_MINING 53 54 def GetResourceTypeIDs(self): 55 return get_consolidated_ore_types_in_system(self.solarSystemID)