mirror of
https://github.com/thegeneralist01/Scene-Manager-DevRepo
synced 2026-01-11 15:40:29 +01:00
53 lines
1.7 KiB
C#
53 lines
1.7 KiB
C#
using RAGENativeUI;
|
|
using RAGENativeUI.Elements;
|
|
using System.Collections.Generic;
|
|
using System.Drawing;
|
|
using SceneManager.Utils;
|
|
using Rage;
|
|
|
|
namespace SceneManager.Menus
|
|
{
|
|
// The only reason this class should change is to modify the main menu
|
|
class MainMenu
|
|
{
|
|
internal static UIMenu Menu { get; } = new UIMenu("Scene Manager", "~o~Main Menu");
|
|
|
|
internal static void Initialize()
|
|
{
|
|
MenuManager.AddToMenuPool(Menu);
|
|
|
|
Menu.OnMenuOpen += MainMenu_OnMenuOpen;
|
|
}
|
|
|
|
internal static void BuildMainMenu()
|
|
{
|
|
var navigateToPathMenu = new UIMenuItem("Path Menu");
|
|
Menu.AddItem(navigateToPathMenu);
|
|
navigateToPathMenu.ForeColor = Color.Gold;
|
|
Menu.BindMenuToItem(PathMainMenu.Menu, navigateToPathMenu);
|
|
|
|
var navigateToBarrierMenu = new UIMenuItem("Barrier Menu");
|
|
Menu.AddItem(navigateToBarrierMenu);
|
|
navigateToBarrierMenu.ForeColor = Color.Gold;
|
|
Menu.BindMenuToItem(BarrierMenu.Menu, navigateToBarrierMenu);
|
|
|
|
var navigateToSettingsMenu = new UIMenuItem("Settings Menu");
|
|
Menu.AddItem(navigateToSettingsMenu);
|
|
navigateToSettingsMenu.ForeColor = Color.Gold;
|
|
Menu.BindMenuToItem(SettingsMenu.Menu, navigateToSettingsMenu);
|
|
|
|
Menu.RefreshIndex();
|
|
}
|
|
|
|
private static void MainMenu_OnMenuOpen(UIMenu menu)
|
|
{
|
|
var scrollerItems = new List<UIMenuScrollerItem> { };
|
|
GameFiber.StartNew(() => UserInput.InitializeMenuMouseControl(menu, scrollerItems), "RNUI Mouse Input Fiber");
|
|
}
|
|
|
|
internal static void DisplayMenu()
|
|
{
|
|
Menu.Visible = !Menu.Visible;
|
|
}
|
|
}
|
|
}
|