v1.13.0 (2021-07-10) :: Redesigned help command, usability improvements, and critical perms bugfix
Added
Changes to the configuration file (plugins/SignEdit/config.yml) are now detected and reloaded at runtime, so a CraftBukkit server restart is no longer needed to make the new settings take effect.
New locale strings:
usage_page_heading – Styling for the heading of the redesigned /sign help
usage_page_info – Contents of the heading of /sign help
usage_page_numbering – Shows the page number of the /sign help page
Changed
The <lines> argument of /sign clear [<lines>] is now optional. If <lines> is not provided, all lines on the targeted sign will be blanked out.
Reworked /sign help so that it will only display /sign subcommands to which the player has access. (#23)
Tab completion now will only suggest for /sign subcommands to which the player has access.
Removed locale strings:
usage_section – This string is no longer used due to the rework of /sign help.
Fixed
If another plugin modified the lines in a SignChangeEvent, SignEdit for Bukkit may ignore the updated lines and apply the staged lines, bypassing other plugins' changes. (#22)
This defect is a regression from SignEdit for Bukkit = 1.12.2. The cause of this defect was an incorrect assumption that the sign lines array passed in the SignChangeEvent would be mutated in place by the Bukkit event handler and other listening plugins.
/sign undo and /sign redo missing from /sign help (#23)
Internal error while tab-completing and not looking at a sign
Under the Hood
Added documentation of the arguments in the locale strings
Simplified dependency injection for SignSubcommand subclasses
Event listeners split up between CoreSignEditListener, which is always used, and BookUiSignEditListener, which is only used when the editable book alternative sign editor GUI is enabled
The event listeners pertaining to the editable book alternative sign editor GUI are no longer registered if it is disabled.
SignEditInteractionManager extracted out of SignEditListener
Suppressed JavaReflectionMemberAccess warning in org.deltik.mc.signedit.commands.SignCommand.getTargetBlockOfPlayer() because we develop against Bukkit 1.13 before they added org.bukkit.entity.LivingEntity.getTargetBlockExact()