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

slot_layout.py (2107B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\cosmetics\client\ships\skins\live_data\slot_layout.py
      2 from cosmetics.client.ships.skins.live_data.component_instance import create_component_instance, build_config_proto_from_component_instance
      3 from cosmetics.client.shipSkinComponentSvc import get_ship_skin_component_svc
      4 from cosmetics.common.ships.skins.live_data.slot_layout import BaseSlotLayout
      5 from player_messaging.client.ui_message import message_player
      6 from eveProto.generated.eve_public.cosmetic.ship.skin.thirdparty.slot.slot_pb2 import Identifier as SlotIdentifier
      7 from eveProto.generated.eve_public.cosmetic.ship.skin.thirdparty.thirdparty_pb2 import Layout
      8 from eveProto.generated.eve_public.ship.ship_type_pb2 import Identifier as ShipTypeIdentifier
      9 from localization import GetByLabel
     10 from publicGateway.grpc.exceptions import GenericException
     11 from stackless_response_router.exceptions import TimeoutException
     12 
     13 class SlotLayout(BaseSlotLayout):
     14     LAYOUT_PROTO = Layout
     15     SLOT_IDENTIFIER_PROTO = SlotIdentifier
     16     SHIP_TYPE_PROTO = ShipTypeIdentifier
     17 
     18     def create_component_instance(self, component_id, **kwargs):
     19         return create_component_instance(component_id, **kwargs)
     20 
     21     @classmethod
     22     def build_config_proto_from_component_instance(cls, component_instance):
     23         return build_config_proto_from_component_instance(component_instance)
     24 
     25     def get_component_license(self, component_id, component_type):
     26         try:
     27             return get_ship_skin_component_svc().get_default_license_to_use(component_id, component_type)
     28         except (GenericException, TimeoutException):
     29             message_player(GetByLabel('UI/Common/CannotConnectToServer'))
     30             return None
     31 
     32     def get_component_license_of_type(self, component_id, component_type, license_type):
     33         try:
     34             return get_ship_skin_component_svc().get_license(component_id, component_type, license_type)
     35         except (GenericException, TimeoutException):
     36             message_player(GetByLabel('UI/Common/CannotConnectToServer'))
     37             return None