Fix animator overrides (chairs, etc.):
diff --git a/ml_drs/Properties/AssemblyInfo.cs b/ml_drs/Properties/AssemblyInfo.cs
index 36e4ddb..b7b5255 100644
--- a/ml_drs/Properties/AssemblyInfo.cs
+++ b/ml_drs/Properties/AssemblyInfo.cs
@@ -1,10 +1,6 @@
using System.Reflection;
-[assembly: AssemblyTitle("DesktopReticleSwitch")]
-[assembly: AssemblyVersion("1.0.0")]
-[assembly: AssemblyFileVersion("1.0.0")]
-
-[assembly: MelonLoader.MelonInfo(typeof(ml_drs.DesktopReticleSwitch), "DesktopReticleSwitch", "1.0.0", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
+[assembly: MelonLoader.MelonInfo(typeof(ml_drs.DesktopReticleSwitch), "DesktopReticleSwitch", "1.0.1", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonPlatform(MelonLoader.MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
[assembly: MelonLoader.MelonPlatformDomain(MelonLoader.MelonPlatformDomainAttribute.CompatibleDomains.MONO)]
\ No newline at end of file
diff --git a/ml_drs/ml_drs.csproj b/ml_drs/ml_drs.csproj
index 3809559..c03bfc6 100644
--- a/ml_drs/ml_drs.csproj
+++ b/ml_drs/ml_drs.csproj
@@ -1,76 +1,49 @@
-
-
-
+
+
- Debug
- AnyCPU
- {06CD5155-4459-48C3-8A53-E0B91136351B}
- Library
- Properties
- ml_drs
- ml_drs
- v4.7.2
- 512
- true
+ netstandard2.1
+ x64
+ DesktopReticleSwitch
+ DesktopReticleSwitch
+ SDraw
+ None
+ 1.0.1
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
+
+
+ none
+ false
+
-
- False
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+
+
+
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+ false
- C:\Games\Steam\common\ChilloutVR\ChilloutVR_Data\Managed\cohtml.Net.dll
- False
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\cohtml.Net.dll
+ false
-
- C:\Games\Steam\common\ChilloutVR\ChilloutVR_Data\Managed\Cohtml.Runtime.dll
- False
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
+ false
-
- False
- D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\MelonLoader.dll
- False
-
-
-
-
-
-
-
-
- False
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
+ false
- C:\Games\Steam\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.InputLegacyModule.dll
- False
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.InputLegacyModule.dll
+ false
-
-
-
-
-
-
- copy /y "$(TargetPath)" "D:\Games\Steam\steamapps\common\ChilloutVR\Mods\"
-
-
\ No newline at end of file
+
+
+
+
+
+
diff --git a/ml_drs/ml_drs.csproj.user b/ml_drs/ml_drs.csproj.user
deleted file mode 100644
index 5c67b34..0000000
--- a/ml_drs/ml_drs.csproj.user
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\;D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\
-
-
\ No newline at end of file
diff --git a/ml_egn/Properties/AssemblyInfo.cs b/ml_egn/Properties/AssemblyInfo.cs
index 2bd2627..0e062d0 100644
--- a/ml_egn/Properties/AssemblyInfo.cs
+++ b/ml_egn/Properties/AssemblyInfo.cs
@@ -1,10 +1,6 @@
using System.Reflection;
-[assembly: AssemblyTitle("ExtendedGameNotifications")]
-[assembly: AssemblyVersion("1.0.2")]
-[assembly: AssemblyFileVersion("1.0.2")]
-
-[assembly: MelonLoader.MelonInfo(typeof(ml_egn.ExtendedGameNotifications), "ExtendedGameNotifications", "1.0.2", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
+[assembly: MelonLoader.MelonInfo(typeof(ml_egn.ExtendedGameNotifications), "ExtendedGameNotifications", "1.0.3", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonPlatform(MelonLoader.MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
[assembly: MelonLoader.MelonPlatformDomain(MelonLoader.MelonPlatformDomainAttribute.CompatibleDomains.MONO)]
\ No newline at end of file
diff --git a/ml_egn/ml_egn.csproj b/ml_egn/ml_egn.csproj
index d3728e6..f819e1d 100644
--- a/ml_egn/ml_egn.csproj
+++ b/ml_egn/ml_egn.csproj
@@ -1,82 +1,55 @@
-
-
-
+
+
- Debug
- AnyCPU
- {1B5ACA07-6266-4C9A-BA30-D4BBE6634846}
- Library
- Properties
- ml_egn
- ml_egn
- v4.7.2
- 512
- true
+ netstandard2.1
+ x64
+ ExtendedGameNotifications
+ 1.0.3
+ SDraw
+ None
+ ExtendedGameNotifications
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
+
+
+ none
+ false
+
-
- False
- F:\games\Steam\common\ChilloutVR\MelonLoader\0Harmony.dll
- False
+
+
+
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\0Harmony.dll
-
- False
- F:\games\Steam\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
- False
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\cohtml.Net.dll
+ false
- False
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\DarkRift.dll
+ false
-
- False
- False
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\DarkRift.Client.dll
+ false
-
- False
- F:\games\Steam\common\ChilloutVR\MelonLoader\MelonLoader.dll
- False
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
-
-
-
-
-
-
-
-
- False
- False
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
+ false
-
-
-
-
-
-
-
-
-
-
-
- copy /y "$(TargetPath)" "D:\Games\Steam\steamapps\common\ChilloutVR\Mods\"
-
-
\ No newline at end of file
+
+
+
+
+
+
diff --git a/ml_egn/ml_egn.csproj.user b/ml_egn/ml_egn.csproj.user
deleted file mode 100644
index d2e6c0a..0000000
--- a/ml_egn/ml_egn.csproj.user
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\;D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\
-
-
\ No newline at end of file
diff --git a/ml_lme/LeapInput.cs b/ml_lme/LeapInput.cs
index 38d9ffa..2614b0f 100644
--- a/ml_lme/LeapInput.cs
+++ b/ml_lme/LeapInput.cs
@@ -2,16 +2,14 @@
using ABI_RC.Core.Player;
using ABI_RC.Core.Savior;
using ABI_RC.Systems.IK;
+using ABI_RC.Systems.InputManagement;
using System.Collections;
using UnityEngine;
namespace ml_lme
{
- [DisallowMultipleComponent]
class LeapInput : CVRInputModule
{
- CVRInputManager m_inputManager = null;
- InputModuleSteamVR m_steamVrModule = null;
bool m_inVR = false;
bool m_gripToGrab = true;
@@ -26,29 +24,37 @@ namespace ml_lme
bool m_gripLeft = false;
bool m_gripRight = false;
- public new void Start()
+ ~LeapInput()
{
- base.Start();
+ Settings.EnabledChange -= this.OnEnableChange;
+ Settings.InputChange -= this.OnInputChange;
+
+ MetaPort.Instance.settings.settingBoolChanged.RemoveListener(this.OnGameSettingBoolChange);
+ }
+
+ public override void ModuleAdded()
+ {
+ base.ModuleAdded();
+
+ InputEnabled = Settings.Enabled;
+ HapticFeedback = false;
- m_inputManager = CVRInputManager.Instance; // _inputManager is stripped out, cool beans
- m_steamVrModule = m_inputManager.GetComponent
();
m_inVR = Utils.IsInVR();
- m_handRayLeft = LeapTracking.GetInstance().GetLeftHand().gameObject.AddComponent();
+ m_handRayLeft = LeapTracking.Instance.GetLeftHand().gameObject.AddComponent();
m_handRayLeft.hand = true;
m_handRayLeft.generalMask = -1485;
m_handRayLeft.isInteractionRay = true;
m_handRayLeft.triggerGazeEvents = false;
m_handRayLeft.holderRoot = m_handRayLeft.gameObject;
- m_handRayLeft.attachmentDistance = 0f;
- m_handRayRight = LeapTracking.GetInstance().GetRightHand().gameObject.AddComponent();
+ m_handRayRight = LeapTracking.Instance.GetRightHand().gameObject.AddComponent();
m_handRayRight.hand = false;
m_handRayRight.generalMask = -1485;
m_handRayRight.isInteractionRay = true;
m_handRayRight.triggerGazeEvents = false;
m_handRayRight.holderRoot = m_handRayRight.gameObject;
- m_handRayRight.attachmentDistance = 0f;
+ m_handRayLeft.attachmentDistance = 0f;
m_lineLeft = m_handRayLeft.gameObject.AddComponent();
m_lineLeft.endWidth = 1f;
@@ -61,6 +67,7 @@ namespace ml_lme
m_lineLeft.enabled = false;
m_lineLeft.receiveShadows = false;
m_handRayLeft.lineRenderer = m_lineLeft;
+ m_handRayRight.attachmentDistance = 0f;
m_lineRight = m_handRayRight.gameObject.AddComponent();
m_lineRight.endWidth = 1f;
@@ -112,20 +119,12 @@ namespace ml_lme
m_lineRight.gameObject.layer = PlayerSetup.Instance.leftRay.gameObject.layer;
}
- void OnDestroy()
+ public override void UpdateInput()
{
- Settings.EnabledChange -= this.OnEnableChange;
- Settings.InputChange -= this.OnInputChange;
-
- MetaPort.Instance.settings.settingBoolChanged.RemoveListener(this.OnGameSettingBoolChange);
- }
-
- void Update()
- {
- GestureMatcher.LeapData l_data = LeapManager.GetInstance().GetLatestData();
-
- if(Settings.Enabled)
+ if(InputEnabled)
{
+ GestureMatcher.LeapData l_data = LeapManager.Instance.GetLatestData();
+
if(l_data.m_leftHand.m_present)
{
SetFingersInput(l_data.m_leftHand, true);
@@ -162,25 +161,24 @@ namespace ml_lme
{
if(m_inVR)
{
- m_inputManager.individualFingerTracking = !m_steamVrModule.GetIndexGestureToggle();
- m_inputManager.individualFingerTracking |= (l_data.m_leftHand.m_present || l_data.m_rightHand.m_present);
+ _inputManager.individualFingerTracking = !CVRInputManager._moduleXR.GestureToggleValue;
+ _inputManager.individualFingerTracking |= (l_data.m_leftHand.m_present || l_data.m_rightHand.m_present);
}
else
- m_inputManager.individualFingerTracking = (l_data.m_leftHand.m_present || l_data.m_rightHand.m_present);
- IKSystem.Instance.FingerSystem.controlActive = m_inputManager.individualFingerTracking;
+ _inputManager.individualFingerTracking = (l_data.m_leftHand.m_present || l_data.m_rightHand.m_present);
+ IKSystem.Instance.FingerSystem.controlActive = _inputManager.individualFingerTracking;
}
- }
- m_handRayLeft.enabled = (l_data.m_leftHand.m_present && (!m_inVR || !Utils.IsLeftHandTracked() || !Settings.FingersOnly));
- m_handRayRight.enabled = (l_data.m_rightHand.m_present && (!m_inVR || !Utils.IsRightHandTracked() || !Settings.FingersOnly));
+ m_handRayLeft.enabled = (l_data.m_leftHand.m_present && (!m_inVR || !Utils.IsLeftHandTracked() || !Settings.FingersOnly));
+ m_handRayRight.enabled = (l_data.m_rightHand.m_present && (!m_inVR || !Utils.IsRightHandTracked() || !Settings.FingersOnly));
+
+ base.UpdateInput();
+ }
}
- public override void UpdateInput()
+ public override void Update_Interaction()
{
- if(!Settings.Enabled)
- return;
-
- GestureMatcher.LeapData l_data = LeapManager.GetInstance().GetLatestData();
+ GestureMatcher.LeapData l_data = LeapManager.Instance.GetLatestData();
if(Settings.Input)
{
@@ -193,22 +191,22 @@ namespace ml_lme
l_interactValue = Mathf.Clamp01(Mathf.InverseLerp(Mathf.Min(Settings.GripThreadhold, Settings.InteractThreadhold), Mathf.Max(Settings.GripThreadhold, Settings.InteractThreadhold), l_strength));
else
l_interactValue = Mathf.Clamp01(Mathf.InverseLerp(0f, Settings.InteractThreadhold, l_strength));
- m_inputManager.interactLeftValue = Mathf.Max(l_interactValue, m_inputManager.interactLeftValue);
+ _inputManager.interactLeftValue = Mathf.Max(l_interactValue, _inputManager.interactLeftValue);
if(m_interactLeft != (l_strength > Settings.InteractThreadhold))
{
m_interactLeft = (l_strength > Settings.InteractThreadhold);
- m_inputManager.interactLeftDown |= m_interactLeft;
- m_inputManager.interactLeftUp |= !m_interactLeft;
+ _inputManager.interactLeftDown |= m_interactLeft;
+ _inputManager.interactLeftUp |= !m_interactLeft;
}
float l_gripValue = Mathf.Clamp01(Mathf.InverseLerp(0f, Settings.GripThreadhold, l_strength));
- m_inputManager.gripLeftValue = Mathf.Max(l_gripValue, m_inputManager.gripLeftValue);
+ _inputManager.gripLeftValue = Mathf.Max(l_gripValue, _inputManager.gripLeftValue);
if(m_gripLeft != (l_strength > Settings.GripThreadhold))
{
m_gripLeft = (l_strength > Settings.GripThreadhold);
- m_inputManager.gripLeftDown |= m_gripLeft;
- m_inputManager.gripLeftUp |= !m_gripLeft;
+ _inputManager.gripLeftDown |= m_gripLeft;
+ _inputManager.gripLeftUp |= !m_gripLeft;
}
}
@@ -221,22 +219,22 @@ namespace ml_lme
l_interactValue = Mathf.Clamp01(Mathf.InverseLerp(Mathf.Min(Settings.GripThreadhold, Settings.InteractThreadhold), Mathf.Max(Settings.GripThreadhold, Settings.InteractThreadhold), l_strength));
else
l_interactValue = Mathf.Clamp01(Mathf.InverseLerp(0f, Settings.InteractThreadhold, l_strength));
- m_inputManager.interactRightValue = Mathf.Max(l_interactValue, m_inputManager.interactRightValue);
+ _inputManager.interactRightValue = Mathf.Max(l_interactValue, _inputManager.interactRightValue);
if(m_interactRight != (l_strength > Settings.InteractThreadhold))
{
m_interactRight = (l_strength > Settings.InteractThreadhold);
- m_inputManager.interactRightDown |= m_interactRight;
- m_inputManager.interactRightUp |= !m_interactRight;
+ _inputManager.interactRightDown |= m_interactRight;
+ _inputManager.interactRightUp |= !m_interactRight;
}
float l_gripValue = Mathf.Clamp01(Mathf.InverseLerp(0f, Settings.GripThreadhold, l_strength));
- m_inputManager.gripRightValue = Mathf.Max(l_gripValue, m_inputManager.gripRightValue);
+ _inputManager.gripRightValue = Mathf.Max(l_gripValue, _inputManager.gripRightValue);
if(m_gripRight != (l_strength > Settings.GripThreadhold))
{
m_gripRight = (l_strength > Settings.GripThreadhold);
- m_inputManager.gripRightDown |= m_gripRight;
- m_inputManager.gripRightUp |= !m_gripRight;
+ _inputManager.gripRightDown |= m_gripRight;
+ _inputManager.gripRightUp |= !m_gripRight;
}
}
}
@@ -246,87 +244,91 @@ namespace ml_lme
// Left hand gestures
if(l_data.m_leftHand.m_present)
{
- m_inputManager.gestureLeftRaw = 0f;
+ _inputManager.gestureLeftRaw = 0f;
// Finger Point & Finger Gun
- if((m_inputManager.fingerCurlLeftIndex < 0.2f) && (m_inputManager.fingerCurlLeftMiddle > 0.75f) &&
- (m_inputManager.fingerCurlLeftRing > 0.75f) && (m_inputManager.fingerCurlLeftPinky > 0.75f))
+ if(_inputManager.fingerCurlLeftIndex < 0.2f && _inputManager.fingerCurlLeftMiddle > 0.75f &&
+ _inputManager.fingerCurlLeftRing > 0.75f && _inputManager.fingerCurlLeftPinky > 0.75f)
{
- m_inputManager.gestureLeftRaw = (m_inputManager.fingerCurlLeftThumb >= 0.5f) ? 4f : 3f;
+ _inputManager.gestureLeftRaw = _inputManager.fingerCurlLeftThumb >= 0.5f ? 4f : 3f;
}
// Peace Sign
- if((m_inputManager.fingerCurlLeftIndex < 0.2f) && (m_inputManager.fingerCurlLeftMiddle < 0.2f) &&
- (m_inputManager.fingerCurlLeftRing > 0.75f) && (m_inputManager.fingerCurlLeftPinky > 0.75f))
+ if(_inputManager.fingerCurlLeftIndex < 0.2f && _inputManager.fingerCurlLeftMiddle < 0.2f &&
+ _inputManager.fingerCurlLeftRing > 0.75f && _inputManager.fingerCurlLeftPinky > 0.75f)
{
- m_inputManager.gestureLeftRaw = 5f;
+ _inputManager.gestureLeftRaw = 5f;
}
// Rock and Roll
- if((m_inputManager.fingerCurlLeftIndex < 0.2f) && (m_inputManager.fingerCurlLeftMiddle > 0.75f) &&
- (m_inputManager.fingerCurlLeftRing > 0.75f) && (m_inputManager.fingerCurlLeftPinky < 0.5f))
+ if(_inputManager.fingerCurlLeftIndex < 0.2f && _inputManager.fingerCurlLeftMiddle > 0.75f &&
+ _inputManager.fingerCurlLeftRing > 0.75f && _inputManager.fingerCurlLeftPinky < 0.5f)
{
- m_inputManager.gestureLeftRaw = 6f;
+ _inputManager.gestureLeftRaw = 6f;
}
// Fist & Thumbs Up
- if((m_inputManager.fingerCurlLeftIndex > 0.5f) && (m_inputManager.fingerCurlLeftMiddle > 0.5f) &&
- (m_inputManager.fingerCurlLeftRing > 0.5f) && (m_inputManager.fingerCurlLeftPinky > 0.5f))
+ if(_inputManager.fingerCurlLeftIndex > 0.5f && _inputManager.fingerCurlLeftMiddle > 0.5f &&
+ _inputManager.fingerCurlLeftRing > 0.5f && _inputManager.fingerCurlLeftPinky > 0.5f)
{
- m_inputManager.gestureLeftRaw = (m_inputManager.fingerCurlLeftThumb >= 0.5f) ? ((l_data.m_rightHand.m_grabStrength - 0.5f) * 2f) : 2f;
+ _inputManager.gestureLeftRaw = _inputManager.fingerCurlLeftThumb >= 0.5f
+ ? (l_data.m_rightHand.m_grabStrength - 0.5f) * 2f
+ : 2f;
}
// Open Hand
- if((m_inputManager.fingerCurlLeftIndex < 0.2f) && (m_inputManager.fingerCurlLeftMiddle < 0.2f) &&
- (m_inputManager.fingerCurlLeftRing < 0.2f) && (m_inputManager.fingerCurlLeftPinky < 0.2f))
+ if(_inputManager.fingerCurlLeftIndex < 0.2f && _inputManager.fingerCurlLeftMiddle < 0.2f &&
+ _inputManager.fingerCurlLeftRing < 0.2f && _inputManager.fingerCurlLeftPinky < 0.2f)
{
- m_inputManager.gestureLeftRaw = -1f;
+ _inputManager.gestureLeftRaw = -1f;
}
- m_inputManager.gestureLeft = m_inputManager.gestureLeftRaw;
+ _inputManager.gestureLeft = _inputManager.gestureLeftRaw;
}
// Right hand gestures
if(l_data.m_rightHand.m_present)
{
- m_inputManager.gestureRightRaw = 0f;
+ _inputManager.gestureRightRaw = 0f;
// Finger Point & Finger Gun
- if((m_inputManager.fingerCurlRightIndex < 0.2f) && (m_inputManager.fingerCurlRightMiddle > 0.75f) &&
- (m_inputManager.fingerCurlRightRing > 0.75f) && (m_inputManager.fingerCurlRightPinky > 0.75f))
+ if(_inputManager.fingerCurlRightIndex < 0.2f && _inputManager.fingerCurlRightMiddle > 0.75f &&
+ _inputManager.fingerCurlRightRing > 0.75f && _inputManager.fingerCurlRightPinky > 0.75f)
{
- m_inputManager.gestureRightRaw = (m_inputManager.fingerCurlRightThumb >= 0.5f) ? 4f : 3f;
+ _inputManager.gestureRightRaw = _inputManager.fingerCurlRightThumb >= 0.5f ? 4f : 3f;
}
// Peace Sign
- if((m_inputManager.fingerCurlRightIndex < 0.2f) && (m_inputManager.fingerCurlRightMiddle < 0.2f) &&
- (m_inputManager.fingerCurlRightRing > 0.75f) && (m_inputManager.fingerCurlRightPinky > 0.75f))
+ if(_inputManager.fingerCurlRightIndex < 0.2f && _inputManager.fingerCurlRightMiddle < 0.2f &&
+ _inputManager.fingerCurlRightRing > 0.75f && _inputManager.fingerCurlRightPinky > 0.75f)
{
- m_inputManager.gestureRightRaw = 5f;
+ _inputManager.gestureRightRaw = 5f;
}
// Rock and Roll
- if((m_inputManager.fingerCurlRightIndex < 0.2f) && (m_inputManager.fingerCurlRightMiddle > 0.75f) &&
- (m_inputManager.fingerCurlRightRing > 0.75f) && (m_inputManager.fingerCurlRightPinky < 0.5f))
+ if(_inputManager.fingerCurlRightIndex < 0.2f && _inputManager.fingerCurlRightMiddle > 0.75f &&
+ _inputManager.fingerCurlRightRing > 0.75f && _inputManager.fingerCurlRightPinky < 0.5f)
{
- m_inputManager.gestureRightRaw = 6f;
+ _inputManager.gestureRightRaw = 6f;
}
// Fist & Thumbs Up
- if((m_inputManager.fingerCurlRightIndex > 0.5f) && (m_inputManager.fingerCurlRightMiddle > 0.5f) &&
- (m_inputManager.fingerCurlRightRing > 0.5f) && (m_inputManager.fingerCurlRightPinky > 0.5f))
+ if(_inputManager.fingerCurlRightIndex > 0.5f && _inputManager.fingerCurlRightMiddle > 0.5f &&
+ _inputManager.fingerCurlRightRing > 0.5f && _inputManager.fingerCurlRightPinky > 0.5f)
{
- m_inputManager.gestureRightRaw = (m_inputManager.fingerCurlRightThumb >= 0.5f) ? ((l_data.m_rightHand.m_grabStrength - 0.5f) * 2f) : 2f;
+ _inputManager.gestureRightRaw = _inputManager.fingerCurlRightThumb >= 0.5f
+ ? (l_data.m_rightHand.m_grabStrength - 0.5f) * 2f
+ : 2f;
}
// Open Hand
- if((m_inputManager.fingerCurlRightIndex < 0.2f) && (m_inputManager.fingerCurlRightMiddle < 0.2f) &&
- (m_inputManager.fingerCurlRightRing < 0.2f) && (m_inputManager.fingerCurlRightPinky < 0.2f))
+ if(_inputManager.fingerCurlRightIndex < 0.2f && _inputManager.fingerCurlRightMiddle < 0.2f &&
+ _inputManager.fingerCurlRightRing < 0.2f && _inputManager.fingerCurlRightPinky < 0.2f)
{
- m_inputManager.gestureRightRaw = -1f;
+ _inputManager.gestureRightRaw = -1f;
}
- m_inputManager.gestureRight = m_inputManager.gestureRightRaw;
+ _inputManager.gestureRight = _inputManager.gestureRightRaw;
}
}
}
@@ -334,6 +336,8 @@ namespace ml_lme
// Settings changes
void OnEnableChange(bool p_state)
{
+ InputEnabled = p_state;
+
OnInputChange(p_state && Settings.Input);
UpdateFingerTracking();
m_handVisibleLeft &= p_state;
@@ -364,10 +368,10 @@ namespace ml_lme
void OnGesturesChange(bool p_state)
{
- m_inputManager.gestureLeft = 0f;
- m_inputManager.gestureLeftRaw = 0f;
- m_inputManager.gestureRight = 0f;
- m_inputManager.gestureRightRaw = 0f;
+ _inputManager.gestureLeft = 0f;
+ _inputManager.gestureLeftRaw = 0f;
+ _inputManager.gestureRight = 0f;
+ _inputManager.gestureRightRaw = 0f;
}
// Game events
@@ -386,8 +390,8 @@ namespace ml_lme
// Arbitrary
void UpdateFingerTracking()
{
- m_inputManager.individualFingerTracking = (Settings.Enabled || (m_inVR && Utils.AreKnucklesInUse() && !m_steamVrModule.GetIndexGestureToggle()));
- IKSystem.Instance.FingerSystem.controlActive = m_inputManager.individualFingerTracking;
+ _inputManager.individualFingerTracking = (Settings.Enabled || (m_inVR && Utils.AreKnucklesInUse() && !CVRInputManager._moduleXR.GestureToggleValue));
+ IKSystem.Instance.FingerSystem.controlActive = _inputManager.individualFingerTracking;
if(!Settings.Enabled)
{
@@ -400,29 +404,29 @@ namespace ml_lme
{
if(p_left)
{
- m_inputManager.fingerCurlLeftThumb = p_hand.m_bends[0];
- m_inputManager.fingerCurlLeftIndex = p_hand.m_bends[1];
- m_inputManager.fingerCurlLeftMiddle = p_hand.m_bends[2];
- m_inputManager.fingerCurlLeftRing = p_hand.m_bends[3];
- m_inputManager.fingerCurlLeftPinky = p_hand.m_bends[4];
- IKSystem.Instance.FingerSystem.leftThumbCurl = p_hand.m_bends[0];
- IKSystem.Instance.FingerSystem.leftIndexCurl = p_hand.m_bends[1];
- IKSystem.Instance.FingerSystem.leftMiddleCurl = p_hand.m_bends[2];
- IKSystem.Instance.FingerSystem.leftRingCurl = p_hand.m_bends[3];
- IKSystem.Instance.FingerSystem.leftPinkyCurl = p_hand.m_bends[4];
+ _inputManager.fingerCurlLeftThumb = p_hand.m_bends[0];
+ _inputManager.fingerCurlLeftIndex = p_hand.m_bends[1];
+ _inputManager.fingerCurlLeftMiddle = p_hand.m_bends[2];
+ _inputManager.fingerCurlLeftRing = p_hand.m_bends[3];
+ _inputManager.fingerCurlLeftPinky = p_hand.m_bends[4];
+ _inputManager.fingerSpreadLeftThumb = p_hand.m_spreads[0];
+ _inputManager.fingerSpreadLeftIndex = p_hand.m_spreads[1];
+ _inputManager.fingerSpreadLeftMiddle = p_hand.m_spreads[2];
+ _inputManager.fingerSpreadLeftRing = p_hand.m_spreads[3];
+ _inputManager.fingerSpreadLeftPinky = p_hand.m_spreads[4];
}
else
{
- m_inputManager.fingerCurlRightThumb = p_hand.m_bends[0];
- m_inputManager.fingerCurlRightIndex = p_hand.m_bends[1];
- m_inputManager.fingerCurlRightMiddle = p_hand.m_bends[2];
- m_inputManager.fingerCurlRightRing = p_hand.m_bends[3];
- m_inputManager.fingerCurlRightPinky = p_hand.m_bends[4];
- IKSystem.Instance.FingerSystem.rightThumbCurl = p_hand.m_bends[0];
- IKSystem.Instance.FingerSystem.rightIndexCurl = p_hand.m_bends[1];
- IKSystem.Instance.FingerSystem.rightMiddleCurl = p_hand.m_bends[2];
- IKSystem.Instance.FingerSystem.rightRingCurl = p_hand.m_bends[3];
- IKSystem.Instance.FingerSystem.rightPinkyCurl = p_hand.m_bends[4];
+ _inputManager.fingerCurlRightThumb = p_hand.m_bends[0];
+ _inputManager.fingerCurlRightIndex = p_hand.m_bends[1];
+ _inputManager.fingerCurlRightMiddle = p_hand.m_bends[2];
+ _inputManager.fingerCurlRightRing = p_hand.m_bends[3];
+ _inputManager.fingerCurlRightPinky = p_hand.m_bends[4];
+ _inputManager.fingerSpreadRightThumb = p_hand.m_spreads[0];
+ _inputManager.fingerSpreadRightIndex = p_hand.m_spreads[1];
+ _inputManager.fingerSpreadRightMiddle = p_hand.m_spreads[2];
+ _inputManager.fingerSpreadRightRing = p_hand.m_spreads[3];
+ _inputManager.fingerSpreadRightPinky = p_hand.m_spreads[4];
}
}
@@ -430,29 +434,29 @@ namespace ml_lme
{
if(p_left)
{
- m_inputManager.fingerCurlLeftThumb = 0f;
- m_inputManager.fingerCurlLeftIndex = 0f;
- m_inputManager.fingerCurlLeftMiddle = 0f;
- m_inputManager.fingerCurlLeftRing = 0f;
- m_inputManager.fingerCurlLeftPinky = 0f;
- IKSystem.Instance.FingerSystem.leftThumbCurl = 0f;
- IKSystem.Instance.FingerSystem.leftIndexCurl = 0f;
- IKSystem.Instance.FingerSystem.leftMiddleCurl = 0f;
- IKSystem.Instance.FingerSystem.leftRingCurl = 0f;
- IKSystem.Instance.FingerSystem.leftPinkyCurl = 0f;
+ _inputManager.fingerCurlLeftThumb = 0f;
+ _inputManager.fingerCurlLeftIndex = 0f;
+ _inputManager.fingerCurlLeftMiddle = 0f;
+ _inputManager.fingerCurlLeftRing = 0f;
+ _inputManager.fingerCurlLeftPinky = 0f;
+ _inputManager.fingerSpreadLeftThumb = 0f;
+ _inputManager.fingerSpreadLeftIndex = 0f;
+ _inputManager.fingerSpreadLeftMiddle = 0f;
+ _inputManager.fingerSpreadLeftRing = 0f;
+ _inputManager.fingerSpreadLeftPinky = 0f;
}
else
{
- m_inputManager.fingerCurlRightThumb = 0f;
- m_inputManager.fingerCurlRightIndex = 0f;
- m_inputManager.fingerCurlRightMiddle = 0f;
- m_inputManager.fingerCurlRightRing = 0f;
- m_inputManager.fingerCurlRightPinky = 0f;
- IKSystem.Instance.FingerSystem.rightThumbCurl = 0f;
- IKSystem.Instance.FingerSystem.rightIndexCurl = 0f;
- IKSystem.Instance.FingerSystem.rightMiddleCurl = 0f;
- IKSystem.Instance.FingerSystem.rightRingCurl = 0f;
- IKSystem.Instance.FingerSystem.rightPinkyCurl = 0f;
+ _inputManager.fingerCurlRightThumb = 0f;
+ _inputManager.fingerCurlRightIndex = 0f;
+ _inputManager.fingerCurlRightMiddle = 0f;
+ _inputManager.fingerCurlRightRing = 0f;
+ _inputManager.fingerCurlRightPinky = 0f;
+ _inputManager.fingerSpreadRightThumb = 0f;
+ _inputManager.fingerSpreadRightIndex = 0f;
+ _inputManager.fingerSpreadRightMiddle = 0f;
+ _inputManager.fingerSpreadRightRing = 0f;
+ _inputManager.fingerSpreadRightPinky = 0f;
}
}
@@ -460,13 +464,13 @@ namespace ml_lme
{
if(p_left)
{
- m_inputManager.gestureLeft = 0f;
- m_inputManager.gestureLeftRaw = 0f;
+ _inputManager.gestureLeft = 0f;
+ _inputManager.gestureLeftRaw = 0f;
}
else
{
- m_inputManager.gestureRight = 0f;
- m_inputManager.gestureRightRaw = 0f;
+ _inputManager.gestureRight = 0f;
+ _inputManager.gestureRightRaw = 0f;
}
}
diff --git a/ml_lme/LeapManager.cs b/ml_lme/LeapManager.cs
index 1edaa21..2819eb7 100644
--- a/ml_lme/LeapManager.cs
+++ b/ml_lme/LeapManager.cs
@@ -1,5 +1,6 @@
using ABI_RC.Core.Player;
using ABI_RC.Core.Savior;
+using ABI_RC.Systems.InputManagement;
using System.Collections;
using UnityEngine;
@@ -8,32 +9,22 @@ namespace ml_lme
[DisallowMultipleComponent]
class LeapManager : MonoBehaviour
{
- static LeapManager ms_instance = null;
+ public static LeapManager Instance { get; private set; } = null;
- readonly Leap.Controller m_leapController = null;
- readonly GestureMatcher.LeapData m_leapData = null;
+ Leap.Controller m_leapController = null;
+ GestureMatcher.LeapData m_leapData = null;
LeapTracking m_leapTracking = null;
LeapTracked m_leapTracked = null;
LeapInput m_leapInput = null;
- public static LeapManager GetInstance() => ms_instance;
-
- internal LeapManager()
+ void Awake()
{
+ if(Instance == null)
+ Instance = this;
+
m_leapController = new Leap.Controller();
m_leapData = new GestureMatcher.LeapData();
- }
- ~LeapManager()
- {
- m_leapController.StopConnection();
- m_leapController.Dispose();
- }
-
- void Start()
- {
- if(ms_instance == null)
- ms_instance = this;
DontDestroyOnLoad(this);
@@ -49,41 +40,44 @@ namespace ml_lme
m_leapTracking = new GameObject("[LeapTrackingRoot]").AddComponent();
m_leapTracking.transform.parent = this.transform;
- MelonLoader.MelonCoroutines.Start(WaitForInputManager());
- MelonLoader.MelonCoroutines.Start(WaitForLocalPlayer());
-
OnEnableChange(Settings.Enabled);
OnTrackingModeChange(Settings.TrackingMode);
+
+ MelonLoader.MelonCoroutines.Start(WaitForObjects());
}
void OnDestroy()
{
- if(ms_instance == this)
- ms_instance = null;
+ if(Instance == this)
+ Instance = null;
+ m_leapController.StopConnection();
m_leapController.Device -= this.OnLeapDeviceInitialized;
m_leapController.DeviceFailure -= this.OnLeapDeviceFailure;
m_leapController.DeviceLost -= this.OnLeapDeviceLost;
m_leapController.Connect -= this.OnLeapServiceConnect;
m_leapController.Disconnect -= this.OnLeapServiceDisconnect;
+ m_leapController.Dispose();
+ m_leapController = null;
Settings.EnabledChange -= this.OnEnableChange;
Settings.TrackingModeChange -= this.OnTrackingModeChange;
}
- IEnumerator WaitForInputManager()
+ IEnumerator WaitForObjects()
{
while(CVRInputManager.Instance == null)
yield return null;
- m_leapInput = CVRInputManager.Instance.gameObject.AddComponent();
- }
-
- IEnumerator WaitForLocalPlayer()
- {
while(PlayerSetup.Instance == null)
yield return null;
+ while(LeapTracking.Instance == null)
+ yield return null;
+
+ m_leapInput = new LeapInput();
+ CVRInputManager.Instance.AddInputModule(m_leapInput);
+
m_leapTracked = PlayerSetup.Instance.gameObject.AddComponent();
}
@@ -168,8 +162,9 @@ namespace ml_lme
{
if(m_leapTracking != null)
m_leapTracking.OnAvatarSetup();
- if(m_leapInput != null)
- m_leapInput.OnAvatarSetup();
+
+ m_leapInput?.OnAvatarSetup();
+
if(m_leapTracked != null)
m_leapTracked.OnAvatarSetup();
}
@@ -182,8 +177,7 @@ namespace ml_lme
internal void OnRayScale(float p_scale)
{
- if(m_leapInput != null)
- m_leapInput.OnRayScale(p_scale);
+ m_leapInput?.OnRayScale(p_scale);
}
internal void OnPlayspaceScale(float p_relation)
diff --git a/ml_lme/LeapTracked.cs b/ml_lme/LeapTracked.cs
index c064bfc..c7ff8ed 100644
--- a/ml_lme/LeapTracked.cs
+++ b/ml_lme/LeapTracked.cs
@@ -43,12 +43,12 @@ namespace ml_lme
m_inVR = Utils.IsInVR();
m_leftHandTarget = new GameObject("RotationTarget").transform;
- m_leftHandTarget.parent = LeapTracking.GetInstance().GetLeftHand();
+ m_leftHandTarget.parent = LeapTracking.Instance.GetLeftHand();
m_leftHandTarget.localPosition = Vector3.zero;
m_leftHandTarget.localRotation = Quaternion.identity;
m_rightHandTarget = new GameObject("RotationTarget").transform;
- m_rightHandTarget.parent = LeapTracking.GetInstance().GetRightHand();
+ m_rightHandTarget.parent = LeapTracking.Instance.GetRightHand();
m_rightHandTarget.localPosition = Vector3.zero;
m_rightHandTarget.localRotation = Quaternion.identity;
@@ -72,7 +72,7 @@ namespace ml_lme
{
if(m_enabled)
{
- GestureMatcher.LeapData l_data = LeapManager.GetInstance().GetLatestData();
+ GestureMatcher.LeapData l_data = LeapManager.Instance.GetLatestData();
if((m_leftArmIK != null) && (m_rightArmIK != null))
{
@@ -92,7 +92,7 @@ namespace ml_lme
if(l_data.m_leftHand.m_present && !m_leftTargetActive)
{
m_vrIK.solver.leftArm.target = m_leftHandTarget;
- m_vrIK.solver.leftArm.bendGoal = LeapTracking.GetInstance().GetLeftElbow();
+ m_vrIK.solver.leftArm.bendGoal = LeapTracking.Instance.GetLeftElbow();
m_vrIK.solver.leftArm.bendGoalWeight = (m_trackElbows ? 1f : 0f);
m_leftTargetActive = true;
}
@@ -107,7 +107,7 @@ namespace ml_lme
if(l_data.m_rightHand.m_present && !m_rightTargetActive)
{
m_vrIK.solver.rightArm.target = m_rightHandTarget;
- m_vrIK.solver.rightArm.bendGoal = LeapTracking.GetInstance().GetRightElbow();
+ m_vrIK.solver.rightArm.bendGoal = LeapTracking.Instance.GetRightElbow();
m_vrIK.solver.rightArm.bendGoalWeight = (m_trackElbows ? 1f : 0f);
m_rightTargetActive = true;
}
@@ -126,7 +126,7 @@ namespace ml_lme
{
if(m_enabled && !m_inVR && (m_poseHandler != null))
{
- GestureMatcher.LeapData l_data = LeapManager.GetInstance().GetLatestData();
+ GestureMatcher.LeapData l_data = LeapManager.Instance.GetLatestData();
Vector3 l_hipsLocalPos = m_hips.localPosition;
Quaternion l_hipsLocalRot = m_hips.localRotation;
@@ -281,7 +281,7 @@ namespace ml_lme
PlayerSetup.Instance._animator.transform
);
m_leftArmIK.solver.arm.target = m_leftHandTarget;
- m_leftArmIK.solver.arm.bendGoal = LeapTracking.GetInstance().GetLeftElbow();
+ m_leftArmIK.solver.arm.bendGoal = LeapTracking.Instance.GetLeftElbow();
m_leftArmIK.solver.arm.bendGoalWeight = (m_trackElbows ? 1f : 0f);
m_leftArmIK.enabled = (m_enabled && !m_fingersOnly);
@@ -296,7 +296,7 @@ namespace ml_lme
PlayerSetup.Instance._animator.transform
);
m_rightArmIK.solver.arm.target = m_rightHandTarget;
- m_rightArmIK.solver.arm.bendGoal = LeapTracking.GetInstance().GetRightElbow();
+ m_rightArmIK.solver.arm.bendGoal = LeapTracking.Instance.GetRightElbow();
m_rightArmIK.solver.arm.bendGoalWeight = (m_trackElbows ? 1f : 0f);
m_rightArmIK.enabled = (m_enabled && !m_fingersOnly);
diff --git a/ml_lme/LeapTracking.cs b/ml_lme/LeapTracking.cs
index 743cee1..6bb9ffb 100644
--- a/ml_lme/LeapTracking.cs
+++ b/ml_lme/LeapTracking.cs
@@ -7,7 +7,7 @@ namespace ml_lme
[DisallowMultipleComponent]
class LeapTracking : MonoBehaviour
{
- static LeapTracking ms_instance = null;
+ public static LeapTracking Instance { get; private set; } = null;
static Quaternion ms_dummyRotation = Quaternion.identity;
static readonly Quaternion ms_hmdRotation = new Quaternion(0f, 0.7071068f, 0.7071068f, 0f);
static readonly Quaternion ms_screentopRotation = new Quaternion(0f, 0f, -1f, 0f);
@@ -25,12 +25,10 @@ namespace ml_lme
float m_scaleRelation = 1f;
- public static LeapTracking GetInstance() => ms_instance;
-
void Start()
{
- if(ms_instance == null)
- ms_instance = this;
+ if(Instance == null)
+ Instance = this;
m_inVR = Utils.IsInVR();
@@ -101,8 +99,8 @@ namespace ml_lme
void OnDestroy()
{
- if(ms_instance == this)
- ms_instance = null;
+ if(Instance == this)
+ Instance = null;
Settings.DesktopOffsetChange -= this.OnDesktopOffsetChange;
Settings.ModelVisibilityChange -= this.OnModelVisibilityChange;
@@ -116,7 +114,7 @@ namespace ml_lme
{
if(Settings.Enabled)
{
- GestureMatcher.LeapData l_data = LeapManager.GetInstance().GetLatestData();
+ GestureMatcher.LeapData l_data = LeapManager.Instance.GetLatestData();
if(l_data.m_leftHand.m_present)
{
diff --git a/ml_lme/Properties/AssemblyInfo.cs b/ml_lme/Properties/AssemblyInfo.cs
index 872d5c1..bd17c56 100644
--- a/ml_lme/Properties/AssemblyInfo.cs
+++ b/ml_lme/Properties/AssemblyInfo.cs
@@ -1,10 +1,6 @@
using System.Reflection;
-[assembly: AssemblyTitle("LeapMotionExtension")]
-[assembly: AssemblyVersion("1.3.9")]
-[assembly: AssemblyFileVersion("1.3.9")]
-
-[assembly: MelonLoader.MelonInfo(typeof(ml_lme.LeapMotionExtension), "LeapMotionExtension", "1.3.9", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
+[assembly: MelonLoader.MelonInfo(typeof(ml_lme.LeapMotionExtension), "LeapMotionExtension", "1.4.0", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonOptionalDependencies("ml_pmc")]
[assembly: MelonLoader.MelonPlatform(MelonLoader.MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
diff --git a/ml_lme/Utils.cs b/ml_lme/Utils.cs
index f67df6c..cbddd42 100644
--- a/ml_lme/Utils.cs
+++ b/ml_lme/Utils.cs
@@ -1,6 +1,7 @@
using ABI_RC.Core.Player;
using ABI_RC.Core.Savior;
using ABI_RC.Core.UI;
+using ABI_RC.Systems.InputManagement;
using System.Linq;
using System.Reflection;
using UnityEngine;
@@ -9,15 +10,10 @@ namespace ml_lme
{
static class Utils
{
- static readonly Quaternion ms_hmdRotationFix = new Quaternion(0f, 0.7071068f, 0.7071068f, 0f);
- static readonly Quaternion ms_screentopRotationFix = new Quaternion(0f, 0f, -1f, 0f);
- static readonly FieldInfo ms_indexGestureToggle = typeof(InputModuleSteamVR).GetField("_steamVrIndexGestureToggleValue", BindingFlags.Instance | BindingFlags.NonPublic);
-
public static bool IsInVR() => ((CheckVR.Instance != null) && CheckVR.Instance.hasVrDeviceLoaded);
- public static bool AreKnucklesInUse() => PlayerSetup.Instance._trackerManager.trackerNames.Contains("knuckles");
- public static bool GetIndexGestureToggle(this InputModuleSteamVR p_module) => (bool)ms_indexGestureToggle.GetValue(p_module);
- public static bool IsLeftHandTracked() => ((VRTrackerManager.Instance.leftHand != null) && VRTrackerManager.Instance.leftHand.active);
- public static bool IsRightHandTracked() => ((VRTrackerManager.Instance.rightHand != null) && VRTrackerManager.Instance.rightHand.active);
+ public static bool AreKnucklesInUse() => ((CVRInputManager.Instance._leftController == ABI_RC.Systems.InputManagement.XR.EXRControllerType.Index) || (CVRInputManager.Instance._rightController == ABI_RC.Systems.InputManagement.XR.EXRControllerType.Index));
+ public static bool IsLeftHandTracked() => (CVRInputManager.Instance._leftController != ABI_RC.Systems.InputManagement.XR.EXRControllerType.None);
+ public static bool IsRightHandTracked() => (CVRInputManager.Instance._rightController != ABI_RC.Systems.InputManagement.XR.EXRControllerType.None);
public static Matrix4x4 GetMatrix(this Transform p_transform, bool p_pos = true, bool p_rot = true, bool p_scl = false)
{
diff --git a/ml_lme/ml_lme.csproj b/ml_lme/ml_lme.csproj
index 9e30353..a8fe436 100644
--- a/ml_lme/ml_lme.csproj
+++ b/ml_lme/ml_lme.csproj
@@ -1,150 +1,99 @@
-
-
-
+
+
- Debug
- AnyCPU
- {83CC74B7-F444-40E1-BD06-67CEC995A919}
- Library
- Properties
- ml_lme
- ml_lme
- v4.7.2
- 512
- true
+ netstandard2.1
+ x64
+ LeapMotionExtension
+ 1.4.0
+ SDraw
+ None
+ LeapMotionExtension
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
+
+
+ none
+ false
+
-
- False
- C:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\0Harmony.dll
- False
-
-
- C:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
- False
-
-
- C:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp-firstpass.dll
- False
-
-
- False
-
-
- False
-
-
- C:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\MelonLoader.dll
- False
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\Mods\ml_pmc.dll
- False
-
-
-
-
-
-
-
-
-
- C:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.dll
- False
-
-
- C:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
- False
-
-
- False
- C:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AssetBundleModule.dll
- False
-
-
- C:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
- False
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
LeapC.dll
+
-
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\0Harmony.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp-firstpass.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\cohtml.Net.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Cohtml.Runtime.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\Mods\ml_pmc.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AssetBundleModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.XRModule.dll
+ false
+
+
-
+
-
-
-
-
-
- copy /y "$(TargetPath)" "D:\Games\Steam\steamapps\common\ChilloutVR\Mods\"
-
-
\ No newline at end of file
+
+
+
+
+
+
diff --git a/ml_lme/ml_lme.csproj.user b/ml_lme/ml_lme.csproj.user
deleted file mode 100644
index d2e6c0a..0000000
--- a/ml_lme/ml_lme.csproj.user
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\;D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\
-
-
\ No newline at end of file
diff --git a/ml_lme/resources/menu.js b/ml_lme/resources/menu.js
index 82f9d4d..b6f455e 100644
--- a/ml_lme/resources/menu.js
+++ b/ml_lme/resources/menu.js
@@ -400,7 +400,7 @@ function inp_dropdown_mod_lme(_obj, _callbackName) {
-
Recognize gestures:
+
Recognize Gestures:
diff --git a/ml_mods_cvr.sln b/ml_mods_cvr.sln
index 94d3cbf..c08fb85 100644
--- a/ml_mods_cvr.sln
+++ b/ml_mods_cvr.sln
@@ -1,23 +1,30 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.28307.1738
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.33214.272
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_lme", "ml_lme\ml_lme.csproj", "{83CC74B7-F444-40E1-BD06-67CEC995A919}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_amt", "ml_amt\ml_amt.csproj", "{714806A3-E6FC-46F6-9D1D-89C77FEBAF06}"
+ ProjectSection(ProjectDependencies) = postProject
+ {D27B6D36-884F-4A49-9A25-B9C121E7B65F} = {D27B6D36-884F-4A49-9A25-B9C121E7B65F}
+ {118675AA-9AC7-4B0C-BFB1-FA1691619502} = {118675AA-9AC7-4B0C-BFB1-FA1691619502}
+ EndProjectSection
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_drs", "ml_drs\ml_drs.csproj", "{06CD5155-4459-48C3-8A53-E0B91136351B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_dht", "ml_dht\ml_dht.csproj", "{D805BA67-067E-4B79-87FC-6B08973F13EE}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_amt", "ml_amt\ml_amt.csproj", "{74E13D02-A506-41A2-A2CF-C8B3D5B1E452}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_drs", "ml_drs\ml_drs.csproj", "{47B2BE27-B238-4135-AE17-9195884FDD8F}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_dht", "ml_dht\ml_dht.csproj", "{6DD89FC3-A974-4C39-A3EE-F60C24B17B5B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_egn", "ml_egn\ml_egn.csproj", "{8B05FAC0-5C12-40CA-BA48-9F55923E8135}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_egn", "ml_egn\ml_egn.csproj", "{1B5ACA07-6266-4C9A-BA30-D4BBE6634846}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_lme", "ml_lme\ml_lme.csproj", "{77EA76B1-3709-4FC5-BDBD-8F77160E6DA3}"
+ ProjectSection(ProjectDependencies) = postProject
+ {118675AA-9AC7-4B0C-BFB1-FA1691619502} = {118675AA-9AC7-4B0C-BFB1-FA1691619502}
+ EndProjectSection
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_pam", "ml_pam\ml_pam.csproj", "{3B5028DE-8C79-40DF-A1EF-BDB29D366125}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_pam", "ml_pam\ml_pam.csproj", "{5B614459-234A-443D-B06D-34FF81ADA67E}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_prm", "ml_prm\ml_prm.csproj", "{ABD2A720-2DE8-4EB3-BFC2-8F1C3D2ADA15}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_prm", "ml_prm\ml_prm.csproj", "{D27B6D36-884F-4A49-9A25-B9C121E7B65F}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ml_pmc", "ml_pmc\ml_pmc.csproj", "{758514D3-6E1A-4E05-A156-B4E5C74AB5C4}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ml_pmc", "ml_pmc\ml_pmc.csproj", "{118675AA-9AC7-4B0C-BFB1-FA1691619502}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -25,38 +32,30 @@ Global
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {83CC74B7-F444-40E1-BD06-67CEC995A919}.Debug|x64.ActiveCfg = Debug|x64
- {83CC74B7-F444-40E1-BD06-67CEC995A919}.Debug|x64.Build.0 = Debug|x64
- {83CC74B7-F444-40E1-BD06-67CEC995A919}.Release|x64.ActiveCfg = Release|x64
- {83CC74B7-F444-40E1-BD06-67CEC995A919}.Release|x64.Build.0 = Release|x64
- {06CD5155-4459-48C3-8A53-E0B91136351B}.Debug|x64.ActiveCfg = Debug|x64
- {06CD5155-4459-48C3-8A53-E0B91136351B}.Debug|x64.Build.0 = Debug|x64
- {06CD5155-4459-48C3-8A53-E0B91136351B}.Release|x64.ActiveCfg = Release|x64
- {06CD5155-4459-48C3-8A53-E0B91136351B}.Release|x64.Build.0 = Release|x64
- {74E13D02-A506-41A2-A2CF-C8B3D5B1E452}.Debug|x64.ActiveCfg = Debug|x64
- {74E13D02-A506-41A2-A2CF-C8B3D5B1E452}.Debug|x64.Build.0 = Debug|x64
- {74E13D02-A506-41A2-A2CF-C8B3D5B1E452}.Release|x64.ActiveCfg = Release|x64
- {74E13D02-A506-41A2-A2CF-C8B3D5B1E452}.Release|x64.Build.0 = Release|x64
- {6DD89FC3-A974-4C39-A3EE-F60C24B17B5B}.Debug|x64.ActiveCfg = Debug|x64
- {6DD89FC3-A974-4C39-A3EE-F60C24B17B5B}.Debug|x64.Build.0 = Debug|x64
- {6DD89FC3-A974-4C39-A3EE-F60C24B17B5B}.Release|x64.ActiveCfg = Release|x64
- {6DD89FC3-A974-4C39-A3EE-F60C24B17B5B}.Release|x64.Build.0 = Release|x64
- {1B5ACA07-6266-4C9A-BA30-D4BBE6634846}.Debug|x64.ActiveCfg = Debug|x64
- {1B5ACA07-6266-4C9A-BA30-D4BBE6634846}.Debug|x64.Build.0 = Debug|x64
- {1B5ACA07-6266-4C9A-BA30-D4BBE6634846}.Release|x64.ActiveCfg = Release|x64
- {1B5ACA07-6266-4C9A-BA30-D4BBE6634846}.Release|x64.Build.0 = Release|x64
- {3B5028DE-8C79-40DF-A1EF-BDB29D366125}.Debug|x64.ActiveCfg = Debug|x64
- {3B5028DE-8C79-40DF-A1EF-BDB29D366125}.Debug|x64.Build.0 = Debug|x64
- {3B5028DE-8C79-40DF-A1EF-BDB29D366125}.Release|x64.ActiveCfg = Release|x64
- {3B5028DE-8C79-40DF-A1EF-BDB29D366125}.Release|x64.Build.0 = Release|x64
- {ABD2A720-2DE8-4EB3-BFC2-8F1C3D2ADA15}.Debug|x64.ActiveCfg = Debug|x64
- {ABD2A720-2DE8-4EB3-BFC2-8F1C3D2ADA15}.Debug|x64.Build.0 = Debug|x64
- {ABD2A720-2DE8-4EB3-BFC2-8F1C3D2ADA15}.Release|x64.ActiveCfg = Release|x64
- {ABD2A720-2DE8-4EB3-BFC2-8F1C3D2ADA15}.Release|x64.Build.0 = Release|x64
- {758514D3-6E1A-4E05-A156-B4E5C74AB5C4}.Debug|x64.ActiveCfg = Debug|x64
- {758514D3-6E1A-4E05-A156-B4E5C74AB5C4}.Debug|x64.Build.0 = Debug|x64
- {758514D3-6E1A-4E05-A156-B4E5C74AB5C4}.Release|x64.ActiveCfg = Release|x64
- {758514D3-6E1A-4E05-A156-B4E5C74AB5C4}.Release|x64.Build.0 = Release|x64
+ {714806A3-E6FC-46F6-9D1D-89C77FEBAF06}.Debug|x64.ActiveCfg = Debug|x64
+ {714806A3-E6FC-46F6-9D1D-89C77FEBAF06}.Release|x64.ActiveCfg = Release|x64
+ {714806A3-E6FC-46F6-9D1D-89C77FEBAF06}.Release|x64.Build.0 = Release|x64
+ {D805BA67-067E-4B79-87FC-6B08973F13EE}.Debug|x64.ActiveCfg = Debug|x64
+ {D805BA67-067E-4B79-87FC-6B08973F13EE}.Release|x64.ActiveCfg = Release|x64
+ {D805BA67-067E-4B79-87FC-6B08973F13EE}.Release|x64.Build.0 = Release|x64
+ {47B2BE27-B238-4135-AE17-9195884FDD8F}.Debug|x64.ActiveCfg = Debug|x64
+ {47B2BE27-B238-4135-AE17-9195884FDD8F}.Release|x64.ActiveCfg = Release|x64
+ {47B2BE27-B238-4135-AE17-9195884FDD8F}.Release|x64.Build.0 = Release|x64
+ {8B05FAC0-5C12-40CA-BA48-9F55923E8135}.Debug|x64.ActiveCfg = Debug|x64
+ {8B05FAC0-5C12-40CA-BA48-9F55923E8135}.Release|x64.ActiveCfg = Release|x64
+ {8B05FAC0-5C12-40CA-BA48-9F55923E8135}.Release|x64.Build.0 = Release|x64
+ {77EA76B1-3709-4FC5-BDBD-8F77160E6DA3}.Debug|x64.ActiveCfg = Debug|x64
+ {77EA76B1-3709-4FC5-BDBD-8F77160E6DA3}.Release|x64.ActiveCfg = Release|x64
+ {77EA76B1-3709-4FC5-BDBD-8F77160E6DA3}.Release|x64.Build.0 = Release|x64
+ {5B614459-234A-443D-B06D-34FF81ADA67E}.Debug|x64.ActiveCfg = Debug|x64
+ {5B614459-234A-443D-B06D-34FF81ADA67E}.Release|x64.ActiveCfg = Release|x64
+ {5B614459-234A-443D-B06D-34FF81ADA67E}.Release|x64.Build.0 = Release|x64
+ {D27B6D36-884F-4A49-9A25-B9C121E7B65F}.Debug|x64.ActiveCfg = Debug|x64
+ {D27B6D36-884F-4A49-9A25-B9C121E7B65F}.Release|x64.ActiveCfg = Release|x64
+ {D27B6D36-884F-4A49-9A25-B9C121E7B65F}.Release|x64.Build.0 = Release|x64
+ {118675AA-9AC7-4B0C-BFB1-FA1691619502}.Debug|x64.ActiveCfg = Debug|x64
+ {118675AA-9AC7-4B0C-BFB1-FA1691619502}.Release|x64.ActiveCfg = Release|x64
+ {118675AA-9AC7-4B0C-BFB1-FA1691619502}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/ml_pam/Properties/AssemblyInfo.cs b/ml_pam/Properties/AssemblyInfo.cs
index 9ed68ec..f44d90c 100644
--- a/ml_pam/Properties/AssemblyInfo.cs
+++ b/ml_pam/Properties/AssemblyInfo.cs
@@ -1,10 +1,6 @@
using System.Reflection;
-[assembly: AssemblyTitle("PickupArmMovement")]
-[assembly: AssemblyVersion("1.0.5")]
-[assembly: AssemblyFileVersion("1.0.5")]
-
-[assembly: MelonLoader.MelonInfo(typeof(ml_pam.PickupArmMovement), "PickupArmMovement", "1.0.5", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
+[assembly: MelonLoader.MelonInfo(typeof(ml_pam.PickupArmMovement), "PickupArmMovement", "1.0.6", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonPriority(1)]
[assembly: MelonLoader.MelonPlatform(MelonLoader.MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
diff --git a/ml_pam/Utils.cs b/ml_pam/Utils.cs
index b11b808..a9131bb 100644
--- a/ml_pam/Utils.cs
+++ b/ml_pam/Utils.cs
@@ -1,4 +1,6 @@
-using UnityEngine;
+using ABI_RC.Core.UI;
+using System.Reflection;
+using UnityEngine;
namespace ml_pam
{
diff --git a/ml_pam/ml_pam.csproj b/ml_pam/ml_pam.csproj
index 7250d1e..cf46819 100644
--- a/ml_pam/ml_pam.csproj
+++ b/ml_pam/ml_pam.csproj
@@ -1,90 +1,70 @@
-
-
-
+
+
- Debug
- AnyCPU
- {3B5028DE-8C79-40DF-A1EF-BDB29D366125}
- Library
- Properties
- ml_pam
- ml_pam
- v4.7.2
- 512
- true
+ netstandard2.1
+ x64
+ PickupArmMovement
+ 1.0.6
+ SDraw
+ None
+ PickupArmMovement
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
+
+
+ none
+ false
+
-
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\0Harmony.dll
- False
-
-
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
- False
-
-
- False
- False
-
-
- False
-
-
- False
-
-
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\MelonLoader.dll
- False
-
-
-
-
-
-
-
-
-
- False
-
-
- False
- False
-
-
-
-
-
-
-
-
-
+
+
+
-
-
- copy /y "$(TargetPath)" "D:\Games\Steam\steamapps\common\ChilloutVR\Mods\"
-
-
\ No newline at end of file
+
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\0Harmony.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp-firstpass.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\cohtml.Net.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Cohtml.Runtime.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
+ false
+
+
+ D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
+ false
+
+
+
+
+
+
+
+
diff --git a/ml_pam/ml_pam.csproj.user b/ml_pam/ml_pam.csproj.user
deleted file mode 100644
index d2e6c0a..0000000
--- a/ml_pam/ml_pam.csproj.user
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\;D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\
-
-
\ No newline at end of file
diff --git a/ml_pmc/PoseCopycat.cs b/ml_pmc/PoseCopycat.cs
index a331c89..5e0bad0 100644
--- a/ml_pmc/PoseCopycat.cs
+++ b/ml_pmc/PoseCopycat.cs
@@ -2,6 +2,7 @@
using ABI_RC.Core.Savior;
using ABI_RC.Systems.IK;
using ABI_RC.Systems.IK.SubSystems;
+using ABI_RC.Systems.InputManagement;
using ABI_RC.Systems.MovementSystem;
using RootMotion.FinalIK;
using UnityEngine;
@@ -81,17 +82,6 @@ namespace ml_pmc
CVRInputManager.Instance.fingerCurlRightMiddle = l_curls[l_mirror ? 2 : 7];
CVRInputManager.Instance.fingerCurlRightRing = l_curls[l_mirror ? 3 : 8];
CVRInputManager.Instance.fingerCurlRightPinky = l_curls[l_mirror ? 4 : 9];
-
- IKSystem.Instance.FingerSystem.leftThumbCurl = l_curls[l_mirror ? 5 : 0];
- IKSystem.Instance.FingerSystem.leftIndexCurl = l_curls[l_mirror ? 6 : 1];
- IKSystem.Instance.FingerSystem.leftMiddleCurl = l_curls[l_mirror ? 7 : 2];
- IKSystem.Instance.FingerSystem.leftRingCurl = l_curls[l_mirror ? 8 : 3];
- IKSystem.Instance.FingerSystem.leftPinkyCurl = l_curls[l_mirror ? 9 : 4];
- IKSystem.Instance.FingerSystem.rightThumbCurl = l_curls[l_mirror ? 0 : 5];
- IKSystem.Instance.FingerSystem.rightIndexCurl = l_curls[l_mirror ? 1 : 6];
- IKSystem.Instance.FingerSystem.rightMiddleCurl = l_curls[l_mirror ? 2 : 7];
- IKSystem.Instance.FingerSystem.rightRingCurl = l_curls[l_mirror ? 3 : 8];
- IKSystem.Instance.FingerSystem.rightPinkyCurl = l_curls[l_mirror ? 4 : 9];
}
else
{
@@ -290,7 +280,7 @@ namespace ml_pmc
}
void RestoreFingerTracking()
{
- CVRInputManager.Instance.individualFingerTracking = (m_inVr && Utils.AreKnucklesInUse() && !Utils.GetIndexGestureToggle());
+ CVRInputManager.Instance.individualFingerTracking = (m_inVr && Utils.AreKnucklesInUse() && !CVRInputManager._moduleXR.GestureToggleValue);
IKSystem.Instance.FingerSystem.controlActive = CVRInputManager.Instance.individualFingerTracking;
if(!CVRInputManager.Instance.individualFingerTracking)
@@ -305,17 +295,6 @@ namespace ml_pmc
CVRInputManager.Instance.fingerCurlRightMiddle = 0f;
CVRInputManager.Instance.fingerCurlRightRing = 0f;
CVRInputManager.Instance.fingerCurlRightPinky = 0f;
-
- IKSystem.Instance.FingerSystem.leftThumbCurl = 0f;
- IKSystem.Instance.FingerSystem.leftIndexCurl = 0f;
- IKSystem.Instance.FingerSystem.leftMiddleCurl = 0f;
- IKSystem.Instance.FingerSystem.leftRingCurl = 0f;
- IKSystem.Instance.FingerSystem.leftPinkyCurl = 0f;
- IKSystem.Instance.FingerSystem.rightThumbCurl = 0f;
- IKSystem.Instance.FingerSystem.rightIndexCurl = 0f;
- IKSystem.Instance.FingerSystem.rightMiddleCurl = 0f;
- IKSystem.Instance.FingerSystem.rightRingCurl = 0f;
- IKSystem.Instance.FingerSystem.rightPinkyCurl = 0f;
}
}
}
diff --git a/ml_pmc/Properties/AssemblyInfo.cs b/ml_pmc/Properties/AssemblyInfo.cs
index 84f0e07..e47863b 100644
--- a/ml_pmc/Properties/AssemblyInfo.cs
+++ b/ml_pmc/Properties/AssemblyInfo.cs
@@ -1,10 +1,6 @@
using System.Reflection;
-[assembly: AssemblyTitle("PlayerMovementCopycat")]
-[assembly: AssemblyVersion("1.0.0")]
-[assembly: AssemblyFileVersion("1.0.0")]
-
-[assembly: MelonLoader.MelonInfo(typeof(ml_pmc.PlayerMovementCopycat), "PlayerMovementCopycat", "1.0.0", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
+[assembly: MelonLoader.MelonInfo(typeof(ml_pmc.PlayerMovementCopycat), "PlayerMovementCopycat", "1.0.1", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonPriority(3)]
[assembly: MelonLoader.MelonAdditionalDependencies("BTKUILib")]
diff --git a/ml_pmc/Utils.cs b/ml_pmc/Utils.cs
index fbc462a..0b93404 100644
--- a/ml_pmc/Utils.cs
+++ b/ml_pmc/Utils.cs
@@ -1,6 +1,7 @@
using ABI.CCK.Components;
using ABI_RC.Core.Player;
using ABI_RC.Core.Savior;
+using ABI_RC.Systems.InputManagement;
using System.Linq;
using System.Reflection;
using UnityEngine;
@@ -9,8 +10,6 @@ namespace ml_pmc
{
static class Utils
{
- static readonly FieldInfo ms_indexGestureToggle = typeof(InputModuleSteamVR).GetField("_steamVrIndexGestureToggleValue", BindingFlags.Instance | BindingFlags.NonPublic);
-
static readonly (int, int)[] ms_sideMuscles = new (int, int)[]
{
(29,21), (30,22), (31,23), (32,24), (33,25), (34,26), (35,27), (36,28),
@@ -21,8 +20,7 @@ namespace ml_pmc
static readonly int[] ms_centralMuscles = new int[] { 1, 2, 4, 5, 7, 8, 10, 11, 13, 14, 16, 18, 20 };
public static bool IsInVR() => ((CheckVR.Instance != null) && CheckVR.Instance.hasVrDeviceLoaded);
- public static bool AreKnucklesInUse() => PlayerSetup.Instance._trackerManager.trackerNames.Contains("knuckles");
- public static bool GetIndexGestureToggle() => (bool)ms_indexGestureToggle.GetValue(CVRInputManager.Instance.GetComponent
());
+ public static bool AreKnucklesInUse() => ((CVRInputManager.Instance._leftController == ABI_RC.Systems.InputManagement.XR.EXRControllerType.Index) || (CVRInputManager.Instance._rightController == ABI_RC.Systems.InputManagement.XR.EXRControllerType.Index));
public static bool IsWorldSafe() => ((CVRWorld.Instance != null) && CVRWorld.Instance.allowFlying);
public static bool IsCombatSafe() => ((CombatSystem.Instance == null) || !CombatSystem.Instance.isDown);
diff --git a/ml_pmc/ml_pmc.csproj b/ml_pmc/ml_pmc.csproj
index 4679faa..d409d5a 100644
--- a/ml_pmc/ml_pmc.csproj
+++ b/ml_pmc/ml_pmc.csproj
@@ -1,101 +1,66 @@
-
-
-
+
+
- Debug
- AnyCPU
- {758514D3-6E1A-4E05-A156-B4E5C74AB5C4}
- Library
- Properties
- ml_pmc
- ml_pmc
- v4.7.2
- 512
- true
-
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
+ netstandard2.1
+ x64
+ PlayerMovementCopycat
+ SDraw
+ None
+ PlayerMovementCopycat
+ 1.0.1
+
+
+
+
+
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\0Harmony.dll
- False
- False
-
-
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
- False
-
-
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp-firstpass.dll
- False
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\Mods\BTKUILib.dll
- False
- False
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
- False
- False
-
-
-
-
-
-
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
- False
- False
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
- False
- False
-
-
- False
- D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.PhysicsModule.dll
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
- copy /y "$(TargetPath)" "D:\Games\Steam\steamapps\common\ChilloutVR\Mods\"
-
-
\ No newline at end of file
+
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\0Harmony.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp-firstpass.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\Mods\BTKUILib.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.PhysicsModule.dll
+ false
+
+
+
+
diff --git a/ml_pmc/ml_pmc.csproj.user b/ml_pmc/ml_pmc.csproj.user
deleted file mode 100644
index 4d08fe9..0000000
--- a/ml_pmc/ml_pmc.csproj.user
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\;D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\;D:\Games\Steam\steamapps\common\ChilloutVR\Mods\
-
-
\ No newline at end of file
diff --git a/ml_prm/Properties/AssemblyInfo.cs b/ml_prm/Properties/AssemblyInfo.cs
index 4f1e779..3f14470 100644
--- a/ml_prm/Properties/AssemblyInfo.cs
+++ b/ml_prm/Properties/AssemblyInfo.cs
@@ -1,10 +1,6 @@
using System.Reflection;
-[assembly: AssemblyTitle("PlayerRagdollMod")]
-[assembly: AssemblyVersion("1.0.5")]
-[assembly: AssemblyFileVersion("1.0.5")]
-
-[assembly: MelonLoader.MelonInfo(typeof(ml_prm.PlayerRagdollMod), "PlayerRagdollMod", "1.0.5", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
+[assembly: MelonLoader.MelonInfo(typeof(ml_prm.PlayerRagdollMod), "PlayerRagdollMod", "1.0.6", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonPriority(2)]
[assembly: MelonLoader.MelonOptionalDependencies("BTKUILib")]
diff --git a/ml_prm/RagdollController.cs b/ml_prm/RagdollController.cs
index f51625b..044a4ff 100644
--- a/ml_prm/RagdollController.cs
+++ b/ml_prm/RagdollController.cs
@@ -3,6 +3,7 @@ using ABI_RC.Core.InteractionSystem;
using ABI_RC.Core.Player;
using ABI_RC.Core.Savior;
using ABI_RC.Systems.IK.SubSystems;
+using ABI_RC.Systems.InputManagement;
using ABI_RC.Systems.MovementSystem;
using RootMotion.Dynamics;
using RootMotion.FinalIK;
diff --git a/ml_prm/ml_prm.csproj b/ml_prm/ml_prm.csproj
index c7743ae..8fb1548 100644
--- a/ml_prm/ml_prm.csproj
+++ b/ml_prm/ml_prm.csproj
@@ -1,146 +1,74 @@
-
-
-
+
+
- Debug
- AnyCPU
- {ABD2A720-2DE8-4EB3-BFC2-8F1C3D2ADA15}
- Library
- Properties
- ml_prm
- ml_prm
- v4.7.2
- 512
- true
-
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
+ netstandard2.1
+ x64
+ PlayerRagdollMod
+ 1.0.6
+ SDraw
+ None
+ PlayerRagdollMod
+
-
- False
- D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\0Harmony.dll
- False
-
-
- False
- False
-
-
- False
- False
-
-
- D:\games\Steam\steamapps\common\ChilloutVR\Mods\BTKUILib.dll
- False
-
-
- False
- D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\MelonLoader.dll
- False
-
-
-
-
-
-
-
-
-
- False
- D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
- False
-
-
- False
- D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.ClothModule.dll
- False
-
-
- False
- False
-
-
- False
- False
-
-
- False
- D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.PhysicsModule.dll
- False
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
-
-
- copy /y "$(TargetPath)" "D:\Games\Steam\steamapps\common\ChilloutVR\Mods\"
-
-
\ No newline at end of file
+
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\0Harmony.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\Assembly-CSharp-firstpass.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\Mods\BTKUILib.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\MelonLoader.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.AnimationModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.ClothModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.CoreModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.InputLegacyModule.dll
+ false
+
+
+ D:\games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\UnityEngine.PhysicsModule.dll
+ false
+
+
+
+
+
+
+
+
diff --git a/ml_prm/ml_prm.csproj.user b/ml_prm/ml_prm.csproj.user
deleted file mode 100644
index 4d08fe9..0000000
--- a/ml_prm/ml_prm.csproj.user
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- D:\Games\Steam\steamapps\common\ChilloutVR\MelonLoader\net35\;D:\Games\Steam\steamapps\common\ChilloutVR\ChilloutVR_Data\Managed\;D:\Games\Steam\steamapps\common\ChilloutVR\Mods\
-
-
\ No newline at end of file
diff --git a/ml_prm/vendor/RootMotion/ReadMe.md b/ml_prm/vendor/RootMotion/ReadMe.md
index 5455e7a..c57f5d6 100644
--- a/ml_prm/vendor/RootMotion/ReadMe.md
+++ b/ml_prm/vendor/RootMotion/ReadMe.md
@@ -1,2 +1 @@
-* Buy https://assetstore.unity.com/packages/tools/physics/puppetmaster-48977
-* Put `PuppetMaster` and `RagdollManager` scripts in this folder
+Put `PuppetMaster` and `RagdollMaster` folders from [PuppetMaster asset](https://assetstore.unity.com/packages/tools/physics/puppetmaster-48977) here.
\ No newline at end of file