Fixes a bug where commands in /execute would not have modifications applied to them.
Example: `/execute run particle flame ~ ~ ~ 1 1 1 0 100 force @s` would not get modified before this PR, but now it gets modified to `/execute run particle flame ~ ~ ~ 1 1 1 0 10 force @s`
Instead of using `Bukkit.getPlayer(name)`, now each player is manually iterated over to check if a username is taken. This fixes multiple problems, such as a player not being able to set their name to `a` because a player named `ab` is online, and a player not being able to set their username back to the one they joined with.
* Use per-player ratelimit for /username
* Improve the skin system
- Migrates skin getting over to Mojang. I do indeed understand that the Mojang API is more ratelimited and generally harder to use, it should be noted that it has an almost 0% chance of error. Compare that to Ashcon which, on some days, has a 50% chance of actually recognizing your account exists
- Uses CompletableFutures and a ExecutorService for making requests
- Renames SkinDownloader class to SkinManager class
- Makes SkinManager class static
- Limits the /skin command per-player
* Block /scissors reload
Yeah this is another one of those "spam a random command until it breaks the server"
This only applies to servers which actually run scissors, which to my knowledge kaboom and all clones all run Scissors.
* Add warning for "randomizeSpawn" option about the speed of chunk generation
* Limit random spawn to half a million blocks, which should hopefully fix the OOB error
* Recommend users to use Chunky for pre-world generation
* Add missing period
* Fix checkstyle violation
* Handle full server kicks separately from other join restrictions (closes#312)
* Add missing condition
* Add bracket back
* Remove extra bracket
Co-authored-by: Kaboom <58372747+kaboombot@users.noreply.github.com>
* Add option to randomise spawn locations in config (closes#309)
* Add option to configure entity cap per chunk (closes#311)
* Suppress warnings for star imports
* Add missing return value & whitespace
* Explictly specify type of numbers in spawn randomization
* Upgrade to Java 11
* Make teleport centered
* Final configuration
* Remove star import
* Revert "Suppress warnings for star imports"
This reverts commit 2a2232b0da.
* Let's try 17