예제 #1
0
 public GlidingPoseMotor(ECameraPoseMode modeId,
                         HashSet <ECameraPoseMode> excludes,
                         IMotorActive active,
                         Motors m) : base(modeId, excludes, active, m)
 {
     _bezierUtil.CreateRandomPoints(1f, 1.5f, -2, 2, -0.3f, 0.3f, 4);
 }
예제 #2
0
 public GlidingPoseMotor(ECameraPoseMode modeId,
                         CameraConfigItem config,
                         HashSet <ECameraPoseMode> excludes,
                         IMotorActive active, int transitionTime = 200
                         ) : base(modeId, config, excludes, active, transitionTime)
 {
     _bezierUtil.CreateRandomPoints(1f, 1.5f, -2, 2, -0.3f, 0.3f, 4);
 }
예제 #3
0
        public NormalPoseMotor(ECameraPoseMode modeId,
                               CameraConfig config,
                               HashSet <ECameraPoseMode> excludes,
                               IMotorActive active
                               )
        {
            _modeId    = (short)modeId;
            _motorType = SubCameraMotorType.Pose;

            this._excludes = new HashSet <short>();
            foreach (var e in excludes)
            {
                this._excludes.Add((short)e);
            }

            _config = config.GetCameraConfigItem(modeId);
            _active = active;
        }
예제 #4
0
        public NormalPoseMotor(ECameraPoseMode modeId,
                               CameraConfigItem config,
                               HashSet <ECameraPoseMode> excludes,
                               IMotorActive active, int transitionTime = 200
                               )
        {
            _modeId = (short)modeId;

            this._excludes = new HashSet <short>();
            foreach (var e in excludes)
            {
                this._excludes.Add((short)e);
            }

            _transitionTime = transitionTime;
            _config         = config;
            _active         = active;
        }
예제 #5
0
        public NormalPoseMotor(ECameraPoseMode modeId,
                               HashSet <ECameraPoseMode> excludes,
                               IMotorActive active, Motors m) : base(m)
        {
            _modeId    = (short)modeId;
            _motorType = SubCameraMotorType.Pose;

            this._excludes = new HashSet <short>();
            foreach (var e in excludes)
            {
                this._excludes.Add((short)e);
            }

            _order = SingletonManager.Get <CameraConfigManager>().GetRoleConfig()
                     .GetCameraConfigItem((ECameraPoseMode)_modeId).Order;

            _active = active;
        }
예제 #6
0
 public DeadPoseMotor(ECameraPoseMode modeId, HashSet <ECameraPoseMode> excludes, IMotorActive active, DeadCameraConfig deadConfig, Motors m) : base(modeId, excludes, active, m)
 {
     _motors.ActionManager.AddAction(CameraActionType.Enter, SubCameraMotorType.Pose, (int)modeId,
                                     (player, state) =>
     {
         player.cameraStateOutputNew.LastPitchWhenAlive = player.cameraFinalOutputNew.EulerAngle.x;
         //中途加入时不切三人称
         if (player.gamePlay.IsObserving())
         {
             player.characterBoneInterface.CharacterBone.SetThridPerson();
         }
     });
 }
예제 #7
0
        public DeadPoseMotor(ECameraPoseMode modeId, CameraConfigItem config, HashSet <ECameraPoseMode> excludes, IMotorActive active, DeadCameraConfig deadConfig) : base(modeId, config, excludes, active)
        {
            _config = deadConfig;

            CameraActionManager.AddAction(CameraActionType.Enter, SubCameraMotorType.Pose, (int)modeId,
                                          (player, state) =>
            {
                player.orientation.Pitch = 0;
                Debug.Log("Enter dead pose");
            });
            _finalRotation = deadConfig.Roatation;
        }