mirror of
https://github.com/NotAKidoS/NAK_CVR_Mods.git
synced 2026-03-22 23:56:50 +00:00
[ESCBothMenus] Initial release
This commit is contained in:
parent
b4b392d20d
commit
798336f409
4 changed files with 109 additions and 0 deletions
2
ESCBothMenus/ESCBothMenus.csproj
Normal file
2
ESCBothMenus/ESCBothMenus.csproj
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project Sdk="Microsoft.NET.Sdk" />
|
||||
52
ESCBothMenus/Main.cs
Normal file
52
ESCBothMenus/Main.cs
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
using System.Reflection;
|
||||
using ABI_RC.Core.InteractionSystem;
|
||||
using ABI_RC.Systems.InputManagement;
|
||||
using ABI_RC.Systems.Movement;
|
||||
using HarmonyLib;
|
||||
using MelonLoader;
|
||||
using UnityEngine;
|
||||
|
||||
namespace NAK.ESCBothMenus;
|
||||
|
||||
public class ESCBothMenusMod : MelonMod
|
||||
{
|
||||
public override void OnInitializeMelon()
|
||||
{
|
||||
HarmonyInstance.Patch(
|
||||
typeof(ViewManager).GetMethod(nameof(ViewManager.Update),
|
||||
BindingFlags.NonPublic | BindingFlags.Instance),
|
||||
prefix: new HarmonyMethod(typeof(ESCBothMenusMod).GetMethod(nameof(OnPreViewManagerUpdate),
|
||||
BindingFlags.NonPublic | BindingFlags.Static))
|
||||
);
|
||||
}
|
||||
|
||||
private static float _timer = -1f;
|
||||
private static bool _main;
|
||||
|
||||
private static void OnPreViewManagerUpdate()
|
||||
{
|
||||
if (CVRInputManager.Instance.mainMenuButton
|
||||
&& !BetterBetterCharacterController.Instance.IsSittingOnControlSeat())
|
||||
{
|
||||
if (_timer < 0f) _timer = 0.2f;
|
||||
else _main = true;
|
||||
}
|
||||
|
||||
if (_timer >= 0f && (_timer -= Time.deltaTime) <= 0f)
|
||||
{
|
||||
var vm = ViewManager.Instance;
|
||||
var qm = CVR_MenuManager.Instance;
|
||||
|
||||
if (vm.IsViewShown) vm.UiStateToggle(false);
|
||||
else if (qm.IsViewShown) qm.ToggleQuickMenu(false);
|
||||
else if (_main) vm.UiStateToggle(true);
|
||||
else qm.ToggleQuickMenu(true);
|
||||
|
||||
_timer = -1f;
|
||||
_main = false;
|
||||
}
|
||||
|
||||
// consume so original logic doesn't fire
|
||||
CVRInputManager.Instance.mainMenuButton = false;
|
||||
}
|
||||
}
|
||||
32
ESCBothMenus/Properties/AssemblyInfo.cs
Normal file
32
ESCBothMenus/Properties/AssemblyInfo.cs
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
using MelonLoader;
|
||||
using NAK.ESCBothMenus.Properties;
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: AssemblyVersion(AssemblyInfoParams.Version)]
|
||||
[assembly: AssemblyFileVersion(AssemblyInfoParams.Version)]
|
||||
[assembly: AssemblyInformationalVersion(AssemblyInfoParams.Version)]
|
||||
[assembly: AssemblyTitle(nameof(NAK.ESCBothMenus))]
|
||||
[assembly: AssemblyCompany(AssemblyInfoParams.Author)]
|
||||
[assembly: AssemblyProduct(nameof(NAK.ESCBothMenus))]
|
||||
|
||||
[assembly: MelonInfo(
|
||||
typeof(NAK.ESCBothMenus.ESCBothMenusMod),
|
||||
nameof(NAK.ESCBothMenus),
|
||||
AssemblyInfoParams.Version,
|
||||
AssemblyInfoParams.Author,
|
||||
downloadLink: "https://github.com/NotAKidoS/NAK_CVR_Mods/tree/main/ESCBothMenus"
|
||||
)]
|
||||
|
||||
[assembly: MelonGame("ChilloutVR", "ChilloutVR")]
|
||||
[assembly: MelonPlatform(MelonPlatformAttribute.CompatiblePlatforms.WINDOWS_X64)]
|
||||
[assembly: MelonPlatformDomain(MelonPlatformDomainAttribute.CompatibleDomains.MONO)]
|
||||
[assembly: MelonColor(255, 246, 25, 99)] // red-pink
|
||||
[assembly: MelonAuthorColor(255, 158, 21, 32)] // red
|
||||
[assembly: HarmonyDontPatchAll]
|
||||
|
||||
namespace NAK.ESCBothMenus.Properties;
|
||||
internal static class AssemblyInfoParams
|
||||
{
|
||||
public const string Version = "1.0.0";
|
||||
public const string Author = "NotAKidoS";
|
||||
}
|
||||
23
ESCBothMenus/format.json
Normal file
23
ESCBothMenus/format.json
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"_id": 219,
|
||||
"name": "ScrollFlight",
|
||||
"modversion": "1.0.5",
|
||||
"gameversion": "2025r181",
|
||||
"loaderversion": "0.7.2",
|
||||
"modtype": "Mod",
|
||||
"author": "NotAKidoS",
|
||||
"description": "Scroll-wheel to adjust flight speed in Desktop. Stole idea from Luc.",
|
||||
"searchtags": [
|
||||
"flight",
|
||||
"scroll",
|
||||
"speed",
|
||||
"modifier"
|
||||
],
|
||||
"requirements": [
|
||||
"None"
|
||||
],
|
||||
"downloadlink": "https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r48/ScrollFlight.dll",
|
||||
"sourcelink": "https://github.com/NotAKidoS/NAK_CVR_Mods/tree/main/ScrollFlight/",
|
||||
"changelog": "- Rebuilt for CVR 2025r181",
|
||||
"embedcolor": "#f61963"
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue