Пример #1
0
 public FirstPersonFlyingController GetFlyingController()
 {
     if (firstPersonFlyingController == null)
     {
         firstPersonFlyingController = Resources.FindObjectsOfTypeAll <FirstPersonFlyingController>().FirstOrDefault();
     }
     return(firstPersonFlyingController);
 }
Пример #2
0
 /// <summary>
 /// Called when the script is being destroyed.
 /// </summary>
 private void OnDestroy()
 {
     Plugin.Log?.Debug($"{name}: OnDestroy()");
     if (this.firstPersonFlyingController != null)
     {
         Destroy(this.firstPersonFlyingController);
         this.firstPersonFlyingController = null;
     }
 }
Пример #3
0
 public virtual void Init(FloatingScreen floatingScreen, VRPointer pointer)
 {
     _floatingScreen = floatingScreen;
     _screenHandle   = floatingScreen.handle.transform;
     _realPos        = floatingScreen.transform.position;
     _realRot        = floatingScreen.transform.rotation;
     _vrPointer      = pointer;
     _fpfc           = Resources.FindObjectsOfTypeAll <FirstPersonFlyingController>().FirstOrDefault();
 }
Пример #4
0
        public void Refresh()
        {
            _firstPersonFlyingController = Resources.FindObjectsOfTypeAll <FirstPersonFlyingController>().FirstOrDefault();
            _vrInputModule = _firstPersonFlyingController.GetField <VRInputModule, FirstPersonFlyingController>("_vrInputModule");
            _vrInputModule.transform.SetParent(transform);
            _firstPersonFlyingController.transform.SetParent(transform);

            _firstPersonFlyingController.SetField("_cameraFov", _options.CameraFOV);
            _firstPersonFlyingController.SetField("_moveSensitivity", _options.MoveSensitivity);
            _firstPersonFlyingController.GetField <Camera, FirstPersonFlyingController>("_camera").fieldOfView = _options.CameraFOV;
        }
Пример #5
0
 /// <summary>
 /// Refreshes the FPFC Variables.
 /// </summary>
 public void Refresh()
 {
     _firstPersonFlyingController = Resources.FindObjectsOfTypeAll <FirstPersonFlyingController>().FirstOrDefault();
     _vrInputModule = _firstPersonFlyingController.GetField <VRInputModule, FirstPersonFlyingController>("_vrInputModule");
     _camera        = _firstPersonFlyingController.GetField <Camera, FirstPersonFlyingController>("_camera");
     _vrInputModule.transform.SetParent(transform);
     if (_originalOriginLocation == null)
     {
         _originalOriginLocation = _firstPersonFlyingController.transform;
     }
     if (_helper.currentXRDeviceModel == XRDeviceModel.Unknown)
     {
         _camera.fieldOfView = _options.CameraFOV;
     }
     _firstPersonFlyingController.transform.SetParent(transform);
     _firstPersonFlyingController.SetField("_cameraFov", _options.CameraFOV);
     _firstPersonFlyingController.SetField("_moveSensitivity", _options.MoveSensitivity);
     _leftController  = _firstPersonFlyingController.GetField <VRController, FirstPersonFlyingController>("_controller0");
     _rightController = _firstPersonFlyingController.GetField <VRController, FirstPersonFlyingController>("_controller1");
 }
Пример #6
0
        public void Toggle(bool state)
        {
            if (_firstPersonFlyingController == null)
            {
                _firstPersonFlyingController = Resources.FindObjectsOfTypeAll <FirstPersonFlyingController>().FirstOrDefault();
                _vrInputModule = _firstPersonFlyingController.GetField <VRInputModule, FirstPersonFlyingController>("_vrInputModule");
                _vrInputModule.transform.SetParent(transform);
                _firstPersonFlyingController.transform.SetParent(transform);

                _firstPersonFlyingController.SetField("_cameraFov", _cameraFOV);
                _firstPersonFlyingController.SetField("_moveSensitivity", _moveSensitivity);
                _firstPersonFlyingController.GetField <Camera, FirstPersonFlyingController>("_camera").fieldOfView = _cameraFOV;
            }

            _vrInputModule.enabled = state;
            _vrInputModule.gameObject.SetActive(true);
            _firstPersonFlyingController.enabled = state;
            Cursor.lockState = state ? CursorLockMode.Locked : CursorLockMode.None;
            Cursor.visible   = !state;
            Enabled          = state;
        }
Пример #7
0
        /// <summary>
        /// Only ever called once on the first frame the script is Enabled. Start is called after any other script's Awake() and before Update().
        /// </summary>
        private void Start()
        {
            if (!Environment.GetCommandLineArgs().Any(x => x.ToUpper() == "FPFC"))
            {
                return;
            }
            this.firstPersonFlyingController = Instantiate(Resources.FindObjectsOfTypeAll <FirstPersonFlyingController>().FirstOrDefault());
            if (this.firstPersonFlyingController == null)
            {
                return;
            }
            var cams = Resources.FindObjectsOfTypeAll <Camera>();

            foreach (var cam in cams)
            {
                if (cam.name == "MainCamera")
                {
                    cam.enabled = false;
                    this.firstPersonFlyingController.GetField <Camera, FirstPersonFlyingController>("_camera").enabled = true;
                }
            }
        }
Пример #8
0
 static void Postfix(FirstPersonFlyingController __instance)
 {
     instance = __instance;
 }