Ejemplo n.º 1
0
        public override bool IsActive(ICameraMotorInput input, ICameraMotorState state)
        {
            if (state.IsFree())
            {
                return(false);
            }
            if (!state.GetMainConfig().CanSwitchView)
            {
                return(false);
            }
            //if (state.ViewMode.Equals(ECameraViewMode.FirstPerson) && (input.ChangeCamera))
            if (state.ViewMode == ECameraViewMode.FirstPerson && input.FilteredChangeCamera)
            {
                return(false);
            }
            //if (state.ViewMode.Equals(ECameraViewMode.ThirdPerson) &&  input.ChangeCamera)
            if (state.ViewMode == ECameraViewMode.ThirdPerson && input.FilteredChangeCamera)
            {
                return(true);
            }

            //if (state.ViewMode.Equals(ECameraViewMode.GunSight) && input.IsCameraFocus && state.LastViewMode.Equals(ECameraViewMode.FirstPerson))
            if (state.ViewMode.Equals(ECameraViewMode.GunSight) && (input.FilteredCameraFocus || input.ForceChangeGunSight || input.ForceInterruptGunSight) && state.LastViewMode.Equals(ECameraViewMode.FirstPerson))
            {
                return(true);
            }

            return(state.ViewMode == ECameraViewMode.FirstPerson);
        }
Ejemplo n.º 2
0
        public override bool IsActive(ICameraMotorInput input, ICameraMotorState state)
        {
            if (state.IsFree())
            {
                return(false);
            }
            if (!state.GetMainConfig().CanSwitchView)
            {
                return(false);
            }

            if (state.ViewMode == ECameraViewMode.FirstPerson && input.FilteredChangeCamera)
            {
                return(false);
            }

            if (state.ViewMode == ECameraViewMode.ThirdPerson && input.FilteredChangeCamera)
            {
                return(true);
            }

            if (state.ViewMode == ECameraViewMode.GunSight && (input.FilteredCameraFocus || input.InterruptCameraFocus) && state.LastViewMode == ECameraViewMode.FirstPerson)
            {
                return(true);
            }

            if (input.LastViewByOrder == (short)ECameraViewMode.FirstPerson)
            {
                return(true);
            }
            return(state.ViewMode == ECameraViewMode.FirstPerson);
        }
Ejemplo n.º 3
0
 private bool CanRotatePlayer(ICameraMotorState state)
 {
     if (state.IsFree())
     {
         return(false);
     }
     return(true);
 }
Ejemplo n.º 4
0
 private bool CanRotatePlayer(ICameraMotorState state)
 {
     if (state.IsFristPersion() && state.GetMainMotor().NowMode == (byte)ECameraPoseMode.Climb)
     {
         return(false);
     }
     if (state.IsFree())
     {
         return(false);
     }
     return(true);
 }
Ejemplo n.º 5
0
        public override bool IsActive(ICameraMotorInput input, ICameraMotorState state)
        {
            if (input.IsDead)
            {
                return(false);
            }
            if (!input.CanWeaponGunSight)
            {
                return(false);
            }
            if (state.IsFree())
            {
                return(false);
            }
            if (!state.GetMainConfig().CanSwitchView)
            {
                return(false);
            }

            if (state.ViewMode == ECameraViewMode.GunSight &&
                (input.FilteredCameraFocus || input.ForceChangeGunSight || input.ForceInterruptGunSight))
            {
                if (input.ForceInterruptGunSight)
                {
                    if (Logger.IsDebugEnabled)
                    {
                        Logger.Debug("ForceInterruptGunSight");
                    }
                }
                return(false);
            }

            //if (state.ViewMode.Equals(ECameraViewMode.ThirdPerson) &&  input.IsCameraFocus)
            if (state.ViewMode == ECameraViewMode.ThirdPerson && !input.ForceInterruptGunSight && (input.FilteredCameraFocus || input.ForceChangeGunSight))
            {
                return(true);
            }

            //if (state.ViewMode.Equals(ECameraViewMode.FirstPerson) && input.IsCameraFocus)
            if (state.ViewMode == ECameraViewMode.FirstPerson && !input.ForceInterruptGunSight && (input.FilteredCameraFocus || input.ForceChangeGunSight))
            {
                return(true);
            }

            return(state.ViewMode == ECameraViewMode.GunSight);
        }
Ejemplo n.º 6
0
        public override bool IsActive(ICameraMotorInput input, ICameraMotorState state)
        {
            if (input.IsDead)
            {
                return(false);
            }
            if (!input.CanWeaponGunSight)
            {
                return(false);
            }
            if (state.IsFree())
            {
                return(false);
            }
            var config = input.GetPoseConfig(state.GetMainMotor().NowMode);

            if (!config.CanSwitchView)
            {
                return(false);
            }

            if (state.ViewMode == ECameraViewMode.GunSight &&
                (input.FilteredCameraFocus || input.InterruptCameraFocus))
            {
                if (input.InterruptCameraFocus)
                {
                    if (Logger.IsDebugEnabled)
                    {
                        Logger.Debug("ForceInterruptGunSight");
                    }
                }
                return(false);
            }
            if (state.ViewMode == ECameraViewMode.ThirdPerson && !input.InterruptCameraFocus && (input.FilteredCameraFocus))
            {
                // DebugUtil.MyLog("Change cmr to gunsight");
                return(true);
            }

            if (state.ViewMode == ECameraViewMode.FirstPerson && !input.InterruptCameraFocus && (input.FilteredCameraFocus))
            {
                return(true);
            }

            return(state.ViewMode == ECameraViewMode.GunSight);
        }
Ejemplo n.º 7
0
        public override bool IsActive(ICameraMotorInput input, ICameraMotorState state)
        {
            var config = input.GetPoseConfig(state.GetMainMotor().NowMode);

            if (!config.CanSwitchView)
            {
                return(false);
            }
            if (input.IsVariant)
            {
                return(false);
            }
            if (!SharedConfig.IsOffline && input.LockViewByRoom && input.ModelLoaded && !input.IsDead)
            {
                return(true);
            }

            if (state.IsFree())
            {
                return(false);
            }

            if (state.ViewMode == ECameraViewMode.FirstPerson && input.FilteredChangeCamera)
            {
                return(false);
            }

            if (state.ViewMode == ECameraViewMode.ThirdPerson && input.FilteredChangeCamera)
            {
                return(true);
            }

            if (state.ViewMode == ECameraViewMode.GunSight &&
                (input.FilteredCameraFocus || input.InterruptCameraFocus) &&
                state.LastViewMode == ECameraViewMode.FirstPerson)
            {
                return(true);
            }

            if (input.LastViewByOrder == (short)ECameraViewMode.FirstPerson)
            {
                return(true);
            }
            return(state.ViewMode == ECameraViewMode.FirstPerson);
        }