Grounded for jump

This commit is contained in:
SDraw 2022-10-22 01:53:48 +03:00
parent a2ce54f2fe
commit 0a298b853b
No known key found for this signature in database
GPG key ID: BB95B4DAB2BB8BB5
3 changed files with 10 additions and 6 deletions

View file

@ -4,7 +4,7 @@ Merged set of MelonLoader mods for ChilloutVR.
| Full name | Short name | Latest version | Available in [CVRMA](https://github.com/knah/CVRMelonAssistant) | Current Status | Notes | | Full name | Short name | Latest version | Available in [CVRMA](https://github.com/knah/CVRMelonAssistant) | Current Status | Notes |
|-----------|------------|----------------|-----------------------------------------------------------------|----------------|-------| |-----------|------------|----------------|-----------------------------------------------------------------|----------------|-------|
| Avatar Change Info | ml_aci | 1.0.3 | Yes | Working | | Avatar Change Info | ml_aci | 1.0.3 | Yes | Working |
| Avatar Motion Tweaker | ml_amt | 1.1.5 | On review | Working | | Avatar Motion Tweaker | ml_amt | 1.1.7 | On review | Working |
| Desktop Head Tracking | ml_dht | 1.0.7 | On review | Working | | Desktop Head Tracking | ml_dht | 1.0.7 | On review | Working |
| Desktop Reticle Switch | ml_drs | 1.0.0 | Yes | Working | | Desktop Reticle Switch | ml_drs | 1.0.0 | Yes | Working |
| Four Point Tracking | ml_fpt | 1.0.9 | On review | Working | | Four Point Tracking | ml_fpt | 1.0.9 | On review | Working |

View file

@ -10,8 +10,9 @@ namespace ml_amt
[DisallowMultipleComponent] [DisallowMultipleComponent]
class MotionTweaker : MonoBehaviour class MotionTweaker : MonoBehaviour
{ {
static readonly FieldInfo ms_rootVelocity = typeof(IKSolverVR).GetField("rootVelocity", BindingFlags.NonPublic | BindingFlags.Instance); static readonly FieldInfo ms_grounded = typeof(MovementSystem).GetField("_isGrounded", BindingFlags.NonPublic | BindingFlags.Instance);
static readonly FieldInfo ms_groundedRaw = typeof(MovementSystem).GetField("_isGroundedRaw", BindingFlags.NonPublic | BindingFlags.Instance); static readonly FieldInfo ms_groundedRaw = typeof(MovementSystem).GetField("_isGroundedRaw", BindingFlags.NonPublic | BindingFlags.Instance);
static readonly FieldInfo ms_rootVelocity = typeof(IKSolverVR).GetField("rootVelocity", BindingFlags.NonPublic | BindingFlags.Instance);
static readonly int ms_emoteHash = Animator.StringToHash("Emote"); static readonly int ms_emoteHash = Animator.StringToHash("Emote");
enum ParameterType enum ParameterType
@ -54,6 +55,7 @@ namespace ml_amt
float m_upright = 1f; float m_upright = 1f;
PoseState m_poseState = PoseState.Standing; PoseState m_poseState = PoseState.Standing;
bool m_grounded = false; bool m_grounded = false;
bool m_groundedRaw = false;
bool m_ikOverrideCrouch = true; bool m_ikOverrideCrouch = true;
float m_crouchLimit = 0.65f; float m_crouchLimit = 0.65f;
@ -111,7 +113,8 @@ namespace ml_amt
{ {
if(m_avatarReady) if(m_avatarReady)
{ {
m_grounded = (bool)ms_groundedRaw.GetValue(MovementSystem.Instance); m_grounded = (bool)ms_grounded.GetValue(MovementSystem.Instance);
m_groundedRaw = (bool)ms_groundedRaw.GetValue(MovementSystem.Instance);
// Update upright // Update upright
Matrix4x4 l_hmdMatrix = PlayerSetup.Instance.transform.GetMatrix().inverse * (PlayerSetup.Instance._inVr ? PlayerSetup.Instance.vrHeadTracker.transform.GetMatrix() : PlayerSetup.Instance.desktopCameraRig.transform.GetMatrix()); Matrix4x4 l_hmdMatrix = PlayerSetup.Instance.transform.GetMatrix().inverse * (PlayerSetup.Instance._inVr ? PlayerSetup.Instance.vrHeadTracker.transform.GetMatrix() : PlayerSetup.Instance.desktopCameraRig.transform.GetMatrix());
@ -204,6 +207,7 @@ namespace ml_amt
m_vrIk = null; m_vrIk = null;
m_locomotionLayer = -1; m_locomotionLayer = -1;
m_grounded = false; m_grounded = false;
m_groundedRaw = false;
m_avatarReady = false; m_avatarReady = false;
m_compatibleAvatar = false; m_compatibleAvatar = false;
m_poseState = PoseState.Standing; m_poseState = PoseState.Standing;

View file

@ -1,10 +1,10 @@
using System.Reflection; using System.Reflection;
[assembly: AssemblyTitle("AvatarMotionTweaker")] [assembly: AssemblyTitle("AvatarMotionTweaker")]
[assembly: AssemblyVersion("1.1.6")] [assembly: AssemblyVersion("1.1.7")]
[assembly: AssemblyFileVersion("1.1.6")] [assembly: AssemblyFileVersion("1.1.7")]
[assembly: MelonLoader.MelonInfo(typeof(ml_amt.AvatarMotionTweaker), "AvatarMotionTweaker", "1.1.6", "SDraw", "https://github.com/SDraw/ml_mods_cvr")] [assembly: MelonLoader.MelonInfo(typeof(ml_amt.AvatarMotionTweaker), "AvatarMotionTweaker", "1.1.7", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
[assembly: MelonLoader.MelonGame(null, "ChilloutVR")] [assembly: MelonLoader.MelonGame(null, "ChilloutVR")]
[assembly: MelonLoader.MelonPlatform(MelonLoader.MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)] [assembly: MelonLoader.MelonPlatform(MelonLoader.MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
[assembly: MelonLoader.MelonPlatformDomain(MelonLoader.MelonPlatformDomainAttribute.CompatibleDomains.MONO)] [assembly: MelonLoader.MelonPlatformDomain(MelonLoader.MelonPlatformDomainAttribute.CompatibleDomains.MONO)]