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)