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

sovereigntyClaimMarker.py (1480B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\environment\spaceObject\sovereigntyClaimMarker.py
      2 import uthread
      3 from eve.client.script.environment.spaceObject.LargeCollidableStructure import LargeCollidableStructure
      4 from evegraphics.logoLoader import LogoLoader
      5 
      6 class SovereigntyClaimMarker(LargeCollidableStructure):
      7     __notifyevents__ = ['OnAllianceLogoReady']
      8 
      9     def __init__(self):
     10         LargeCollidableStructure.__init__(self)
     11         self.logoLoader = LogoLoader((LogoLoader.ALLIANCE,))
     12         sm.RegisterNotify(self)
     13 
     14     def LoadModel(self, fileName = None, loadedModel = None):
     15         LargeCollidableStructure.LoadModel(self)
     16         self.SetControllerVariable('IsOnline', bool(self._GetAllianceID()))
     17         self.logoLoader.Load(self.model, self.typeData['slimItem'])
     18 
     19     def OnSlimItemUpdated(self, slimItem):
     20         uthread.new(self.logoLoader.Load, self.model, slimItem)
     21         oldAllianceID = self._GetAllianceID()
     22         self.typeData['slimItem'] = slimItem
     23         newAllianceID = self._GetAllianceID()
     24         if oldAllianceID != newAllianceID:
     25             self.SetControllerVariable('IsOnline', bool(self._GetAllianceID()))
     26 
     27     def OnAllianceLogoReady(self, allianceID, _size):
     28         if self.logoLoader.HasID(allianceID):
     29             self.logoLoader.Update(self.model)
     30 
     31     def _GetAllianceID(self):
     32         slimItem = self.typeData['slimItem']
     33         return getattr(slimItem, 'allianceID', None)