This method will return the Block a player is looking at while taking into consideration the AABB of each block in the path.
For example, you can look through the 1/4 space of air in a Stair block and get the block behind it instead of the Stair block you are looking past.
the way I handled this on my fork was using the metadata in the
git "stats" output of patches, however we don't include stats in
the patch files for paper so the code didn't work.
Changed the code to detect our own file editions inside of NMS
to a method that works without stats.
So we no longer need to manually add files to this list
Some things break from this, while this was trying to fix other things
since the thing this patch tried to fix still had problems and required
yet another fix, just going to remove this patch.
Fixes issue #1177
`MapMaker#weakKeys()` makes the `Map` use identity comparison for the keys, while also enabling the automatical removal of dropped classes from the cache.
The changes are the same as in #1399, except now the original patch is modified instead of a new one being created.
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
8ab814cd Add getFacing method to get the current cardinal direction an entity is facing.
CraftBukkit Changes:
ee5efeb0 Add getFacing method to get the current cardinal direction an entity is facing.
Spigot Changes:
0ede7d0e Rebuild patches
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
CraftBukkit Changes:
3037eb3e BlockSpreadEvent for Kelp
6cf60193 SPIGOT-4340: Improve client bug workaround
We shouldn't ever be dropping API anyways.
Dropped Async Chunk load v1 since its useless now
Added scheduler decompile fixes incase we do end up needing them
Spigots implementation around the header/footer strips newlines from the
header/footer, this patch allows the tab list header/footer to retain newlines.
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
9e031b7b SPIGOT-4338: breedCause API
CraftBukkit Changes:
60d79820 SPIGOT-4338: breedCause API
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
CraftBukkit Changes:
dc69d2b3 Fix unbound shaped recipe ingredients
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
eaf05a2a Expand Recipe API to allow multiple Materials per slot
CraftBukkit Changes:
4c219e2a Expand Recipe API to allow multiple Materials per slot
ForgeFlower is better than Spigots FernFlower at decompiling the source.
However, in order to maintain the CraftBukkit patches, we must keep
using spigots for the primary.
However, for any file that we import on top of Spigots imported files
there is nothing stopping us from using better decompiled files.
So these changes will use ForgeFlower to maintain a better set of
decomped files, so anything we add on top of Paper can start off
in a better spot.
With 1.13, the idea of accessing chunks async is going to have to
be supported with the push towards thread safe chunk access mojang
has done.
This commit changes timings to always thread check at start and stop
timings and only mutate state on main thread.
This makes startTimingIfSync pointless, but I'm just going to leave
it as is.
Timings will no longer complain when used async, it just will not
do anything.
Further concurrency issues have been addressed with creating
timings handlers that may of overall been an issue for any handler
that might of been created async (happened even for things that
only timed sync)
with that, the 'protected' concept of handlers has been removed,
and 'plugin' vs 'safe' handlers are now the same.
Got rid of some guava functions in favor of java 8 real stuff now too.
Fixes GH-1389
Because we are no longer enabling creepers to rapidly change status
every tick, in order to prevent event spam, their datawatcher value
ends up negative.
This datawatcher value is used to increment the fuseTicks within the
creeper tick. Because the value is negative, it is constantly zero'd
and therefore never incremented, instead acting the same as creepers
that aren't ignited.
We can just as easily increment this ourselves when the creeper is
ignited, so that's what we'll do.
Uses optimized check to avoid major locks and large method.
Will improve inlining across many hot methods.
Improve getBrightness to not do double chunk map lookups.
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
28237f03 SPIGOT-4330: Improve isSimilar for legacy stacks
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
3d50da57 Make matchMaterial accept the minecraft: namespace
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
9ca2772d API to prevent PlayerBedLeaveEvent from changing a player's spawn location
CraftBukkit Changes:
1486c295 API to prevent PlayerBedLeaveEvent from changing a player's spawn location
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
0279d9b4 Let JavaPlugins use their own Logger implementation by overriding getLogger
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
aa81efb0 Remove some additional draft API markings
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
97368963 Update ChunkSnapshot docs about valid coordinates
CraftBukkit Changes:
3831ae62 SPIGOT-4325: Validate coordinate arguments in Chunk/ChunkSnapshot
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
CraftBukkit Changes:
a1ab86d8 SPIGOT-4321: Team#getSuffix returns the prefix
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
CraftBukkit Changes:
9636bb8d SPIGOT-4319: Conduit damage should be a block event
Also fixes some bugs in ours
Ultimately they both are near the same, but ours is behind the synchronized gate.
Mojangs is mixed behind 2 different synchronization contexts (chunks can lock 2 different objects)
Mojang also blindly unsets the ref on any chunk unload, not just if its the one being pointed to.