def enter(self, params = None):
     if params:
         animationData = self.__parseData(params)
         self.__isNodeTimeline = 'nodePositions' in animationData
         if not self.__isNodeTimeline:
             source = Math.Matrix()
             source.translation = Math.Vector3(0.0, 0.0, 0.0)
         else:
             source = Math.Matrix()
             source.setTranslate(self._context.cameraSettings.cam_start_target_pos)
         self.strategy = BigWorld.CameraStrategyCinematic(animationData, Math.Vector3(0.0, 1.0, 0.0), source, self.__cbExitState is None, self._context.cameraInstance.effectController, self.__lagHalfLife)
         self.strategy.staticNodeUpdateTime = self.__class__.GROUND_NODE_UPDATE_TIME
         self._context.cameraInstance.setStrategy(self.strategy, self._context.interpolationDuration)
     return