This branch updates the Spigot API dependency to version 1.21. With that, many optimizations to existing code were made to enable backwards-compatibility to 1.16.5.
Change Details
Project now requires JDK 21.
Project now uses Gradle 8.8.
Changed both api and core modules to use Spigot 1.21 API.
Updated dependency repositories and versions for Dynmap and QuickShop.
Added plugin support for Spigot 1.20.6 and 1.21.
Optimized code for backwards-compatibility
Changed all icon classes to use a common static method to make ItemStacks, which now adds a dummy generic attribute modifier in order to correctly hide all item flags.
Added utility methods to get enums in appropriate API version, for potions, particles and enchantments.
Added reflection method to get top inventory from an InventoryView used by InventoryEvent handlers.
Updated diplomacy logic to avoid setting relations with the same kingdom.
Removed debug stack trace printing in console for blocked player protections.
Checklist
[x] I have merged the latest develop commit into this branch and resolved any conflicts.
[x] I have tested this branch and it is working as intended.
[x] This Pull Request is ready for review and merging.
Konquest Pull Request
Closes #229
Summary
This branch updates the Spigot API dependency to version 1.21. With that, many optimizations to existing code were made to enable backwards-compatibility to 1.16.5.
Change Details
api
andcore
modules to use Spigot 1.21 API.Checklist
develop
commit into this branch and resolved any conflicts.