shipstance.py (1582B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\inflight\shipstance.py 2 import inventorycommon.const as invconst 3 import shipmode 4 5 class ShipStanceButtonController(object): 6 7 def get_ship_stance_buttons_args(self, type_id, shipID): 8 btns = [] 9 try: 10 ship_modes = shipmode.get_ship_modes_data(type_id) 11 except KeyError: 12 return btns 13 14 for ship_mode in ship_modes: 15 btns.append({'stanceID': ship_mode.get_key(), 16 'iconNum': ship_mode.get_icon_num(), 17 'stanceName': ship_mode.get_name(), 18 'stanceDescription': ship_mode.get_description(), 19 'stance': self.get_ship_stance(shipID, type_id)}) 20 21 return btns 22 23 def get_ship_stance(self, ship_id, type_id, isSimulated = False): 24 inv = shipmode.InventoryClient(sm.GetService('invCache'), ship_id, invconst.flagHiddenModifers) 25 return shipmode.get_current_ship_stance(type_id, inv.list_items()) 26 27 def set_stance(self, stance_id, ship_id, type_id): 28 if shipmode.data.ship_has_stances(type_id): 29 sm.RemoteSvc('shipStanceMgr').SetShipStance(ship_id, stance_id) 30 31 32 def get_ship_stance_buttons_args(type_id, shipID): 33 return ShipStanceButtonController().get_ship_stance_buttons_args(type_id, shipID) 34 35 36 def get_ship_stance(ship_id, type_id): 37 return ShipStanceButtonController().get_ship_stance(ship_id, type_id) 38 39 40 def set_stance(stance_id, ship_id, type_id): 41 return ShipStanceButtonController().set_stance(stance_id, ship_id, type_id)