SwiftlyS2

IMenuManagerAPI

Interface IMenuManagerAPI

Namespace: SwiftlyS2.Shared.Menus

Assembly: SwiftlyS2.CS2.dll

Central manager for creating and controlling all player menus.

public interface IMenuManagerAPI

Properties

Configuration

Global configuration settings for all menus.

MenuManagerConfiguration Configuration { get; }
Property Value

Core

The SwiftlyS2 core instance.

ISwiftlyCore Core { get; }
Property Value

Methods

CloseAllMenus()

Closes every open menu for every player.

void CloseAllMenus()

CloseMenu(IMenuAPI)

Closes the specified menu for all players who have it open.

void CloseMenu(IMenuAPI menu)
Parameters

CloseMenuForPlayer(IPlayer, IMenuAPI)

Closes the specified menu for a player. If the menu is not open for that player, this has no effect.

void CloseMenuForPlayer(IPlayer player, IMenuAPI menu)
Parameters
  • player IPlayer — The player whose menu will be closed.
  • menu IMenuAPI — The menu to close.

CreateBuilder()

Creates a new menu builder.

IMenuBuilderAPI CreateBuilder()
Returns

CreateMenu(MenuConfiguration, MenuKeybindOverrides, IMenuAPI?, MenuOptionScrollStyle, MenuOptionTextStyle)

Creates a new menu with an optional title.

IMenuAPI CreateMenu(MenuConfiguration configuration, MenuKeybindOverrides keybindOverrides, IMenuAPI? parent = null, MenuOptionScrollStyle optionScrollStyle = MenuOptionScrollStyle.CenterFixed, MenuOptionTextStyle optionTextStyle = MenuOptionTextStyle.TruncateEnd)
Parameters
Returns
  • IMenuAPI — A new menu instance ready to be configured.

GetCurrentMenu(IPlayer)

Gets the menu currently open for the specified player.

IMenuAPI? GetCurrentMenu(IPlayer player)
Parameters
  • player IPlayer — The player to check.
Returns
  • IMenuAPI? — The player's active menu, or null if they have no menu open.

OpenMenu(IMenuAPI)

Opens the specified menu for all players.

void OpenMenu(IMenuAPI menu)
Parameters
  • menu IMenuAPI — The menu to display.

OpenMenu(IMenuAPI, Action<IPlayer, IMenuAPI>)

Opens the specified menu for all players.

void OpenMenu(IMenuAPI menu, Action<IPlayer, IMenuAPI> onClosed)
Parameters

OpenMenuForPlayer(IPlayer, IMenuAPI)

Opens the specified menu for a player. Any currently open menu will be closed first.

void OpenMenuForPlayer(IPlayer player, IMenuAPI menu)
Parameters
  • player IPlayer — The player who will see the menu.
  • menu IMenuAPI — The menu to display.

OpenMenuForPlayer(IPlayer, IMenuAPI, Action<IPlayer, IMenuAPI>)

Opens the specified menu for a player. Any currently open menu will be closed first.

void OpenMenuForPlayer(IPlayer player, IMenuAPI menu, Action<IPlayer, IMenuAPI> onClosed)
Parameters

Fired when a menu is closed for a player.

event EventHandler<MenuManagerEventArgs>? MenuClosed
Event Type

Fired when a menu is opened for a player.

event EventHandler<MenuManagerEventArgs>? MenuOpened
Event Type

On this page