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

nonDiminishingInjectionService.py (1741B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\services\nonDiminishingInjectionService.py
      2 import carbon.common.script.sys.service as service
      3 
      4 class NonDiminishingInjection(service.Service):
      5     __guid__ = 'svc.nonDiminishingInjection'
      6     __servicename__ = 'nonDiminishingInjection'
      7     __displayname__ = 'Non-Diminishing Injection Service'
      8     __exportedcalls__ = {'GetRemaining': []}
      9     __notifyevents__ = ['OnCharacterSessionChanged',
     10      'OnNonDiminishingInjectionsAdded',
     11      'OnNonDiminishingInjectionsUsed',
     12      'OnNonDiminishingInjectionsRemoved']
     13 
     14     def Run(self, memStream = None):
     15         self.availableInjections = None
     16 
     17     def OnCharacterSessionChanged(self, _oldCharacterID, _newCharacterID):
     18         self._UpdateAvailableNonDiminishingInjections()
     19 
     20     def OnNonDiminishingInjectionsAdded(self, amount):
     21         if self.availableInjections is not None:
     22             self.availableInjections += amount
     23         sm.ScatterEvent('OnNonDiminishingInjectionsChanged')
     24 
     25     def OnNonDiminishingInjectionsUsed(self, amount):
     26         if self.availableInjections is not None:
     27             self.availableInjections -= amount
     28         sm.ScatterEvent('OnNonDiminishingInjectionsChanged')
     29 
     30     def OnNonDiminishingInjectionsRemoved(self):
     31         self.availableInjections = 0
     32         sm.ScatterEvent('OnNonDiminishingInjectionsChanged')
     33 
     34     def GetRemaining(self):
     35         if self.availableInjections is None:
     36             self._UpdateAvailableNonDiminishingInjections()
     37         return self.availableInjections
     38 
     39     def _UpdateAvailableNonDiminishingInjections(self):
     40         self.availableInjections = sm.RemoteSvc('nonDiminishingInjectionMgr').GetAvailableNonDiminishingInjections()