CameraAttachmentEffect.py (1467B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\environment\effects\CameraAttachmentEffect.py 2 from __future__ import print_function 3 from eve.client.script.environment.effects.GenericEffect import GenericEffect, STOP_REASON_DEFAULT 4 import trinity 5 import logging 6 log = logging.getLogger(__name__) 7 8 class CameraAttachmentEffect(GenericEffect): 9 __guid__ = 'effects.CameraAttachmentEffect' 10 11 def __init__(self, trigger, effect = None, graphicFile = None): 12 super(CameraAttachmentEffect, self).__init__(trigger, effect, graphicFile) 13 self.fileName = self.graphicFile 14 self.fxSequencer = sm.GetService('FxSequencer') 15 self.scene = self.fxSequencer.GetScene() 16 if graphicFile is not None: 17 self.effect = self.RecycleOrLoad(graphicFile) 18 else: 19 self.effect = None 20 print(self.effect) 21 22 def Start(self, duration): 23 if self.effect: 24 self.effect.StartControllers() 25 if self.scene: 26 self.scene.cameraAttachments.append(self.effect) 27 else: 28 log.error('Could not load cameraAttachment %s.' % self.fileName) 29 30 def Stop(self, reason = STOP_REASON_DEFAULT): 31 if self.scene and self.scene.cameraAttachments: 32 if self.effect in self.scene.cameraAttachments: 33 self.scene.cameraAttachments.fremove(self.effect) 34 self.scene = None 35 self.effect = None