towGameSvc.py (1828B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\services\towGameSvc.py 2 import signals 3 from carbon.common.script.sys.service import Service 4 5 class TowGameSvc(Service): 6 __guid__ = 'svc.towGameSvc' 7 __startupdependencies__ = [] 8 9 def __init__(self): 10 super(TowGameSvc, self).__init__() 11 self.SIGNAL_OnTowGameAdded = signals.Signal(signalName='OnTowGameAdded') 12 self.SIGNAL_OnTowGameRemoved = signals.Signal(signalName='OnTowGameRemoved') 13 self.SIGNAL_OnTowGameUpdated = signals.Signal(signalName='OnTowGameNewScore') 14 self.currentTowGameSnapshot = None 15 16 def AddTowGame(self, itemID, winThreshold, scoreByFactionID): 17 self.currentTowGameSnapshot = TowGameSnapshot(itemID, winThreshold, scoreByFactionID) 18 self.SIGNAL_OnTowGameAdded(self.currentTowGameSnapshot) 19 20 def UpdateTowGame(self, scoreByFactionID): 21 if self.currentTowGameSnapshot is not None: 22 self.currentTowGameSnapshot._scoreByFactionID = scoreByFactionID 23 self.SIGNAL_OnTowGameUpdated(self.currentTowGameSnapshot) 24 25 def RemoveTowGame(self): 26 self.currentTowGameSnapshot = None 27 self.SIGNAL_OnTowGameRemoved() 28 29 def GetCurrentTowGame(self): 30 return self.currentTowGameSnapshot 31 32 33 class TowGameSnapshot(object): 34 35 def __init__(self, towGameObjectiveItemID, winThreshold, scoreByFactionID): 36 self._scoreByFactionID = scoreByFactionID 37 self._winThreshold = winThreshold 38 self._towGameObjectiveItemID = towGameObjectiveItemID 39 40 @property 41 def scoreByFactionID(self): 42 return self._scoreByFactionID 43 44 @property 45 def winThreshold(self): 46 return self._winThreshold 47 48 @property 49 def towGameObjectiveItemID(self): 50 return self._towGameObjectiveItemID