Removed the "sendDisplayPacketToAll" and "sendPossibleDisplayPackets" methods from the "DisplayShopsAPI" interface.
Removed all task-related methods from the "DisplayShopsAPI".
The "clearDisplayPackets" method in the "DisplayShopsAPI" interface now also kills the display packets.
Added the "getBaseBlockPageMap", "setBaseBlockPageMap", "setCurrentBaseBlockPage", and "getCurrentBaseBlockPage" methods to the "DataPack" interface for the new base-block multi-page system.
Added the "updateAllBaseBlockAccess" method to the "DataPack" object interface.
Added the "canEdit" check method to the "Shop" object interface.
Added the "getCurrencyBalance" method to the "Manager" interface.
Added the "getShopById" method to the "Manager" interface.
The "save" method in the "Shop" object interface now requires an SQL statement to reduce the creation of too many statements in a short period of time.
Fixed the "DisplayShopsAPI" interface as it was set as package-private.
⍟ Plugin Changes ⍟
Implemented full 1.16.3 support though not much was needed to be done!
Completely removed the purge system. Due to reports of shop loss and the awkwardness of the feature-based around how it functioned, it has been removed entirely.
The base block menu now can not go under a size of 18 and the bottom row is now completely function-less aside the new next/previous page buttons. Indeed, the base-block selection menu now has full multi-page support!
Player heads from either HeadDatabase or just vanilla can now be used as item materials through the material format "HEAD:<value>" where value is the ID or player name.
Re-Worked several areas dealing with general display functionality to simplify, optimize, and reduce the size of code. In addition, some common display issues have been resolved to implement a new level of visual consistency!
Added the "negative-entry", "bbm-unlocked", and "bbm-locked" messages to the "lang.yml".
Added the "/ds unlock <player>" and "/ds lock <player>" commands which simply control the base-block material unlocks for an individual player.
Fixed an issue where the shop's trade item, when invalid, has its amount checked when changing the trade item.
Fixed an issue where adding a single or double quote into a shop's description would cause the shop to not save properly and cause more intense issues.
Fixed an issue where the sell button in the transaction menu would not follow the rules of the owner balance syncing feature causing it to always show as blocked when the stored balance was below the sell price.
Fixed an issue where the "/ds copy" command was not formatting correctly via color codes.
Fixed some SQL-related issues by simplifying and re-work how most tasks are executed.
Fixed an issue that allowed users to use negative value entries to trick the internal checks into thinking it was positive.
Fixed an issue where base-block materials were all unlocked by default.
Fixed an issue where the "reload" command and "onDisable" method would have issues during the saving process.
Fixed an issue causing player data packs not to save unless they logged out manually.
Fixed an issue with the chat interaction time out passing through to other chat interaction sessions, if actions are performed quickly.