Files
Nitrox/NitroxPatcher/Patches/Persistent/uGUI_OptionsPanel_AddBindings_Patch.cs
2025-07-06 00:23:46 +02:00

25 lines
968 B
C#

using System.Reflection;
using NitroxClient.MonoBehaviours.Gui.Input;
using NitroxClient.MonoBehaviours.Gui.Input.KeyBindings;
using NitroxModel.Helper;
namespace NitroxPatcher.Patches.Persistent
{
public partial class uGUI_OptionsPanel_AddBindings_Patch : NitroxPatch, IPersistentPatch
{
private static readonly MethodInfo TARGET_METHOD = Reflect.Method((uGUI_OptionsPanel t) => t.AddBindings(default(int), default(GameInput.Device)));
public static void Postfix(uGUI_OptionsPanel __instance, int tabIndex, GameInput.Device device)
{
KeyBindingManager keyBindingManager = new();
if (device == GameInput.Device.Keyboard)
{
foreach (KeyBinding keyBinding in keyBindingManager.KeyboardKeyBindings)
{
__instance.AddBindingOption(tabIndex, keyBinding.Label, keyBinding.Device, keyBinding.Button);
}
}
}
}
}