mirror of
https://github.com/NotAKidoS/NAK_CVR_Mods.git
synced 2025-09-02 06:19:22 +00:00
well
This commit is contained in:
parent
81affe9377
commit
845baee849
4 changed files with 45 additions and 26 deletions
|
@ -44,21 +44,18 @@ public class MainMenuHelper : MonoBehaviour
|
|||
UpdateMenuPosition();
|
||||
}
|
||||
|
||||
void OnDisable()
|
||||
void OnEnable()
|
||||
{
|
||||
independentHeadTurn = false;
|
||||
returnIndependentHeadTurn = false;
|
||||
prevIndependentHeadTurn = false;
|
||||
}
|
||||
|
||||
public void ToggleDesktopInputMethod(bool flag)
|
||||
void OnDisable()
|
||||
{
|
||||
if (MetaPort.Instance.isUsingVr) return;
|
||||
PlayerSetup.Instance._movementSystem.disableCameraControl = flag;
|
||||
CVRInputManager.Instance.inputEnabled = !flag;
|
||||
RootLogic.Instance.ToggleMouse(flag);
|
||||
CVR_MenuManager.Instance.desktopControllerRay.enabled = !flag;
|
||||
Traverse.Create(CVR_MenuManager.Instance).Field("_desktopMouseMode").SetValue(flag);
|
||||
independentHeadTurn = false;
|
||||
returnIndependentHeadTurn = false;
|
||||
prevIndependentHeadTurn = false;
|
||||
}
|
||||
|
||||
public void CreateWorldAnchors()
|
||||
|
@ -103,6 +100,7 @@ public class MainMenuHelper : MonoBehaviour
|
|||
return;
|
||||
}
|
||||
|
||||
float angle = (float)ms_followAngleY.GetValue(MovementSystem.Instance);
|
||||
bool independentHeadTurnChanged = CVRInputManager.Instance.independentHeadTurn != prevIndependentHeadTurn;
|
||||
if (independentHeadTurnChanged)
|
||||
{
|
||||
|
@ -110,10 +108,10 @@ public class MainMenuHelper : MonoBehaviour
|
|||
//if pressing but not already enabled
|
||||
if (prevIndependentHeadTurn)
|
||||
{
|
||||
if (!independentHeadTurn)
|
||||
if (!independentHeadTurn && angle == 0f)
|
||||
{
|
||||
UpdateWorldAnchors();
|
||||
ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
MSP_MenuInfo.ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
independentHeadTurn = true;
|
||||
}
|
||||
returnIndependentHeadTurn = false;
|
||||
|
@ -126,12 +124,11 @@ public class MainMenuHelper : MonoBehaviour
|
|||
|
||||
if (returnIndependentHeadTurn)
|
||||
{
|
||||
float angle = (float)ms_followAngleY.GetValue(MovementSystem.Instance);
|
||||
if (angle == 0f)
|
||||
{
|
||||
independentHeadTurn = false;
|
||||
returnIndependentHeadTurn = false;
|
||||
ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
MSP_MenuInfo.ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -43,21 +43,18 @@ public class QuickMenuHelper : MonoBehaviour
|
|||
UpdateMenuPosition();
|
||||
}
|
||||
|
||||
void OnDisable()
|
||||
void OnEnable()
|
||||
{
|
||||
independentHeadTurn = false;
|
||||
returnIndependentHeadTurn = false;
|
||||
prevIndependentHeadTurn = false;
|
||||
}
|
||||
|
||||
public void ToggleDesktopInputMethod(bool flag)
|
||||
void OnDisable()
|
||||
{
|
||||
if (MetaPort.Instance.isUsingVr) return;
|
||||
PlayerSetup.Instance._movementSystem.disableCameraControl = flag;
|
||||
CVRInputManager.Instance.inputEnabled = !flag;
|
||||
RootLogic.Instance.ToggleMouse(flag);
|
||||
CVR_MenuManager.Instance.desktopControllerRay.enabled = !flag;
|
||||
Traverse.Create(CVR_MenuManager.Instance).Field("_desktopMouseMode").SetValue(flag);
|
||||
independentHeadTurn = false;
|
||||
returnIndependentHeadTurn = false;
|
||||
prevIndependentHeadTurn = false;
|
||||
}
|
||||
|
||||
public void CreateWorldAnchors()
|
||||
|
@ -85,6 +82,7 @@ public class QuickMenuHelper : MonoBehaviour
|
|||
return;
|
||||
}
|
||||
|
||||
float angle = (float)ms_followAngleY.GetValue(MovementSystem.Instance);
|
||||
bool independentHeadTurnChanged = CVRInputManager.Instance.independentHeadTurn != prevIndependentHeadTurn;
|
||||
if (independentHeadTurnChanged)
|
||||
{
|
||||
|
@ -92,10 +90,10 @@ public class QuickMenuHelper : MonoBehaviour
|
|||
//if pressing but not already enabled
|
||||
if (prevIndependentHeadTurn)
|
||||
{
|
||||
if (!independentHeadTurn)
|
||||
if (!independentHeadTurn && angle == 0f)
|
||||
{
|
||||
UpdateWorldAnchors();
|
||||
ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
MSP_MenuInfo.ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
independentHeadTurn = true;
|
||||
}
|
||||
returnIndependentHeadTurn = false;
|
||||
|
@ -108,12 +106,11 @@ public class QuickMenuHelper : MonoBehaviour
|
|||
|
||||
if (returnIndependentHeadTurn)
|
||||
{
|
||||
float angle = (float)ms_followAngleY.GetValue(MovementSystem.Instance);
|
||||
if (angle == 0f)
|
||||
{
|
||||
independentHeadTurn = false;
|
||||
returnIndependentHeadTurn = false;
|
||||
ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
MSP_MenuInfo.ToggleDesktopInputMethod(!prevIndependentHeadTurn);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue