mirror of
https://github.com/hanetzer/sdraw_mods_cvr.git
synced 2025-09-04 02:49:23 +00:00
Update to MelonLoader 0.5.5
This commit is contained in:
parent
34fffc9364
commit
e3989aed70
15 changed files with 60 additions and 52 deletions
12
README.md
12
README.md
|
@ -3,10 +3,10 @@ Merged set of MelonLoader mods for ChilloutVR.
|
||||||
**State table for game build 2022r169:**
|
**State table for game build 2022r169:**
|
||||||
| 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.2 | Yes | Working |
|
| Avatar Change Info | ml_aci | 1.0.3 | On review | Working |
|
||||||
| Avatar Motion Tweaker | ml_amt | 1.1.2 | On review | Working |
|
| Avatar Motion Tweaker | ml_amt | 1.1.3 | On review | Working |
|
||||||
| Desktop Head Tracking | ml_dht | 1.0.5 | On review | Working |
|
| Desktop Head Tracking | ml_dht | 1.0.6 | 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.7 | On review | Working |
|
| Four Point Tracking | ml_fpt | 1.0.8 | On review | Working |
|
||||||
| Leap Motion Extension | ml_lme | 1.2.0 | On review | Working |
|
| Leap Motion Extension | ml_lme | 1.2.1 | On review | Working |
|
||||||
| Server Connection Info | ml_sci | 1.0.1 | Yes | Working |
|
| Server Connection Info | ml_sci | 1.0.2 | On review | Working |
|
||||||
|
|
|
@ -3,23 +3,24 @@ using ABI_RC.Core.InteractionSystem;
|
||||||
using ABI_RC.Core.Networking;
|
using ABI_RC.Core.Networking;
|
||||||
using ABI_RC.Core.Util;
|
using ABI_RC.Core.Util;
|
||||||
using DarkRift;
|
using DarkRift;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
namespace ml_aci
|
namespace ml_aci
|
||||||
{
|
{
|
||||||
public class AvatarChangeInfo : MelonLoader.MelonMod
|
public class AvatarChangeInfo : MelonLoader.MelonMod
|
||||||
{
|
{
|
||||||
public override void OnApplicationStart()
|
public override void OnInitializeMelon()
|
||||||
{
|
{
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(AssetManagement).GetMethod(nameof(AssetManagement.LoadLocalAvatar)),
|
typeof(AssetManagement).GetMethod(nameof(AssetManagement.LoadLocalAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(AvatarChangeInfo).GetMethod(nameof(OnLocalAvatarLoad), System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static))
|
new HarmonyLib.HarmonyMethod(typeof(AvatarChangeInfo).GetMethod(nameof(OnLocalAvatarLoad), BindingFlags.NonPublic | BindingFlags.Static))
|
||||||
);
|
);
|
||||||
|
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(CVRSyncHelper).GetMethod(nameof(CVRSyncHelper.SpawnProp)),
|
typeof(CVRSyncHelper).GetMethod(nameof(CVRSyncHelper.SpawnProp)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(AvatarChangeInfo).GetMethod(nameof(OnPropSpawned), System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static))
|
new HarmonyLib.HarmonyMethod(typeof(AvatarChangeInfo).GetMethod(nameof(OnPropSpawned), BindingFlags.NonPublic | BindingFlags.Static))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyTitle("AvatarChangeInfo")]
|
[assembly: AssemblyTitle("AvatarChangeInfo")]
|
||||||
[assembly: AssemblyVersion("1.0.2")]
|
[assembly: AssemblyVersion("1.0.3")]
|
||||||
[assembly: AssemblyFileVersion("1.0.2")]
|
[assembly: AssemblyFileVersion("1.0.3")]
|
||||||
|
|
||||||
[assembly: MelonLoader.MelonInfo(typeof(ml_aci.AvatarChangeInfo), "AvatarChangeInfo", "1.0.2", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
|
[assembly: MelonLoader.MelonInfo(typeof(ml_aci.AvatarChangeInfo), "AvatarChangeInfo", "1.0.3", "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)]
|
|
@ -1,4 +1,5 @@
|
||||||
using ABI_RC.Core.Player;
|
using ABI_RC.Core.Player;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
namespace ml_amt
|
namespace ml_amt
|
||||||
{
|
{
|
||||||
|
@ -8,7 +9,7 @@ namespace ml_amt
|
||||||
|
|
||||||
MotionTweaker m_localTweaker = null;
|
MotionTweaker m_localTweaker = null;
|
||||||
|
|
||||||
public override void OnApplicationStart()
|
public override void OnInitializeMelon()
|
||||||
{
|
{
|
||||||
if(ms_instance == null)
|
if(ms_instance == null)
|
||||||
ms_instance = this;
|
ms_instance = this;
|
||||||
|
@ -26,12 +27,12 @@ namespace ml_amt
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.ClearAvatar)),
|
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.ClearAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(AvatarMotionTweaker).GetMethod(nameof(OnAvatarClear_Postfix), System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static))
|
new HarmonyLib.HarmonyMethod(typeof(AvatarMotionTweaker).GetMethod(nameof(OnAvatarClear_Postfix), BindingFlags.NonPublic | BindingFlags.Static))
|
||||||
);
|
);
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.CalibrateAvatar)),
|
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.CalibrateAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(AvatarMotionTweaker).GetMethod(nameof(OnCalibrateAvatar_Postfix), System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic))
|
new HarmonyLib.HarmonyMethod(typeof(AvatarMotionTweaker).GetMethod(nameof(OnCalibrateAvatar_Postfix), BindingFlags.Static | BindingFlags.NonPublic))
|
||||||
);
|
);
|
||||||
|
|
||||||
MelonLoader.MelonCoroutines.Start(WaitForLocalPlayer());
|
MelonLoader.MelonCoroutines.Start(WaitForLocalPlayer());
|
||||||
|
@ -52,7 +53,7 @@ namespace ml_amt
|
||||||
m_localTweaker.SetIKOverrideFly(Settings.IKOverrideFly);
|
m_localTweaker.SetIKOverrideFly(Settings.IKOverrideFly);
|
||||||
m_localTweaker.SetDetectEmotes(Settings.DetectEmotes);
|
m_localTweaker.SetDetectEmotes(Settings.DetectEmotes);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnIKOverrideCrouchChange(bool p_state)
|
void OnIKOverrideCrouchChange(bool p_state)
|
||||||
{
|
{
|
||||||
if(m_localTweaker != null)
|
if(m_localTweaker != null)
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyTitle("AvatarMotionTweaker")]
|
[assembly: AssemblyTitle("AvatarMotionTweaker")]
|
||||||
[assembly: AssemblyVersion("1.1.2")]
|
[assembly: AssemblyVersion("1.1.3")]
|
||||||
[assembly: AssemblyFileVersion("1.1.2")]
|
[assembly: AssemblyFileVersion("1.1.3")]
|
||||||
|
|
||||||
[assembly: MelonLoader.MelonInfo(typeof(ml_amt.AvatarMotionTweaker), "AvatarMotionTweaker", "1.1.2", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
|
[assembly: MelonLoader.MelonInfo(typeof(ml_amt.AvatarMotionTweaker), "AvatarMotionTweaker", "1.1.3", "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)]
|
|
@ -156,8 +156,9 @@ namespace ml_amt
|
||||||
{
|
{
|
||||||
ms_ikOverrideFly = bool.Parse(p_value);
|
ms_ikOverrideFly = bool.Parse(p_value);
|
||||||
IKOverrideFlyChange?.Invoke(ms_ikOverrideFly);
|
IKOverrideFlyChange?.Invoke(ms_ikOverrideFly);
|
||||||
} break;
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case ModSetting.DetectEmotes:
|
case ModSetting.DetectEmotes:
|
||||||
{
|
{
|
||||||
ms_detectEmotes = bool.Parse(p_value);
|
ms_detectEmotes = bool.Parse(p_value);
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
using ABI_RC.Core.Player;
|
using ABI_RC.Core.Player;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using ViveSR.anipal.Lip;
|
||||||
|
|
||||||
namespace ml_dht
|
namespace ml_dht
|
||||||
{
|
{
|
||||||
|
@ -79,10 +80,10 @@ namespace ml_dht
|
||||||
|
|
||||||
float l_weight = Mathf.Clamp(Mathf.InverseLerp(0.25f, 1f, Mathf.Abs(m_mouthShapes.y)), 0f, 1f) * 100f;
|
float l_weight = Mathf.Clamp(Mathf.InverseLerp(0.25f, 1f, Mathf.Abs(m_mouthShapes.y)), 0f, 1f) * 100f;
|
||||||
|
|
||||||
p_component.BlendShapeValues[(int)ViveSR.anipal.Lip.LipShape_v2.Jaw_Open] = m_mouthShapes.x * 100f;
|
p_component.BlendShapeValues[(int)LipShape_v2.Jaw_Open] = m_mouthShapes.x * 100f;
|
||||||
p_component.BlendShapeValues[(int)ViveSR.anipal.Lip.LipShape_v2.Mouth_Pout] = ((m_mouthShapes.y > 0f) ? l_weight : 0f);
|
p_component.BlendShapeValues[(int)LipShape_v2.Mouth_Pout] = ((m_mouthShapes.y > 0f) ? l_weight : 0f);
|
||||||
p_component.BlendShapeValues[(int)ViveSR.anipal.Lip.LipShape_v2.Mouth_Smile_Left] = ((m_mouthShapes.y < 0f) ? l_weight : 0f);
|
p_component.BlendShapeValues[(int)LipShape_v2.Mouth_Smile_Left] = ((m_mouthShapes.y < 0f) ? l_weight : 0f);
|
||||||
p_component.BlendShapeValues[(int)ViveSR.anipal.Lip.LipShape_v2.Mouth_Smile_Right] = ((m_mouthShapes.y < 0f) ? l_weight : 0f);
|
p_component.BlendShapeValues[(int)LipShape_v2.Mouth_Smile_Right] = ((m_mouthShapes.y < 0f) ? l_weight : 0f);
|
||||||
p_component.LipSyncWasUpdated = true;
|
p_component.LipSyncWasUpdated = true;
|
||||||
p_component.UpdateLipShapes();
|
p_component.UpdateLipShapes();
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ namespace ml_dht
|
||||||
|
|
||||||
HeadTracked m_localTracked = null;
|
HeadTracked m_localTracked = null;
|
||||||
|
|
||||||
public override void OnApplicationStart()
|
public override void OnInitializeMelon()
|
||||||
{
|
{
|
||||||
if(ms_instance == null)
|
if(ms_instance == null)
|
||||||
ms_instance = this;
|
ms_instance = this;
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyTitle("DesktopHeadTracking")]
|
[assembly: AssemblyTitle("DesktopHeadTracking")]
|
||||||
[assembly: AssemblyVersion("1.0.5")]
|
[assembly: AssemblyVersion("1.0.6")]
|
||||||
[assembly: AssemblyFileVersion("1.0.5")]
|
[assembly: AssemblyFileVersion("1.0.6")]
|
||||||
|
|
||||||
[assembly: MelonLoader.MelonInfo(typeof(ml_dht.DesktopHeadTracking), "DesktopHeadTracking", "1.0.5", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
|
[assembly: MelonLoader.MelonInfo(typeof(ml_dht.DesktopHeadTracking), "DesktopHeadTracking", "1.0.6", "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)]
|
|
@ -5,7 +5,9 @@ using ABI_RC.Core.Savior;
|
||||||
using ABI_RC.Core.UI;
|
using ABI_RC.Core.UI;
|
||||||
using ABI_RC.Systems.IK;
|
using ABI_RC.Systems.IK;
|
||||||
using ABI_RC.Systems.IK.SubSystems;
|
using ABI_RC.Systems.IK.SubSystems;
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Reflection;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace ml_fpt
|
namespace ml_fpt
|
||||||
|
@ -27,24 +29,24 @@ namespace ml_fpt
|
||||||
int m_hipsTrackerIndex = -1;
|
int m_hipsTrackerIndex = -1;
|
||||||
Transform m_hips = null;
|
Transform m_hips = null;
|
||||||
|
|
||||||
Dictionary<string, System.Tuple<Vector3, Quaternion>> m_avatarCalibrations = null;
|
Dictionary<string, Tuple<Vector3, Quaternion>> m_avatarCalibrations = null;
|
||||||
|
|
||||||
public override void OnApplicationStart()
|
public override void OnInitializeMelon()
|
||||||
{
|
{
|
||||||
if(ms_instance == null)
|
if(ms_instance == null)
|
||||||
ms_instance = this;
|
ms_instance = this;
|
||||||
|
|
||||||
m_avatarCalibrations = new Dictionary<string, System.Tuple<Vector3, Quaternion>>();
|
m_avatarCalibrations = new Dictionary<string, Tuple<Vector3, Quaternion>>();
|
||||||
|
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.ClearAvatar)),
|
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.ClearAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(FourPointTracking).GetMethod(nameof(OnAvatarClear_Postfix), System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static))
|
new HarmonyLib.HarmonyMethod(typeof(FourPointTracking).GetMethod(nameof(OnAvatarClear_Postfix), BindingFlags.NonPublic | BindingFlags.Static))
|
||||||
);
|
);
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.CalibrateAvatar)),
|
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.CalibrateAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(FourPointTracking).GetMethod(nameof(OnCalibrateAvatar_Postfix), System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic))
|
new HarmonyLib.HarmonyMethod(typeof(FourPointTracking).GetMethod(nameof(OnCalibrateAvatar_Postfix), BindingFlags.Static | BindingFlags.NonPublic))
|
||||||
);
|
);
|
||||||
|
|
||||||
MelonLoader.MelonCoroutines.Start(WaitForMainMenuView());
|
MelonLoader.MelonCoroutines.Start(WaitForMainMenuView());
|
||||||
|
@ -62,7 +64,7 @@ namespace ml_fpt
|
||||||
|
|
||||||
ViewManager.Instance.gameMenuView.Listener.ReadyForBindings += () =>
|
ViewManager.Instance.gameMenuView.Listener.ReadyForBindings += () =>
|
||||||
{
|
{
|
||||||
ViewManager.Instance.gameMenuView.View.RegisterForEvent("MelonMod_FPT_Action_Calibrate", new System.Action(this.StartCalibration));
|
ViewManager.Instance.gameMenuView.View.RegisterForEvent("MelonMod_FPT_Action_Calibrate", new Action(this.StartCalibration));
|
||||||
};
|
};
|
||||||
|
|
||||||
ViewManager.Instance.gameMenuView.Listener.FinishLoad += (_) =>
|
ViewManager.Instance.gameMenuView.Listener.FinishLoad += (_) =>
|
||||||
|
@ -137,7 +139,7 @@ namespace ml_fpt
|
||||||
|
|
||||||
m_avatarCalibrations.Add(
|
m_avatarCalibrations.Add(
|
||||||
MetaPort.Instance.currentAvatarGuid,
|
MetaPort.Instance.currentAvatarGuid,
|
||||||
new System.Tuple<Vector3, Quaternion>(
|
new Tuple<Vector3, Quaternion>(
|
||||||
PlayerSetup.Instance._trackerManager.trackers[m_hipsTrackerIndex].target.transform.localPosition,
|
PlayerSetup.Instance._trackerManager.trackers[m_hipsTrackerIndex].target.transform.localPosition,
|
||||||
PlayerSetup.Instance._trackerManager.trackers[m_hipsTrackerIndex].target.transform.localRotation
|
PlayerSetup.Instance._trackerManager.trackers[m_hipsTrackerIndex].target.transform.localRotation
|
||||||
)
|
)
|
||||||
|
@ -228,7 +230,7 @@ namespace ml_fpt
|
||||||
ShowHudNotification("Calibration canceled");
|
ShowHudNotification("Calibration canceled");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch(System.Exception e)
|
catch(Exception e)
|
||||||
{
|
{
|
||||||
MelonLoader.MelonLogger.Error(e);
|
MelonLoader.MelonLogger.Error(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyTitle("FourPointTracking")]
|
[assembly: AssemblyTitle("FourPointTracking")]
|
||||||
[assembly: AssemblyVersion("1.0.7")]
|
[assembly: AssemblyVersion("1.0.8")]
|
||||||
[assembly: AssemblyFileVersion("1.0.7")]
|
[assembly: AssemblyFileVersion("1.0.8")]
|
||||||
|
|
||||||
[assembly: MelonLoader.MelonInfo(typeof(ml_fpt.FourPointTracking), "FourPointTracking", "1.0.7", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
|
[assembly: MelonLoader.MelonInfo(typeof(ml_fpt.FourPointTracking), "FourPointTracking", "1.0.8", "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)]
|
|
@ -1,6 +1,7 @@
|
||||||
using ABI_RC.Core.Player;
|
using ABI_RC.Core.Player;
|
||||||
using ABI_RC.Core.UI;
|
using ABI_RC.Core.UI;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
namespace ml_lme
|
namespace ml_lme
|
||||||
{
|
{
|
||||||
|
@ -20,7 +21,7 @@ namespace ml_lme
|
||||||
GameObject m_leapControllerModel = null;
|
GameObject m_leapControllerModel = null;
|
||||||
LeapTracked m_leapTracked = null;
|
LeapTracked m_leapTracked = null;
|
||||||
|
|
||||||
public override void OnApplicationStart()
|
public override void OnInitializeMelon()
|
||||||
{
|
{
|
||||||
if(ms_instance == null)
|
if(ms_instance == null)
|
||||||
ms_instance = this;
|
ms_instance = this;
|
||||||
|
@ -51,12 +52,12 @@ namespace ml_lme
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.ClearAvatar)),
|
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.ClearAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(LeapMotionExtension).GetMethod(nameof(OnAvatarClear_Postfix), System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic))
|
new HarmonyLib.HarmonyMethod(typeof(LeapMotionExtension).GetMethod(nameof(OnAvatarClear_Postfix), BindingFlags.Static | BindingFlags.NonPublic))
|
||||||
);
|
);
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.CalibrateAvatar)),
|
typeof(PlayerSetup).GetMethod(nameof(PlayerSetup.CalibrateAvatar)),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(LeapMotionExtension).GetMethod(nameof(OnCalibrateAvatar_Postfix), System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic))
|
new HarmonyLib.HarmonyMethod(typeof(LeapMotionExtension).GetMethod(nameof(OnCalibrateAvatar_Postfix), BindingFlags.Static | BindingFlags.NonPublic))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyTitle("LeapMotionExtension")]
|
[assembly: AssemblyTitle("LeapMotionExtension")]
|
||||||
[assembly: AssemblyVersion("1.2.0")]
|
[assembly: AssemblyVersion("1.2.1")]
|
||||||
[assembly: AssemblyFileVersion("1.2.0")]
|
[assembly: AssemblyFileVersion("1.2.1")]
|
||||||
|
|
||||||
[assembly: MelonLoader.MelonInfo(typeof(ml_lme.LeapMotionExtension), "LeapMotionExtension", "1.2.0", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
|
[assembly: MelonLoader.MelonInfo(typeof(ml_lme.LeapMotionExtension), "LeapMotionExtension", "1.2.1", "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)]
|
||||||
|
|
|
@ -1,16 +1,17 @@
|
||||||
using ABI_RC.Core.UI;
|
using ABI_RC.Core.UI;
|
||||||
using DarkRift.Client;
|
using DarkRift.Client;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
namespace ml_sci
|
namespace ml_sci
|
||||||
{
|
{
|
||||||
public class ServerConnectionInfo : MelonLoader.MelonMod
|
public class ServerConnectionInfo : MelonLoader.MelonMod
|
||||||
{
|
{
|
||||||
public override void OnApplicationStart()
|
public override void OnInitializeMelon()
|
||||||
{
|
{
|
||||||
HarmonyInstance.Patch(
|
HarmonyInstance.Patch(
|
||||||
typeof(ABI_RC.Core.Networking.NetworkManager).GetMethod("OnGameNetworkConnectionClosed", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance),
|
typeof(ABI_RC.Core.Networking.NetworkManager).GetMethod("OnGameNetworkConnectionClosed", BindingFlags.NonPublic | BindingFlags.Instance),
|
||||||
null,
|
null,
|
||||||
new HarmonyLib.HarmonyMethod(typeof(ServerConnectionInfo).GetMethod(nameof(OnGameNetworkConnectionClosed), System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static))
|
new HarmonyLib.HarmonyMethod(typeof(ServerConnectionInfo).GetMethod(nameof(OnGameNetworkConnectionClosed), BindingFlags.NonPublic | BindingFlags.Static))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
[assembly: AssemblyTitle("ServerConnectionInfo")]
|
[assembly: AssemblyTitle("ServerConnectionInfo")]
|
||||||
[assembly: AssemblyVersion("1.0.1")]
|
[assembly: AssemblyVersion("1.0.2")]
|
||||||
[assembly: AssemblyFileVersion("1.0.1")]
|
[assembly: AssemblyFileVersion("1.0.2")]
|
||||||
|
|
||||||
[assembly: MelonLoader.MelonInfo(typeof(ml_sci.ServerConnectionInfo), "ServerConnectionInfo", "1.0.1", "SDraw", "https://github.com/SDraw/ml_mods_cvr")]
|
[assembly: MelonLoader.MelonInfo(typeof(ml_sci.ServerConnectionInfo), "ServerConnectionInfo", "1.0.2", "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)]
|
Loading…
Add table
Add a link
Reference in a new issue