NAK_CVR_Mods/.Experimental/OriginShift/Integrations/BTKUI/BtkuiAddon.cs
2025-04-03 03:03:24 -05:00

65 lines
No EOL
1.9 KiB
C#

using ABI_RC.Core.Player;
using BTKUILib;
using BTKUILib.UIObjects;
using NAK.OriginShift;
namespace NAK.OriginShiftMod.Integrations;
public static partial class BtkUiAddon
{
private static Page _miscTabPage;
private static string _miscTabElementID;
public static void Initialize()
{
Prepare_Icons();
Setup_OriginShiftTab();
}
#region Initialization
private static void Prepare_Icons()
{
QuickMenuAPI.PrepareIcon(ModSettings.ModName, "OriginShift-Icon-Active",
GetIconStream("OriginShift-Icon-Active.png"));
QuickMenuAPI.PrepareIcon(ModSettings.ModName, "OriginShift-Icon-Inactive",
GetIconStream("OriginShift-Icon-Inactive.png"));
QuickMenuAPI.PrepareIcon(ModSettings.ModName, "OriginShift-Icon-Forced",
GetIconStream("OriginShift-Icon-Forced.png"));
}
private static void Setup_OriginShiftTab()
{
_miscTabPage = QuickMenuAPI.MiscTabPage;
_miscTabElementID = _miscTabPage.ElementID;
QuickMenuAPI.UserJoin += OnUserJoinLeave;
QuickMenuAPI.UserLeave += OnUserJoinLeave;
QuickMenuAPI.OnWorldLeave += OnWorldLeave;
// // Origin Shift Mod
Setup_OriginShiftModCategory(_miscTabPage);
//
// // Origin Shift Tool
// Setup_OriginShiftToolCategory(_miscTabPage);
//
// // Universal Shifting Settings
// Setup_UniversalShiftingSettings(_miscTabPage);
//
// // Debug Options
// Setup_DebugOptionsCategory(_miscTabPage);
}
#endregion
#region Player Count Display
private static void OnWorldLeave()
=> UpdateCategoryModUserCount();
private static void OnUserJoinLeave(CVRPlayerEntity _)
=> UpdateCategoryModUserCount();
#endregion
}