Co-authored-by: Josh Roy <10731363+JRoy@users.noreply.github.com>
Based on edaa4f6, this allows messages files to be read in UTF8 without the need for native2ascii conversion. This also removes the native2ascii-maven-plugin, previously used to convert Crowdin translations to a compatible format. I've tested this briefly and it appears to work correctly with both internal translations and custom messages.
This PR removes the 1.8 R1 and R2 spawner providers. I was looking into refactoring these to use reflection instead of importing NMS code (in order to avoid requiring buildtools to compile), but after some research it looks like these are actually not even used anymore, in favor of the LegacySpawnerProvider (which Essentials appears to use for 1.8.0-1.12.2). Thus, keeping these is fairly pointless and causes more harm than good. There is no reason to continue including them, nor maintaining them. Essentials currently doesn't even officially support these versions anyway.
* Compile against 1.15
* Remove achievement related methods for OfflinePlayer
* Add 1.15 to VersionUtil
* Revert "Remove achievement related methods for OfflinePlayer"
This reverts commit d0ab84e0
* Add 1.15 Mobs
* Remove Achievement related methods from OfflinePlayer
This needs more work as this currently breaks > 1.15 support
* Actually this isn't a problem
* Add tests for existing format behavior
* Replace formatting implementation
* Add permissions for individual color codes
Resolves#415
* Use format code names
* Fix escaping
* Mockito: test scope only
* Explicitly check the .magic permission
Once I switch to checking if a perm's set in the loop, the explicit check is needed for an * perm.
* Add support for removing individual colors
* Use `obfuscated` as the name for §k
`magic` is still accepted as the group name, so this is not a breaking change.
Remove the (already minimal) usage of Lombok. This will ease development for people who don't already have their IDE set up for Lombok support.
It's also totally unnecessary - it took less than 60 seconds to generate the code needed to replace Lombok annotations in Jails and Spawns.
* Lombok: Older version resulted in NoSuchFieldEx: pid (fixed since 1.16.8)
* JDK9 no longer has a tools.jar because of it's modular system, but ant is
no longer required. It was introduced in 3e9a2377a8
for GroupManager. Now GM is no longer maintained and removed in
* 5ca02e6596 (calling the build.xml)
* fa0bbde236 (removing the remaining module)
Still a lot of work to do. One thing to note is that I used LEGACY materials in a few spots where I didn't know what the new ones are as I'm not very familiar with the 1.13 update and what it changes.