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

GenericMultiEffect.py (2064B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\environment\effects\GenericMultiEffect.py
      2 import blue
      3 import trinity
      4 from carbon.common.lib.const import MSEC
      5 from eve.client.script.environment.effects.GenericEffect import GenericEffect
      6 from eve.client.script.environment.effects.GenericEffect import STOP_REASON_DEFAULT
      7 import logging
      8 from fsdBuiltData.client.effectSequences import GetSequence, GetStops
      9 from evegraphics.graphicEffects.effectPhasePlayer import PhasePlayer, GetStepsToPlayForPhase
     10 log = logging.getLogger(__name__)
     11 
     12 class GenericMultiEffect(GenericEffect):
     13     __guid__ = 'effects.GenericMultiEffect'
     14 
     15     def __init__(self, trigger, effect = None, graphicFile = None):
     16         super(GenericMultiEffect, self).__init__(trigger, effect, graphicFile)
     17         self.graphicFile = 'res:/fisfx/cloaking/multieffect/mf_cloakedobject_01a.red'
     18         self.effect = trinity.Load(self.graphicFile)
     19 
     20     def GetEffectTarget(self, target):
     21         if target == 'SELF':
     22             return self.GetEffectShipBall().model
     23         if target == 'POSTPROCESS':
     24             return self.fxSequencer.GetScene().postprocess
     25         if target == 'PLAYER_SHIP':
     26             pass
     27         elif target == 'NEAREST_SHIP':
     28             pass
     29         elif target == 'NEAREST_STATION':
     30             pass
     31         elif target == 'SUN':
     32             pass
     33         elif target == 'NEAREST_PLANET':
     34             pass
     35 
     36     def Start(self, duration):
     37         trinity.WaitForResourceLoads()
     38         for index, target in self.graphicInfo['effectTargets'].items():
     39             self.effect.parameters[index].object = self.GetEffectTarget(target)
     40 
     41         scene = self.fxSequencer.GetScene()
     42         scene.objects.append(self.effect)
     43         self.effect.StartControllers()
     44 
     45     def Stop(self, reason = STOP_REASON_DEFAULT):
     46         for each in self.effect.parameters:
     47             each.object = None
     48 
     49         scene = self.fxSequencer.GetScene()
     50         scene.objects.fremove(self.effect)
     51 
     52     def UpdateGraphicInfo(self, newGraphicInfo):
     53         pass