56 lines
1.8 KiB
C#
56 lines
1.8 KiB
C#
using BepInEx;
|
|
using BepInEx.Configuration;
|
|
using BepInEx.Logging;
|
|
using BepInEx.Unity.IL2CPP;
|
|
using HarmonyLib;
|
|
using RecRoom.Systems;
|
|
using System;
|
|
|
|
namespace Radium.InputManagerPatch
|
|
{
|
|
/// <summary>
|
|
/// Patch for InputManager in Radium's 2021 build to set the input type to whatever you desire!
|
|
/// </summary>
|
|
[BepInPlugin(MyPluginInfo.PLUGIN_GUID, MyPluginInfo.PLUGIN_NAME, MyPluginInfo.PLUGIN_VERSION)]
|
|
public class Plugin : BasePlugin
|
|
{
|
|
internal static new ManualLogSource Log;
|
|
|
|
internal static readonly Harmony _harmony = new(MyPluginInfo.PLUGIN_GUID);
|
|
|
|
/// <summary>
|
|
/// The input type we wish to set. If no value is provided, it defaults to SteamVR_Vive.
|
|
/// </summary>
|
|
internal static ConfigEntry<InputManager.LNEHPBFDEGG> VRInputDeviceType;
|
|
|
|
public override void Load()
|
|
{
|
|
Log = base.Log;
|
|
|
|
VRInputDeviceType = Config.Bind(
|
|
section: "Input",
|
|
key: "VRInputDeviceType",
|
|
defaultValue: InputManager.LNEHPBFDEGG.SteamVR_Vive,
|
|
description: $"Fixed input mode. Set it to any of the acceptable values below");
|
|
|
|
Log.LogInfo($"{MyPluginInfo.PLUGIN_GUID} loaded!");
|
|
#if DEBUG
|
|
Log.LogInfo($"We are set! {VRInputDeviceType.Value}");
|
|
#endif
|
|
_harmony.PatchAll();
|
|
}
|
|
|
|
/// <summary>
|
|
/// Sets GetVRInputMode (NACIMCNEHMP) of InputManager to whatever we desire!
|
|
/// </summary>
|
|
[HarmonyPatch(typeof(InputManager), "NACIMCNEHMP")]
|
|
public class InputManagerPatch()
|
|
{
|
|
private static bool Prefix(ref InputManager.LNEHPBFDEGG __result)
|
|
{
|
|
__result = Plugin.VRInputDeviceType.Value;
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
} |