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

defaultSkinSettings.py (1746B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\skins\defaultSkinSettings.py
      2 import logging
      3 from carbon.common.script.sys.serviceManager import ServiceManager
      4 from clientsettings.setting import CharSettingNumericList
      5 _default_skin_hull_ids = CharSettingNumericList('default_skin_hull_ids', [])
      6 _default_skin_ids = CharSettingNumericList('default_skin_ids', [])
      7 
      8 def get_default_skin_id_for_hull(hull_id):
      9     hulls_data = _default_skin_hull_ids.get()
     10     if hull_id in hulls_data:
     11         return _default_skin_ids.get()[hulls_data.index(hull_id)]
     12 
     13 
     14 def set_default_skin_for_hull(hull_id, skin_id):
     15     hulls_data = list(_default_skin_hull_ids.get())
     16     skins_data = list(_default_skin_ids.get())
     17     if len(hulls_data) != len(skins_data):
     18         logging.exception('Default skin data error: hull and skin arrays have different lengths. Hull %i len : Skins %i len. Clearing data.', len(hulls_data), len(skins_data))
     19         _default_skin_hull_ids.set([])
     20         _default_skin_ids.set([])
     21         return
     22     if hull_id in hulls_data:
     23         idx = hulls_data.index(hull_id)
     24         skins_data[idx] = skin_id
     25     else:
     26         hulls_data.append(hull_id)
     27         skins_data.append(skin_id)
     28     _default_skin_hull_ids.set(hulls_data)
     29     _default_skin_ids.set(skins_data)
     30     ServiceManager.Instance().ScatterEvent('OnDefaultSkinSet', skin_id)
     31 
     32 
     33 def clear_default_skin_for_hull(hull_id):
     34     hull_data = list(_default_skin_hull_ids.get())
     35     if hull_id not in hull_data:
     36         return
     37     idx = hull_data.index(hull_id)
     38     skin_data = list(_default_skin_ids.get())
     39     hull_data.pop(idx)
     40     skin_data.pop(idx)
     41     _default_skin_hull_ids.set(hull_data)
     42     _default_skin_ids.set(skin_data)