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()