OdalitaMenus - Menu/GUI/Inventory library for developers icon

OdalitaMenus - Menu/GUI/Inventory library for developers -----

Advanced yet simple to use inventory api for plugins (1.16.5-1.21.3)



OdalitaMenus
Advanced yet simple to use inventory api for Spigot plugins​

This resource is for developers only, if you're a server owner then this is not intended for you.

Java version
At least Java 17

Getting started
(NOTE)
If you're running on 1.20.6 or later, please make sure you use Paper as your server software. Spigot is no longer supported for newer versions.

In order to get started you would need to add the libary to your project using maven or gradle. You can also upload it to your server as a plugin and make the dependency provided to not implement it in your own code.

Maven dependency:
Code (YAML):
<dependency >
   <groupId>io.github.odalita-developments.odalitamenus</groupId >
   <artifactId>core</artifactId >
   <version>0.5.13</version >
</dependency>
Gradle dependency:
Code (Text):
repositories {
    mavenCentral()
}

dependencies {
    implementation 'io.github.odalita-developments.odalitamenus:core:0.5.13'
}

Documentation and examples

The wiki can be found here.
Examples can be found here.

Features
  • Simple menu setup (with annotation)
  • Menu types (inventory types)
  • Inbuilt items and option to create your own items
    • DisplayItem
    • ClickableItem
    • UpdatableItem
    • BackItem
    • CloseItem
    • OpenMenuItem
    • PageItem
    • ScrollItem
  • Refreshable items
    • Decide yourself when to refresh an item
  • Scheduler
  • Menu cache
    • Option to use global caching using a key which syncs the cache across the menus with the same key
  • Option to change title without reopening the menu
  • Option to cancel menu from closing NEW
  • Player inventory interaction
    • Click event
    • Item meta changer (client side)
    • Placeable items (option to place items from player inventory into your menu)
      • Shift click support NEW
  • Menu providers
    • This is the way how a menu should initialize it's items, this has to option to create custom providers for your own use
  • Iterators
    • Normal iterators
    • Iterators based on patterns
    • Object iterators
      • This can be used to easily sort and filter items due to it using objects instead of items to fill the iterator
      • This can also be used in pagination
  • Patterns
  • Pagination
    • Async page switching
  • Scollable
  • Frames
    • You can create a smaller piece of a menu with a frame that you can use across multiple menus
  • Option to change inventory properties
  • Option to listen to bukkit inventory and player events NEW
  • Multi version support
  • Async support
    • You can change items in the inventory anytime you want, on any thread you want
  • Option to register your own providers
    • ColorProvider
    • CooldownProvider
    • DefaultItemProvider
    • MenuItemDataProvider
    • PacketListenerProvider

Plugin dependencies
  • (Optional) ProtocolLib
    • This is used for item meta changer, we have our own packet listener builtin and also an option to register your own PacketListenerProvider. ProtocolLib is supported but not required.
Resource Information
Author:
----------
Total Downloads: 1,629
First Release: Jun 10, 2023
Last Update: Nov 21, 2024
Category: ---------------
All-Time Rating:
5 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings