Package studio.mevera.lotus
Class Lotus<C>
java.lang.Object
studio.mevera.lotus.Lotus<C>
Facade and runtime for the Lotus menu framework. One instance per plugin: holds open-view
registry, configurable opener strategies, and the bound Bukkit listener.
Construct via platform factories such as PaperLotus.create(...) or
SpigotLotus.create(...). All public mutators must be called on the server main
thread.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordImmutable runtime configuration. -
Method Summary
Modifier and TypeMethodDescription@NotNull LotusLoggerlogger()@NotNull ViewOpener<C> openerFor(@NotNull org.bukkit.event.inventory.InventoryType type) voidopenMenu(@NotNull org.bukkit.entity.Player viewer, M menu) openMenu(@NotNull org.bukkit.entity.Player viewer, M menu, @NotNull DataRegistry data) @NotNull Collection<MenuView<C, ?>> @NotNull Lotus.Optionsoptions()@NotNull org.bukkit.plugin.Pluginplugin()registeredMenu(@NotNull String name) voidregisterMenu(@NotNull Menu<C> menu) voidregisterOpener(@NotNull org.bukkit.event.inventory.InventoryType type, @NotNull ViewOpener opener) resolveView(@NotNull org.bukkit.entity.Player player) @NotNull PaginationSessionFactory<C> voidsessionFactory(@NotNull PaginationSessionFactory<C> factory) voidInternal: registers/replaces the open view for a player.voiduntrack(@NotNull org.bukkit.entity.Player player) viewOf(@NotNull org.bukkit.entity.Player player)
-
Method Details
-
plugin
@NotNull public @NotNull org.bukkit.plugin.Plugin plugin() -
options
-
logger
-
registerOpener
public void registerOpener(@NotNull @NotNull org.bukkit.event.inventory.InventoryType type, @NotNull @NotNull ViewOpener opener) -
openerFor
@NotNull public @NotNull ViewOpener<C> openerFor(@NotNull @NotNull org.bukkit.event.inventory.InventoryType type) -
sessionFactory
-
sessionFactory
-
registeredMenu
-
viewOf
-
openViews
-
openMenu
-
openMenu
@NotNull public <M extends Menu<C>> @NotNull MenuView<C,M> openMenu(@NotNull @NotNull org.bukkit.entity.Player viewer, @NotNull M menu, @NotNull @NotNull DataRegistry data) -
openMenu
public void openMenu(@NotNull @NotNull org.bukkit.entity.Player viewer, @NotNull @NotNull String menuName) -
untrack
public void untrack(@NotNull @NotNull org.bukkit.entity.Player player) -
resolveView
-