Adds debug logging for `getChatFormat` and `getCommandCooldownEntry`, which makes it much easier to track down issues with group formats in EssentialsX Chat and command cooldowns respectively.
This PR fixes the `unbreakable` attribute on kit items. Previously, Essentials was exclusively using an internal Spigot method to set this on `ItemMeta` objects; however, this solution seems to be non-functional on more recent Spigot builds (1.12.2).
I have altered the `MetaItemStack#setUnbreakable` method to use the native Bukkit method, available for [some time now](https://hub.spigotmc.org/stash/projects/SPIGOT/repos/bukkit/commits/d986a3f), by default. Essentials will still use the old solution as a fallback in case of an older Bukkit version which does not have native support for the attribute.
If `compass-towards-home-perm` is enabled in the EssentialsX config, then the permission `essentials.home.compass` is checked before changing the player's compass target.
Closes#1918.
* Add permission to bypass other's msgtoggle
Also thanks to MD for helping me with the code :)
* Correct comment
* Remove checking for console in favour of the already existing IUser check
* Fix comments, again
* Re add isIgnoreMsg() check
Accidently removed it, sorry
* Combine 2 checks
Resolves numerous build errors that emerged in 613e852ffd and for some reason didn't cause a build error on ender.zone, but did everywhere else.
Fixes#1970
Adds world specific perms for whether a player may use /back to teleport
back to a given world. Adds logic to default
essentials.back.into.<world> permissions for loaded worlds to true to
maintain backwards compatibility.
Fixes#1924PaperMC/Paper#884 has been fixed in recent Paper builds (1368+),
which means the workaround is no longer necessary. Disable it when
running a fixed build.
* Replace vanishedPlayers list with set
Not sure if there is any particular reason to keep it ordered, but for now I've used a LinkedHashSet.
* Change return of new method from Set to Collection
Also makes return of old method an unmodifiable list, but this is just as breaking as just changing the method return type as far as I can see
* Implemented separate permissions for seen extras
* Add an extra permission to the whois command too.
IPs are sensitive information that should only be accessible to an as small as possible amount of people