* fix: Standardize projectile permissions
- Let all projectiles (not just splash potions) have a permissions check on throwing
- Fixes snowballs, eggs, etc. being able to be thrown when not added to the plot, etc.
- Fixes#2986 (splash potions only able being to be thrown when also added to the plot)
- Remove the specialized code for egg hatching as now eggs are cancelled entirely
- Remove the non-standard plots.projectile.unowned and plots.projectile.other permissions in favor of the standard admin ones
* docs: Add back deprecated projectile permissions
* docs: Update Core/src/main/java/com/plotsquared/core/permissions/Permission.java
Co-authored-by: Alex <mc.cache@web.de>
Co-authored-by: Alex <mc.cache@web.de>
* Add border bypass permission
- Fixes#3297
* Add permission to plots.admin permpack
* Implement messages on leaving/entering border area
* Rename to border.denied and make border msg red
* change too le/ge as tthey are likely to be equal to border when hit.
- Since we check for being across the border beforehand, it will hopefully not be spammed too much?
- If it's spammed then either we use meta to set if a player's left the border, or we just remove the come-back-in altogether because it's a little looong
- Add quicker method for getting chunks (not requiring a slow stream done by CB) but comment it out for now because we shouldn't need to do our own GC for loaded chunks; they're "handled much better by minecraft as of 1.14" (not really) meaning the required methods for testing if a chunk is allowed to be unloaded is not present. We instead must now rely on the ChunkUnloadEvent for setting if a chunk should be saved.
- Optimise the shouldSave method by not requiring access to injected classes frequently. Location#getPlot methods are not optimised for frequent usage in the same task.
* Fix sponge absorbing water across plot borders
* Shorten for-loops by using removeIf
* Use 'Location' instead of 'var'
Co-authored-by: NotMyFault <mc.cache@web.de>