
22.5K
48
zMenu 1.1.1.2
release17 марта 2026 г.Bug Fixes
- Fixed
openWithOldInventoriesmethod crash on 1.20 by usingCompatibilityUtil.getTopInventory()for safe inventory access. - Fixed trim pattern and material validation: now uses Bukkit
Registryinstead of the hardcodedTrimHelper, with proper error messages listing all available patterns/materials when a key is not found. - Fixed null
ItemFlagentries causing errors when applying flags to item meta. - Fixed
EnchantmentGlintOverrideComponentnot handlingfalsevalues correctly — previously onlytruewas applied, now bothtrueandfalseare respected. - Fixed click requirements defaulting to an empty click list when none are specified — now defaults to all click types.
- Fixed
AttributeWrapperto support an optionalNamespacedKeyinstead of always generating a random UUID, preventing attribute duplication on item rebuild. - Fixed database connection logger initialization order in
ZStorageManager. - Fixed item loading from map (
loadItemStack) to useMenuItemStackLoaderinstead of the removedMenuItemStackFormMapclass.
Improvements
- Command Permissions: Added dedicated permissions for
CommandMenuEditor(ZMENU_EDITOR),CommandMenuVersion(ZMENU_VERSION), andCommandMenuGiveOpenItem(ZMENU_GIVE_OPEN_ITEM). - API: Added
getClickRequirementKeys()method toMenuPlugininterface, allowing addons to retrieve the supported click requirement configuration keys. - Default Configs: Updated default configuration files (
pro_inventory.yml,playtime_reward.yml) to use kebab-case (view-requirement,click-requirement,open-requirement) matching current conventions. - Dependencies: Added
adventure-text-minimessageas a library dependency inplugin.yml.
Internal Changes
- Removed unused
PlayerSkinclass. - Removed unused
MenuItemStackFormMapclass and associatedfromMapstatic method. - Cleaned up imports and formatting across multiple files.
zMenu 1.1.1.1
release9 марта 2026 г.New Features
- MMOItems Support: Added material loader for MMOItems plugin integration.
- Enchantments Component: Added enchantments component support for item configuration.
Performance
- Performance improvement for items that will use a player's nickname to be displayed (player-head optimization).
Bug Fixes
- Fixed enchant key parsing in configuration.
- Fixed enchantments component initialization.
- Fixed title parsing before sending to player in
PlayerTitleAnimation. - Fixed dynamic material check in menu item stack caching logic.
- Fixed
%player%as a valid player argument in validators. - Fixed error handling and formatting in various loaders and actions.
- Fixed basehead itemstack rendering.
- Fixed French translations in message strings.
- Fixed wrong format issues.
- Fixed null checks for player in packet listeners.
- Fixed
[]display when placeholder returns an empty list. - Fixed null message handling in
getLegacyMessagemethod.
Internal Changes
- Refactored placeholder package structure and usage.
- Renamed
SpigotDyeColorItemComponentLoadertoSpigotDyedColorItemComponentLoader. - Changed item model type from
StringtoNamespacedKeyin MenuItemStack classes. - Updated
@Contractannotations inBaseInventory.javafor clarity. - Removed unnecessary whitespace in
ComponentMeta.java. - Removed debug messages.
zMenu 1.1.1.0
release15 февраля 2026 г.New Features
- Performance Debug System: Added per-operation performance monitoring for inventory opening. Measures execution time for each step (permission checks, button building, item rendering, etc.) and logs results to console. Configurable via
enable-performance-debug, with threshold filtering and whitelist/blacklist support for operation names.
Performance
- ItemStack Build Optimization: Optimized
ZMenuItemStack.build()to reduce redundant work on each inventory open:- Eliminated duplicate PlaceholderAPI resolution for material strings (was called twice per build)
- Pre-resolve
Materialat load time when no placeholders are present, skipping PAPI parsing at runtime - Replaced exception-based control flow for numeric material IDs with a simple numeric check
- Pre-compute
NamespacedKeyfortooltipStyle,itemModel, andequippedModelin setters instead of splitting/creating on every build - Cache the glowing enchantment lookup instead of querying the enchantment registry on every build
- Pre-split lore lines containing
\nat load time instead of splitting on every build - Added early exit in
Placeholders.parse()when the string contains no%character, avoiding unnecessary iteration over all placeholder entries
Internal Changes
- MiniMessage Color Parsing Refactor: Consolidated color parsing methods into
MiniMessageColorUtilsclass for better maintainability and code reuse. - Added unit tests to verify preservation of MiniMessage color tags.
Bug Fixes
- Fixed hex color parsing regex to correctly handle edge cases.
- Fixed typo in
PlayerCommandLoaderconstructor parameter list.
zMenu 1.1.0.9
release3 февраля 2026 г.New Features
- Dynamic Inventory Title Updates: Added
PacketEventChangeTitleNameandPacketTitleListenerfor changing inventory titles dynamically without reopening the inventory. Requires PacketEvents. - ClearInvType for Inventory Management: Introduced
ClearInvTypeenum and temporary inventory storage system for better inventory state management. - Per-Inventory Click Limiter: The click limiter now only applies to zMenu inventories and can be configured per inventory with
click-limiter-enabled: true/false. It no longer interferes with non-zMenu inventories. - Enhanced ItemButton Context:
ItemButtonnow includes inventory context for improved button logic and interactions.
Bug Fixes
- Fixed parsing of map structures inside arrays in YAML configuration. #219
- Fixed click limiter applying to all inventories instead of only zMenu inventories. #219
- Fixed inventory restoration on plugin disable. #215
- Fixed PacketEvents warning on plugin disable. #215
- Resolved scheduler compatibility issue with Folia.
- Fixed task registration during plugin shutdown.
- Enhanced variant component initialization with proper error handling and version checks.
Item components and inventory title animation !
release27 января 2026 г.New Features
- New Item Component System (1.20.5+) - Complete overhaul with 30+ components (Enchantments, Lore, Trim, Tool, PotionContents, WrittenBook, AttributeModifiers, etc.). Improved error handling and case sensitivity.
- Animated Inventory Titles - Requires PacketEvents.
- Local Placeholders -
local-placeholderssection in inventory/pattern configs, cached with Guava for better performance. - Actions Pattern System - Define default actions for all buttons in
actions_patterns/directory. - New Actions:
message-to(send to specific player),open-actionsandclose-actionsfor inventories. - Console Commands - Commands can now be executed from console (
console: true). - LuckPerms - Permission expiration support with time unit configuration.
- MiniMessage support in toasts.
- Multi-line inventory names (useful with zTextGenerator).
- Resin trim material support.
Bug Fixes
- Fixed Avast false positive on VirusTotal.
- Fixed async access block and container component issues.
- Fixed PacketAnimationListener task execution when plugin is disabled.
- Fixed button reference in updatedButtons iteration.
- Various minor fixes.
Internal Changes
- Removed
getCustomItemStack(Player player)method. UsegetCustomItemStack(Player player, Placeholders placeholders)instead. - Renamed package
zcore→common. - Moved Component classes to API module.
- Added nullability annotations and new interfaces (
BuildContext,MenuItemStackContext). - Improved JavaDoc documentation.
Совместимость
Детали
Лицензия:GPL-3.0-only
Опубликован:1 год назад
Обновлён:3 недели назад