13
0
geforkt von Mirrors/Paper
Commit graph

2503 Commits

Autor SHA1 Nachricht Datum
Lulu13022002
64b1b0fc06 Fix NPE in SculkBloomEvent world access (#9857) 2023-10-21 22:20:24 +02:00
Brokkonaut
0049c47717 Don't check if we can see non-visible entities 2023-10-21 20:53:33 +01:00
Spottedleaf
be034cd985 Initialise default nibble arrays in ChunkAccess directly
When ChunkAccess was converted to an abstract class some versions
ago, the code to initialise nibble arrays should have been moved.
However, the code was not moved and so now mods constructing their
own implementations of ChunkAccess would not have the nibble arrays
initialised.

This is ported to Paper from Starlight to keep the code base in sync,
not because it fixes anything known.
2023-10-16 18:57:45 -07:00
Spottedleaf
b119425c8e Fix mushrooms not generating in swamps
During feature generation, light data is not initialised and
will always return 15 in Starlight. Vanilla can possibly return
0 if partially initialised, which allows some mushroom blocks to
generate.

In general, the brightness value from the light engine should not
be used until the chunk is ready. To emulate Vanilla behavior better,
we return 0 as the brightness during world gen unless the target
chunk is finished lighting.

The regular light retrieval outside of WorldGenRegion remains
the same, as behaviorally chunks not lit should be at max
skylight and zero block light.
2023-10-16 18:52:28 -07:00
Spottedleaf
b6f04d399f Remove unused skyLightSources
There is no point in initialising the sources in Starlight,
as we do not use them. Additionally, they are not saved to
disk so we do not need them.

Maintaining and initialising them is not a negligible cost,
which is why they are being removed.
2023-10-16 18:49:41 -07:00
caramel
664d59e3d7 sync netty version with vanilla (#9842) 2023-10-15 23:41:17 +09:00
caramel
ee307c382a fix recipe packet limiter (#9841) 2023-10-15 23:11:15 +09:00
Md5Lukas
6dea0a9f7c Add additional tags to ItemMeta obfuscation filtering (#9665) 2023-10-14 23:41:15 +02:00
Md5Lukas
c7a0d627ba Add BlockData setter for FallingBlock (#9829) 2023-10-14 22:46:31 +02:00
Jakub Zacek
e7c0e0e246 Replace bukkit Consumers with java consumers (#9836) 2023-10-14 22:43:32 +02:00
froobynooby
2b426027aa Don't call options events on login (#9834)
* Don't call options events on login

* Merge changes into client options API patch
2023-10-15 04:02:00 +09:30
SplotyCode
c5941e1633 Fix CraftPlayerProfile#setId regression (#9822) 2023-10-12 03:20:25 +02:00
Jake Potrebic
2e77a0596d add predicate recipe choice only for potion mixes (#9486) 2023-10-10 16:07:21 -07:00
Tamion
e47183454e Fix PlayerSwapHandItemsEvent NPE when a hand set to null (#9763)
* Fix PlayerSwapHandItemsEvent throwing exception when mainhand or offhand set to null

* use fully qualified import

* Use ItemStack#empty() instead of new ItemStack

* Add NotNull annotation to getters

* Add missing Paper comments
2023-10-11 00:38:25 +02:00
caramel
ae7dded514 Fix UnsafeValues#loadAdvancement (#9753) 2023-10-11 07:19:00 +09:00
Jake Potrebic
93647d2dd6 fix flat bedrock world config (#9728) 2023-10-10 14:43:10 -07:00
TrollyLoki
62d89ef9e4 Make setVelocity method of Fireballs change the travel direction to an arbitrary vector (#9815) 2023-10-10 17:09:45 -04:00
Xander de Keijzer
ec584ef1c3 Fix painting loosing art on face change (#9798) 2023-10-10 22:24:35 +02:00
Jake Potrebic
a404d35d91 Fixes for loot tables (#9818) 2023-10-10 10:35:49 -07:00
Spottedleaf
ad8f4803d3 Make EntityLookup#get use read lock for entity maps
On Folia, this map is modified by multiple threads and iterating
it may throw errors, for example using the /kill command or any
other command that uses an entity selector.
2023-10-09 10:02:37 -07:00
Warrior
e331557dfc Move clientBrandName over to ServerPlayer (#9809) 2023-10-08 13:07:48 +03:00
Bjarne Koll
2595ee0356 Properly check water block when random ticking ice (#9804)
Readds a lost update to the shared mutable state in the random block
ticking optimisation.
2023-10-06 22:34:00 +02:00
Nassim Jahnke
5944323d84 Fix item effects conversion if no tag is present
Fixes #9796
2023-10-05 16:03:26 +10:00
Nassim Jahnke
8ae1a1746e Fixup player profile getters and constructor to expected nullability (#9770) 2023-10-05 15:31:24 +10:00
Warrior
b0704c757b Fix mobs not spawning when using an older config (#9793) 2023-10-04 20:08:47 +03:00
Shane Freeder
13884a0748 Quick tweaks to logical flow of getMapData 2023-10-04 16:25:26 +01:00
booky10
a09f1713bf Fix entity data not updated for firework attached to entity (#9783) 2023-10-04 03:29:44 +02:00
Jake Potrebic
c4f40ca864 update configurate (#9230) 2023-10-03 18:06:23 -07:00
Nassim Jahnke
c18dea2d80 Fix tests 2023-10-04 07:58:30 +10:00
Nassim Jahnke
7d1b302774 Implement tracking range y setting 2023-10-03 22:19:39 +10:00
Nassim Jahnke
a4d2616808 Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appear 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:
09b1c123 PR-916: Add more lightning API
c085f3de PR-859: Add Entity#getTrackedBy

CraftBukkit Changes:
1bf30a4e9 SPIGOT-7495: Spawning bee entity in asynchronous BlockPopulator causes IllegalStateException - Accessing LegacyRandomSource from multiple threads
476c5bccd PR-1267: Add more lightning API
40d5e6c02 PR-1190: Add Entity#getTrackedBy
40d41acc1 SPIGOT-7491: Downgrade bundled SQLite to be updated next release
44b31da38 PR-1264: Load Bukkit class before creating Registry item
dc45a6738 SPIGOT-7496: Failure to load datapacks with multiple identical predicates
f508657d6 Fix decompile error affecting javac
ef7a4743d PR-1265: Ensure UTF-8 used in new test resource

Spigot Changes:
224dad51 Rebuild patches
2023-10-03 21:55:12 +10:00
Lulu13022002
9b7863a607 Some jd fixes (#9781) 2023-10-01 02:20:51 +02:00
Nassim Jahnke
696a5041a0 Don't throw when removing unplaced player in NearbyPlayers 2023-09-30 15:37:00 +10:00
Nassim Jahnke
933793244c [ci skip] Fix typo (important) 2023-09-29 13:20:32 +10:00
Nassim Jahnke
a5cf9bd970 Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appear 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:
044d4ee9 SPIGOT-7283, SPIGOT-7318: Add AsyncStructureGenerateEvent and BlockState cloning
57b73d57 PR-913: Deprecate Projectile#doesBounce() and #setBounce()
43373c44 PR-904: Update FeatureFlag for 1.20.2
a7bbbf0c PR-911: Expand DataPack API with 1.20.2 pack version methods
0341e3a0 SPIGOT-7489: Add TeleportDuration to Display Entity
bcd8d2aa PR-912: Update Minecraft Wiki URLs

CraftBukkit Changes:
99aafc222 Increase outdated build delay
dab849f08 SPIGOT-7283, SPIGOT-7318: Add AsyncStructureGenerateEvent and BlockState cloning
041b29ae3 Upgrade specialsource-maven-plugin
851a32cff PR-1263: Remove unused implementation of AbstractProjectile#doesBounce() and #setBounce()
251af0da3 PR-1261: Expand DataPack API with 1.20.2 pack version methods
46e4ba627 Upgrade specialsource-maven-plugin
df3738a24 SPIGOT-7489: Add TeleportDuration to Display Entity
8d0fea457 PR-1262: Update Minecraft Wiki URLs
e62905aab SPIGOT-7490: Fix entity equipment updates

Spigot Changes:
a0f3d486 Rebuild patches
2023-09-29 10:28:26 +10:00
Jake Potrebic
8e2e1e5208 Fix creating the reverse map for loot table keys (#9766) 2023-09-28 16:29:34 -07:00
Spottedleaf
d7561e90f0 Properly call overloaded super onDisconnect
Since the method is overloaded, the call to super (which is changed
to call the overloaded method) without the additional parameters
will result in recursion.
2023-09-26 13:16:21 -07:00
Spottedleaf
ec66a2c91c Fire PlayerConnectionCloseEvent for configuration packet listener
If the player moves to the configuration stage, we also need
to fire the event.
2023-09-26 09:20:17 -07:00
Spottedleaf
68e28c6750 Fix VoxelShape#isFullBlock() for non-single AABB types
The correct logic to implement NOT_SAME with Shapes#block()
is to test whether any shape data exists outside of [0.0, 1.0]
and to test whether the shape is completely filled from 0.0 to 1.0
on all axis. This can be implemented by checking whether the
bounds represent the full block and whether everything within
the bounds is filled.
2023-09-26 09:16:11 -07:00
Jake Potrebic
9c0b169922 Fix tests that broke during the junit 5 update (#9757)
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
2023-09-24 16:05:05 -07:00
Shane Freeder
3ebe415f47 Fix/update wiki (#9758) 2023-09-25 00:02:46 +01:00
Shane Freeder
1a1af91ce3 Handle new brand payload type 2023-09-24 19:48:29 +01:00
Warrior
2474c6ac97 Fix missing map initialize event call & missing map id assignment (#9756) 2023-09-24 21:17:29 +03:00
Nassim Jahnke
358877e2e2 Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appear 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:
fb23cbb3 Define surefire plugin version
d022084a Define ordering for MetadataStoreTest
99a7f6f0 PR-910: Match generic max absorption attribute name style with the rest
c7390d71 PR-909: Update tests to JUnit 5

CraftBukkit Changes:
f0661c351 PR-1230: Move unstructured PDC NBT serialisation to SNBT
452fcb599 PR-1256: Update tests to JUnit 5
2023-09-24 17:16:58 +10:00
Spottedleaf
63a40050bd Re-add remove streams for Brain AI patch 2023-09-23 23:38:51 -07:00
Spottedleaf
0ef267f0e7 Optimise nearby player retrieval
Instead of searching/testing every player online on the server,
we can instead use the nearby player tracking system to reduce
the number of tests per search.
2023-09-23 23:16:45 -07:00
Nassim Jahnke
9abaff8a66 Use correct ClientboundLevelChunkWithLightPacket constructor in later patch 2023-09-24 16:29:07 +10:00
Jake Potrebic
6c18da61ba Fix some issues 2023-09-23 22:33:17 -07:00
Spottedleaf
7834ec5bcc Fix race condition on UpgradeData.BlockFixers class init
The CHUNKY_FIXERS field is modified during the constructors
of the BlockFixers, but the code that uses CHUNKY_FIXERS does
not properly ensure that BlockFixers has been initialised before
using it, leading to a possible race condition where instances of
BlockFixers are accessed before they have initialised correctly.

We can force the class to initialise fully before accessing the
field by calling any method on the class, and for convenience
we use values().
2023-09-23 22:15:09 -07:00
Spottedleaf
0e092b4f36 Add lag compensation for breaking blocks 2023-09-23 22:10:40 -07:00
Spottedleaf
a20286c5a8 Optimise chunk tick iteration
When per-player mob spawning is enabled we do not need to randomly
shuffle the chunk list. Additionally, we can use the NearbyPlayers
class to quickly retrieve nearby players instead of possible
searching all players on the server.
2023-09-23 21:43:10 -07:00
Nassim Jahnke
0b16cce6e6 Drop no longer needed patch 2023-09-24 13:09:52 +10:00
Nassim Jahnke
886e4f56b5 Readd anti xray and oversized block entity patches 2023-09-24 12:35:16 +10:00
Noah van der Aa
0b0aa1201b Migrate paper log ips option to new server.properties option 2023-09-23 21:37:26 +02:00
Jason Penilla
72cd5b183d Add missing kick event cause 2023-09-23 08:50:32 -07:00
Lulu13022002
8560e471b8 Fix SuspiciousStewMeta 2023-09-23 16:41:51 +02:00
Lulu13022002
645afb11f7 fix test 2023-09-23 13:38:46 +02:00
Owen1212055
1b5c9db2e2 Remove Spigot Bug Fix for MC-109346 2023-09-23 01:51:40 -04:00
Owen1212055
9a66eb3eaa Support Paper ip address config + add missing logs 2023-09-23 01:50:13 -04:00
Nassim Jahnke
17f71281d2 Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appear 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:
dfe1fb48 PR-906: Add missing MinecraftExperimental annotation to Bundles
825ab30d PR-905: Add missing MapCursor.Type and update documentation
e03d10e6 PR-903: Make BARRIER Waterlogged
1961ead6 PR-898: Use Java Consumer instead of Bukkit Consumer

CraftBukkit Changes:
f71a799f0 Make BARRIER Waterlogged
172f76a45 Upgrade specialsource-maven-plugin
f0702775c SPIGOT-7486: Alternate approach to null profile names
069495671 SPIGOT-7485: Allow air entity items since required for Vanilla logic
5dfd33dc2 SPIGOT-7484: Cancelling PlayerEditBookEvent does not update client's book contents
02d490788 PR-1250: Standardize and centralize Bukkit / Minecraft registry conversion
9024a09b9 PR-1251: Use Java Consumer instead of Bukkit Consumer
6d4b25bf1 Increase diff stability
2023-09-23 12:06:03 +10:00
Nassim Jahnke
663a0d893e Readd network optimization patch 2023-09-23 11:45:34 +10:00
Spottedleaf
7a108cda40 Make sure to maintain the players sent to set for ChunkHolder
Required for proper block/light updates to clients
2023-09-22 17:07:02 -07:00
Nassim Jahnke
910c6b25b9 Fix chat processing 2023-09-23 09:58:19 +10:00
Nassim Jahnke
7e02ed1a60 Fix local attribute setting 2023-09-23 09:42:59 +10:00
Nassim Jahnke
3ecca26a7b Revert "re-add distance map patch"
This reverts commit 99baa36800.
2023-09-23 09:38:10 +10:00
Jake Potrebic
99baa36800 re-add distance map patch 2023-09-22 16:26:10 -07:00
Jake Potrebic
f6d4cdfc99 fixup display slots patch (#9746) 2023-09-22 16:07:33 -07:00
Jake Potrebic
e6ae21d0c8 Fixup advancement patch (#9745) 2023-09-22 16:03:34 -07:00
Spottedleaf
15183b44de Port patches from folia dev/optimisations 2023-09-22 15:54:36 -07:00
Spottedleaf
52a9b1c91e Fix recursion with pathfind entity event
With the function overload, need to pass the entity
through to the super call
2023-09-22 15:38:31 -07:00
Spottedleaf
1efbbb3ef9 Add some patches, fix compile 2023-09-22 15:33:14 -07:00
Spottedleaf
9bf842c13e Chunk system patch 2023-09-22 13:13:57 -07:00
Jason Penilla
05f9968013 Rebuild patches 2023-09-22 10:59:56 -07:00
Jason Penilla
845d5e7a06 Move unapplied patches so ATs import 2023-09-22 10:57:13 -07:00
MiniDigger | Martin
3f4950410d some more compile fixes 2023-09-22 19:43:52 +02:00
MiniDigger | Martin
65e89bf179 some compile fixes 2023-09-22 19:31:02 +02:00
Noah van der Aa
529b5534e7 more more more more more more more more more more more work: passing the torch 2023-09-22 17:51:48 +02:00
Lulu13022002
77719b1566 some compile issues 2023-09-22 19:25:18 +02:00
Lulu13022002
fdf4e8726b more work
all server patches done (almost)
2023-09-22 18:59:52 +02:00
Lulu13022002
0925b4af6f some work 2023-09-22 18:11:35 +02:00
Noah van der Aa
411f78293c more more more more more more more more more more more work: passing the torch 2023-09-22 17:51:48 +02:00
Noah van der Aa
9e63e24f0b more more more more more more more more more more work 2023-09-22 17:35:51 +02:00
Noah van der Aa
2b7e17a127 more more more more more more more more more work 2023-09-22 17:24:59 +02:00
Noah van der Aa
26dc16de31 more more more more more more more more work 2023-09-22 17:08:04 +02:00
Noah van der Aa
d518a2739d more more more more more more more work
can't let lynx inflate his commit count too much
2023-09-22 16:58:35 +02:00
Bjarne Koll
414d8a9efe More work work work work work work work work work 2023-09-22 16:42:56 +02:00
Bjarne Koll
d2b6bfa507 Work here, work there, work for everyone 2023-09-22 16:35:40 +02:00
Bjarne Koll
dff4f6bdd5 Working hard on messing with leafs patches 2023-09-22 16:20:09 +02:00
Bjarne Koll
7f8ad55e87 More work 2023-09-22 15:47:26 +02:00
Bjarne Koll
0c48ad35ee More work work work 2023-09-22 15:32:32 +02:00
Bjarne Koll
c3c850f4fc Fix PaperAdvancementDisplay 2023-09-22 15:19:33 +02:00
Bjarne Koll
f865f927a0 More more more (more ??) more work 2023-09-22 15:15:57 +02:00
Bjarne Koll
42b9f5a66d Port sidebar slots patch 2023-09-22 14:33:54 +02:00
Bjarne Koll
b5c4a402ee More work work work 2023-09-22 14:22:24 +02:00
Bjarne Koll
2578e385d9 Missing paper comment 2023-09-22 13:42:04 +02:00
Bjarne Koll
1d8c69ef63 Fix leave message in common packet listener 2023-09-22 13:39:00 +02:00
Noah van der Aa
eee81acfb0 more more more more more more work 2023-09-22 09:24:44 +02:00
Jake Potrebic
d851baa156 and some more 2023-09-21 22:41:27 -07:00
Jake Potrebic
96a63dfb9d almost halfway done with server patches 2023-09-21 21:40:51 -07:00
Jake Potrebic
d5469c16d1 and some more patches 2023-09-21 21:05:18 -07:00
Jake Potrebic
4c24ef27fa some more patches 2023-09-21 20:29:51 -07:00
Jake Potrebic
4e0701e69d work and compile errors 2023-09-21 19:31:59 -07:00
Jake Potrebic
aca9b5cf34 even more work 2023-09-21 19:17:21 -07:00
Jake Potrebic
0fde46537f some more work 2023-09-21 15:26:51 -07:00
Jake Potrebic
4af8929055 some work 2023-09-21 15:01:00 -07:00
Noah van der Aa
4aa42e8aea more more more more more work 2023-09-21 23:04:51 +02:00
Noah van der Aa
7b6a88056c more more more more work 2023-09-21 22:35:39 +02:00
Noah van der Aa
86931baedf more more more work 2023-09-21 22:14:58 +02:00
Noah van der Aa
233b5b5bec more more work 2023-09-21 21:54:46 +02:00
Noah van der Aa
d700351d49 more work 2023-09-21 21:00:11 +02:00
Noah van der Aa
6a5bb6ffb8 rebuild old indexes, first work 2023-09-21 19:39:51 +02:00
Noah van der Aa
524eeedaa8 So it begins... 2023-09-21 19:18:04 +02:00
Jake Potrebic
efc1f99846 Updated Upstream (Bukkit/CraftBukkit) (#9739)
Upstream has released updates that appear 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:
69c7ce23 PR-990: Use Mockito instead of InvocationHandler for test mocking
997de31d PR-893: Add a stream method to Registry to make it easier to use and to avoid unnecessary wrapping
6a8ce581 Fix malformed javadoc in previous commit
26c74f6d PR-890: Add more Sculk API (bloom, shriek, bloom event)
aa067abf PR-895: Load GameEvent and MusicInstrument from registry

CraftBukkit Changes:
78796c9de Add support for Java 21
ddc9a2dad SPIGOT-7475: Don't fire SculkBloomEvent during world generation
caee2311a PR-1245: Add a stream method to Registry to make it easier to use and to avoid unnecessary wrapping
de421cf56 PR-1242: Add more Sculk API (bloom, shriek, bloom event)
00f5a80fb PR-1252: Fix error when generating a tree in water
10219df3a PR-1248: Load GameEvent and MusicInstrument from registry
2023-09-21 09:48:55 -07:00
Lulu13022002
6cc04e3081 Add missing deprecation (#8886) 2023-09-21 10:35:38 +02:00
Jake Potrebic
1830a8e09d Add missing InventoryHolders to inventories (#7400) 2023-09-17 19:16:48 -07:00
The456
68996e7286 Fix spigot's Forced-Stats (#9663) 2023-09-17 02:27:56 +01:00
Warrior
fbd79e55e5 Fix two beacon bugs (#9675) 2023-09-17 03:36:10 +03:00
Jake Potrebic
969e0a9bb7 Fix sapling observer detection and grow event (#9654) 2023-09-16 16:53:21 -07:00
Jake Potrebic
5e0a3d7ad0 [ci skip] Add missing javadoc links (#9497) 2023-09-16 16:35:39 -07:00
Lulu13022002
4d585e0587 Fix silent equipment change for mobs (#9677)
* Fix silent equipment change for mobs

* rebased and added test to make sure all overrides are added

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-09-17 01:27:11 +02:00
SoSeDiK
2dbdaa6b88 Cleanup old async commands patch (#8895) 2023-09-17 01:54:33 +03:00
Warrior
a624543c95 Fix leashed pets teleporting to owner when loaded (#9686) 2023-09-17 01:16:44 +03:00
Warrior
e0964c727a Add DISPLAY tracking range type (#9668) 2023-09-17 01:02:58 +03:00
Warrior
a9be834ffa Fix Projectile#setOwner(null) not clearing owner (#9715)
* Fix Projectile#setOwner(null) not clearing owner

* rebased and merged into mentioned patch

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-09-17 00:37:38 +03:00
thelooter
e5e00b653b Enforce sign line nullability when setting line with Adventure Method (#9689) 2023-09-16 23:18:51 +02:00
Aeltumn
90b4e9c424 Add ItemStack#isEmpty and related methods (#9664)
* Add new patches

* Change from an EMPTY static var to a static method since ItemStack is mutable

* Properly set nullability of return value

* Move annotation changes to different patch

* Send the Kotlin code back to where it came from

* rebased

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-09-16 23:18:09 +02:00
MiniDigger | Martin
c32a202cfd Improve java version check (#9692) 2023-09-16 23:06:36 +02:00
Jake Potrebic
38704cdea7 [ci skip] Clarify where furnace-related events are called (#8753) 2023-09-16 13:55:40 -07:00
Jake Potrebic
76744c8d52 Create raw chat type as resource file instead of in source (#9226)
Sets up the ability to load new or modified resource files into Paper.

Updates paperweight to 1.5.6

This should work with all run configs, like runDev, runShadow, runReobf as well as correctly build jars for production.
2023-09-15 11:03:42 -07:00
Warrior
537ef22fbf Call BlockRedstoneEvents for lecterns (#9721) 2023-09-15 00:17:53 +03:00
leguan
9466e0d55a compression level change with config option (#9711) 2023-09-14 13:11:19 +02:00
TreemanKing
f4883a8c07 Add Barrel to LootableBlockInventory (#9687) 2023-09-14 21:04:36 +10:00
Duckulus
8eea7a4d45 Add missing Piglin Dancing API (#8894) 2023-09-14 12:54:43 +02:00
Lulu13022002
abbdae4f53 Swap some nullable annotations (#9696) 2023-09-14 12:44:12 +02:00
Warrior
11f2c20c6a Add missing particle javadocs (#9716) 2023-09-14 05:09:09 +03:00
Nassim Jahnke
1e0babdc39 Fix line of sight distance check 2023-09-12 09:56:24 +10:00
Spottedleaf
d3a6b1376a Optimise multiple block updates occurring in the same chunk
We can avoid multiple ticket additions for the same ChunkTasks
instance. This will help in situations where significant number of
block updates occur for the same chunk in the same tick, such as
water draining.
2023-09-11 07:15:18 -07:00
violetc
19a5d6d225 Fix fixItemsMergingThroughWalls check (#9707) 2023-09-11 12:46:02 +08:00
Nassim Jahnke
021d59363b Add missing slot sanity checks for container clicks 2023-09-11 12:03:35 +10:00
Nassim Jahnke
1f4c201c00 Strip raytracing for EntityLiving#hasLineOfSight
Co-authored-by: Paul Sauve <paul@technove.co>
2023-09-10 12:28:03 +10:00
Joe
68b63a9341 Copy NBT in legacy dragon fight converter 2023-09-06 18:33:31 -07:00
Joe
14f834f0a5 Copy NBT in upgrade data neighbor ticks 2023-09-06 18:30:02 -07:00
Lulu13022002
e9d300a828 Take in account waterlogged blocks for scaffolding (#9676) 2023-09-04 17:52:27 +02:00
Md5Lukas
7366520a54 Allow non-op players to execute the click event callback (#9652) 2023-08-28 13:21:13 +02:00
Noah van der Aa
a0632a8f06 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9648)
Upstream has released updates that appear 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:
6b34da8f SPIGOT-7467: Add getAddress to RemoteConsoleCommandSender

CraftBukkit Changes:
db4ba2897 SPIGOT-7467: Add getAddress to RemoteConsoleCommandSender
4f7ff4dec PR-1246: Add missing AbstractTestingBase to tests which need them
f70a7b68d SPIGOT-7465, MC-264979: Fresh installations print NoSuchFileException for server.properties
8ef7afef6 PR-1240: Call BlockGrowEvent for vines that are growing on additional sides of an existing vine block

Spigot Changes:
d2eba2c8 Rebuild patches
2023-08-28 13:05:48 +02:00
Martijn
a9122ec448 Do crystal-portal proximity check before entity lookup (#9611) 2023-08-26 22:23:31 +02:00
Lulu13022002
d0bce54059 Add sniffer egg api (#9288) 2023-08-26 22:12:46 +02:00
Jake Potrebic
7e896541bd Add titleOverride to InventoryOpenEvent (#7540) 2023-08-26 12:28:42 -07:00
Jake Potrebic
2a49ab43f6 Fix/improve destroy speed API (#9645)
further improvements could be a method that takes in an entity
to account for effects
2023-08-25 10:57:11 -07:00
Nassim Jahnke
82aefb5454 Readd old BlockDamageEvent constructor 2023-08-25 10:19:55 +10:00
Jake Potrebic
d00071451b Fix inventory desync (#9640) 2023-08-24 16:53:02 -07:00
Aeltumn
4935180134 Add OfflinePlayer#isConnected (#9642) 2023-08-24 13:44:31 +02:00
Jake Potrebic
6bc3eaa52a Fix exact choice recipe book clicks (#7822) 2023-08-23 08:20:32 -07:00
Warrior
c667df8ff5 Limit setBurnTime to valid short values (#9623) 2023-08-23 13:54:34 +03:00
Jake Potrebic
4e461ccab9 [ci skip] Refactor context records for easier expansion (#9589) 2023-08-22 20:34:57 -07:00
Martijn
86a90ebe3e Optimize nearest structure border iteration (#9638) 2023-08-23 03:53:42 +02:00
The456
24f6e17ded Expose Hand during BlockCanBuildEvent (#9636) 2023-08-23 01:41:30 +01:00
Bjarne Koll
60d2ea03ad Prevent overfilled bundles from duplicating items (#9633)
Bundles compute the amount to remove from an item based on the formula
(64 - currentWeight) / itemWeight. An overfilled bundle however, with a
currentWeight of > 64 ends up with a negative removal amount for the
item.

This can cause duplication issues on craftbukkit inventory
implementations as they do currently not gracefully handle negative
removal amounts in their remove methods.
2023-08-22 11:57:44 +02:00
Lulu13022002
a92fdba593 Allow custom damage for trident (#8132) 2023-08-22 08:20:38 +02:00
Lulu13022002
b6c058204f Fix endgateway teleportation offset (#9517) 2023-08-22 08:03:15 +02:00
Jake Potrebic
fc035b6403 Improve performance of mass crafts (#9603) 2023-08-21 22:54:28 -07:00
Rodney
73600b72b6 Add PlayerPickItemEvent (#5590) 2023-08-22 07:22:05 +02:00
SoSeDiK
7e34587a54 Properly clone custom nbt tags inside ItemMeta (#7849) 2023-08-22 07:59:31 +03:00
Jake Potrebic
c18117104b More DragonBattle API (#5655) 2023-08-21 21:08:43 -07:00
Joo200
a02a484a57 MerchantRecipe: add copy constructor (#8703) 2023-08-22 05:48:25 +02:00
aerulion
dad6cfe6c4 Expose clicked BlockFace during BlockDamageEvent (#9632) 2023-08-22 05:07:18 +02:00
SoSeDiK
1316321c7f Expand Pose API (#8781) 2023-08-22 06:05:47 +03:00
caramel
d369e65fab Fix NPE on Boat#getStatus (#9115) 2023-08-22 11:57:54 +09:00
Bjarne Koll
623478709c Remove unused lag-compensate-block-breaking option (#9635)
Removes the unused lag-compensate-block-breaking option from the paper
configuration file as the patch using it has been dropped in 1.19.
2023-08-21 14:08:25 +02:00
Corey Shupe
8aee3fc4d0 Player listing API (#8782) 2023-08-21 04:51:31 -04:00
ruViolence
79152ad03a Add entity tracker min Y distance config option (#9406) 2023-08-21 16:05:49 +08:00
Jake Potrebic
1b4291893f Improve cancelling PreCreatureSpawnEvent with per player mob spawns (#9400) 2023-08-21 00:44:47 -07:00
Yannick Lamprecht
183462c9f0 Add cancellability to PlayerTrackEntityEvent (#8605) 2023-08-21 09:38:55 +02:00
TonytheMacaroni
b0439eea91 Add Entity Coordinate and Rotation API (#9461) 2023-08-21 03:35:05 -04:00
Will FP
bd8dd4f684 Fixed CraftItemStack/CraftItemMeta enchantment level inconsistency (#8792)
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2023-08-21 08:31:52 +01:00
Trevor Bedson
d8b5390f81 Fire entity death event for ender dragon (#9495) 2023-08-21 03:06:21 -04:00
Gero
68a69e380c Fix CME in CraftPersistentDataTypeRegistry (#6701) 2023-08-21 06:50:21 +02:00
EpicPlayerA10
77c6859b66 Don't tab-complete namespaced commands if send-namespaced is false (#9366) 2023-08-21 06:50:11 +02:00
galacticwarrior9
e526eafa39 Determine lava and water fluid explosion resistance by their block explosion resistance (#9482) 2023-08-21 05:50:02 +01:00
Gameoholic
42e6758cb4 Fix rotation for spawning display entities (#9552) 2023-08-21 07:49:53 +03:00
EpicPlayerA10
e121a90eef Add option to disable chorus plant and mushroom block updates (#9442) 2023-08-21 06:49:38 +02:00
Md5Lukas
a2846ba80b Fix Inventory#getLocation not working for the composter (#9596) 2023-08-21 06:49:29 +02:00
Jake Potrebic
7e6bdb92a4 Properly handle BlockBreakEvent#isDropItems (#8936)
Setting whether a block break dropped items controlled
far more than just whether blocks dropped, like stat increases
food consumption, turtle egg count decreases, ice to water
conversions and beehive releases
2023-08-20 20:49:20 -07:00
Jake Potrebic
06ee045ab9 Deprecate and replace methods using deprecated StructureType (#8643) 2023-08-20 10:30:45 -07:00
Jake Potrebic
975d0562a7 API for an entity's scoreboard name (#9462)
Was obtainable through different methods, but you had to use different
methods depending on the implementation of Entity you were working with.
2023-08-20 09:06:09 -07:00
Nassim Jahnke
564ba7b184 Fix unknown entity interaction clicked position getter if null 2023-08-19 12:01:06 +10:00
Martijn
a925383693 Count down radius-aware dependency tree node parents (#9600) 2023-08-18 04:02:20 +02:00
Jamie
95371f3cdf Delete patch to fix PaperMC/Paper#9612 (#9621) 2023-08-17 21:51:34 +01:00
Nassim Jahnke
84993c1413 Add clicked position to PlayerUseUnknownEntityEvent (#9604) 2023-08-16 17:58:07 +10:00
Bjarne Koll
f5719c0b4a Don't let player loot if reloot time is disabled (#9615)
If the reloot time is disabled while reloot is restricted, the player
should not be able to reloot. The previous logic was incorrect and
allowed players to reloot explicitly when the reloot time was disabled.
2023-08-16 06:08:00 +02:00
Warrior
49502449bb Fix main thread priority being lowered (#9488) 2023-08-15 19:37:17 +02:00
Jake Potrebic
975444e5d2 Updated Upstream (CraftBukkit/Spigot) (#9598)
Upstream has released updates that appear 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:
b76ceb4f5 PR-1235: Move EntityType return to base Entity class
e795d7490 SPIGOT-7458: Exception when Entity CommandSender executes Vanilla command
46c7fc3b1 SPIGOT-7452: Player#openSign cannot edit
d91e5aa0b SPIGOT-7447: Rewrite --forceUpgrade to minimise diff and properly handle CraftBukkit world layout
921ae06d6 Revert "SPIGOT-7447: Fix --forceUpgrade"

Spigot Changes:
94e187b5 Rebuild patches
3bce7935 SPIGOT-7091: Update bungeecord-chat
2023-08-13 16:32:51 -07:00
Jake Potrebic
224e38a0f6 Account for dimension type in portal void damage check (#9602) 2023-08-13 13:30:48 -07:00
Warrior
93f4d6f535 Fix DEFAULT getEntitySpawnReason for /summon (#9480) 2023-08-13 01:57:13 +02:00
Nacioszeczek
203115c88f SculkCatalyst bloom API (#9466) 2023-08-13 01:31:32 +02:00
Jake Potrebic
2e3118d02a Bandaid fix for Effect (#9548)
Effect or LevelEvent needs to be replaced
but ideally after the enum PR has been merged
upstream. Until then, this test and these fixes
should address all the known issues with them
2023-08-12 15:19:34 -07:00
Noah van der Aa
d96d1cb7dd Fix custom statistic criteria creation (#9595) 2023-08-12 23:50:21 +02:00
Jake Potrebic
3d0d1cb6ae Add restrict-player-reloot-time config (#7652) 2023-08-12 14:26:47 -07:00
montlikadani
4e4417723a Fix players are invisible after using setPlayerProfile (#9143)
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2023-08-12 16:10:09 +02:00
Warrior
b45d8b401b Cache map ids on item frames (#9584) 2023-08-12 15:33:24 +02:00
Warrior
cf16a1eeb4 Make the cursor limit option apply to banners (#9554) 2023-08-10 15:22:40 +02:00
Spottedleaf
7843c4c1f1 Remove UpgradeData neighbour ticks outside of range
The lists are only supposed to contain ticks for the 1 radius
neighbours of the chunk.
2023-08-09 14:05:57 -07:00
Florian Schmidt
c8a5db2f15 Use correct seed on api world load (#9541) 2023-08-09 01:35:15 +02:00
Warrior
31138ad3fc Fix wild wolves not considering bones interesting (#9579) 2023-08-09 01:15:01 +02:00
Jake Potrebic
99edfc5832 Respect randomizeData on more entities when spawning (#9483) 2023-08-08 16:07:59 -07:00
Warrior
2973f71a46 Use correct source for mushroom block spread event (#9587) 2023-08-09 00:51:58 +02:00
Nassim Jahnke
c0bced1fa1 Don't put entities removed during the portal exit event into an invalid state 2023-08-08 17:48:55 +10:00
Nassim Jahnke
75a9ce0e01 Clone location in PlayerFailMoveEvent getters 2023-08-08 13:00:17 +10:00
Moulberry
0832032f2e Add and implement PlayerFailMoveEvent (#9535) 2023-08-08 10:51:09 +08:00
Jake Potrebic
7e8b2f31b7 Only capture actual tree growth (#6464) 2023-08-05 19:33:18 -07:00
Phillipp Glanz
837b14b9c8 Add clickable version on version command (#9347)
Co-authored-by: Yannick Lamprecht <1420893+yannicklamprecht@users.noreply.github.com>
2023-08-06 03:26:13 +02:00
Jake Potrebic
500d964dda API for updating recipes on clients (#6463) 2023-08-05 18:11:22 -07:00
Bjarne Koll
f9c9ac2e65 Only erase allay memory on non-item targets (#9570)
* Only erase allay memory on non-item targets

Spigot incorrectly instanceOf checks the EntityTargetEvent#getTarget
against the internal ItemEntity type and removes the nearest wanted item
memory if said instanceOf check fails, (which is always the case)
causing allays to behave differently as they constantly loose their
target item.

This commit fixes the faulty behaviour by instance performing a check
against the CraftItem type.

* Reduce diff

* fix typo

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-08-06 02:31:10 +02:00
Jake Potrebic
732f98a4bf Updated Upstream (Bukkit/CraftBukkit) (#9485)
Upstream has released updates that appear 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:
82af5dc6 SPIGOT-7396: Add PlayerSignOpenEvent
3f0281ca SPIGOT-7063, PR-763: Add DragonBattle#initiateRespawn with custom EnderCrystals
f83c8df4 PR-873: Add PlayerRecipeBookClickEvent
14560d39 SPIGOT-7435: Add TeleportCause#EXIT_BED
2cc6db92 SPIGOT-7422, PR-887: Add API to set sherds on decorated pots
36022f02 PR-883: Add ItemFactory#getSpawnEgg
12eb5c46 PR-881: Update Scoreboard Javadocs, remove explicit exception throwing
f6d8d44a PR-882: Add modern time API methods to ban API
21a7b710 Upgrade some Maven plugins to reduce warnings
11fd1225 PR-886: Deprecate the SmithingRecipe constructor as it now does nothing
dbd1761d SPIGOT-7406: Improve documentation for getDragonBattle

CraftBukkit Changes:
d548daac2 SPIGOT-7446: BlockState#update not updating a spawner's type to null
70e0bc050 SPIGOT-7447: Fix --forceUpgrade
6752f1d63 SPIGOT-7396: Add PlayerSignOpenEvent
847b4cad5 SPIGOT-7063, PR-1071: Add DragonBattle#initiateRespawn with custom EnderCrystals
c335a555f PR-1212: Add PlayerRecipeBookClickEvent
4be756ecb SPIGOT-7445: Fix opening smithing inventory
db70bd6ed SPIGOT-7441: Fix issue placing certain items in creative/op
f7fa6d993 SPIGOT-7435: Add TeleportCause#EXIT_BED
b435e8e8d SPIGOT-7349: Player#setDisplayName not working when message/format unmodified
a2fafdd1d PR-1232: Re-add fix for player rotation
7cf863de1 PR-1233: Remove some old MC bug fixes now fixed in vanilla
08ec344ad Fix ChunkGenerator#generateCaves never being called
5daeb502a SPIGOT-7422, PR-1228: Add API to set sherds on decorated pots
52faa6b32 PR-1224: Add ItemFactory#getSpawnEgg
01cae71b7 SPIGOT-7429: Fix LEFT_CLICK_AIR not working for passable entities and spectators
a94277a18 PR-1223: Remove non-existent scoreboard display name/prefix/suffix limits
36b107660 PR-1225: Add modern time API methods to ban API
59ead25bc Upgrade some Maven plugins to reduce warnings
202fc5c4e Increase outdated build delay
ce545de57 SPIGOT-7398: TextDisplay#setInterpolationDuration incorrectly updates the line width

Spigot Changes:
b41c46db Rebuild patches
3374045a SPIGOT-7431: Fix EntityMountEvent returning opposite entities
0ca4eb66 Rebuild patches
2023-08-05 17:21:59 -07:00
Gameoholic
ee0482a614 [ci skip] Fix inventorycloseevent javadocs (#9533)
* Add InventoryCloseEvent safety doc comment, similar to InventoryClickEvent

* Fix inventorycloseevent javadocs

* Fix InventoryCloseEvent and InventoryClickEvent javadocs

* remove extra +

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-08-05 22:58:38 +03:00
Jake Potrebic
780477bca5 Expand use of strict advancement dim check (#9545) 2023-08-05 12:26:28 -07:00
Emily
a6445d743a Bump net.kyori:ansi to 1.0.3 (#9575) 2023-08-04 18:54:25 -03:00
Jake Potrebic
94106a38f5 Fix treasure map config default (#9572) 2023-08-04 08:52:22 -07:00
Emilia Kond
0c4d1ba273 Bump net.kyori.ansi to 1.0.2 (#9546) 2023-07-29 05:59:46 +03:00
Jake Potrebic
3089a6afe9 [ci skip] Clarify viewers set mutability in chat events (#9525) 2023-07-28 15:14:19 -07:00
Jake Potrebic
1f967356b8 Add Translatable interface to MusicInstrument (#9538) 2023-07-28 15:06:27 -07:00
Jake Potrebic
cbfc2065f5 Add cause to PlayerOpenSignEvent (#9441)
Also fire the event for plugin-opened signs
2023-07-26 09:25:14 -07:00
Spottedleaf
aa3e3b9b14 Prevent entity removals if the entity slices is receiving status updates
If an entity is removed while updating an entity slice, then the
iteration over the entity slice's entities could throw a cryptic
exception. Instead, it is better to prevent the entity removal
with a useful log message.

Fixes https://github.com/PaperMC/Paper/issues/9464
2023-07-25 07:11:58 -07:00
Owen1212055
a0f1649d04 Remove isRemoved skip on .discard() (#9520) 2023-07-24 05:04:40 -04:00
powercas_gamer
587085e41a feat: add minimessage tag resolvers overload to CommandSender#sendMessage (#9505) 2023-07-23 07:46:40 +02:00
Sage
a218498234 Add player whitelist events (#9209) 2023-07-23 06:38:53 +02:00
JLitewski
cf0ade3ba3 Rewrote Amethyst logic to throw both BlockGrowEvent and BlockSpreadEvent (#9217)
With this patch, it is now possible to further control what plugins can do with Amethyst Blocks.
You can prevent Budding Amethyst blocks from creating shards with the BlockSreadEvent, and
when shards grow, it can be prevented with BlockGrowEvent
2023-07-22 23:54:02 -04:00
Jake Potrebic
1a750538c3 Don't support hex in book title and author (#9493) 2023-07-22 20:40:52 -07:00
Astralchroma
e5b7dd2906 Configurable Region Compression Format (#8505) 2023-07-23 01:13:48 +01:00
Owen1212055
e1adb82073 Remove sign ticking (#9478)
Minecraft now ticks signs in order to validate the playerWhoMayEdit field. This is a horrible idea, as this means that even waxed signs are ticked for essentially no reason. This moves the logic lazily onto the getter.
2023-07-22 17:00:50 -04:00
Jake Potrebic
299347e31d Fix hopper not marking source inv as changed (#9070) 2023-07-22 13:48:23 -07:00
Golfing7
5886ca41ac Make ExperienceOrb entities call EntitySpawnEvent (#9197) 2023-07-22 16:19:50 -04:00
Roman Alexander
502e9950bf Pathfinder hasPath should check if path is done. (#9231) 2023-07-23 03:04:19 +07:00
Infynyty
2eb935ac55 Mark Player.sendSignChange as deprecated (#9382) 2023-07-22 21:38:40 +02:00
Jake Potrebic
4b09cd7db0 Fix unbreakable flint and steel consumed when igniting creepers (#9509) 2023-07-19 09:16:39 -07:00
Bjarne Koll
3eab463a68 [ci skip] Fix incorrect javadoc in JarLibrary (#9513) 2023-07-19 13:51:58 +02:00
Moulberry
a4dac24ba0 Allow LEFT_CLICK_AIR in 3.0->4.5 range of entity (#9211) 2023-07-16 23:58:25 +08:00
Jake Potrebic
a31e288c20 fix 2 vanilla issues (#8940)
Fix sheeps eating grass outside ticking chunks
Fix itemframe drops dropping in correct location

Co-authored-by: BillyGalbreath <blake.galbreath@gmail.com>
2023-07-15 13:28:28 -07:00
Jason Penilla
b2a5d27433 Add back accidentally dropped Wandering Trader patch (#9492) 2023-07-14 16:23:33 -07:00
Jake Potrebic
d606a559a4 Fix possible NPE on painting creation (#9391) 2023-07-13 17:22:15 -07:00
Jake Potrebic
3114e253ce Fix BanList API (#9450) 2023-07-13 14:43:45 -07:00
Jake Potrebic
5be287d725 Add Owner UUID api for AreaEffectCloud (#9364) 2023-07-13 14:26:42 -07:00
Owen1212055
eb5257d3a5 Suppress Item Meta Validation Checks (#9331)
Stops item meta from aggressively throwing exceptions.
2023-07-13 16:59:49 -04:00
Jake Potrebic
7afebb7fb6 Fix missing item types in SlotType for armor change event (#9379)
Also added 2 parameterized tests to make sure this doesn't happen
again.
2023-07-13 13:09:26 -07:00
Owen1212055
16f29bd54a Fix missing item interaction cancelling case (#9427)
Properly cancels brushes now
2023-07-13 15:48:46 -04:00
Lulu13022002
6667ae5ce2 Prevent desync for poi and pistons (#9270) 2023-07-13 21:22:05 +02:00
Jake Potrebic
f78ebb6629 Fix mob breaking doors not spawning particles (#9443)
This is a vanilla issue reported as MC-263999
2023-07-13 12:11:27 -07:00
Pedro
a0765eb7df Handle block state in EntityDamageByBlockEvent (#9396) 2023-07-12 15:12:12 -04:00
Jake Potrebic
8e59366f59 fix item meta for tadpole buckets (#9473) 2023-07-11 11:52:11 -07:00
chickeneer
801b2380f5 Add deprecations to SignSide string methods (#9467) 2023-07-11 11:58:08 -05:00
Warrior
2498b9ec82 Array backed synched entity data (#9460) 2023-07-10 15:27:50 +02:00
Jake Potrebic
5004933f0d Add Sign#getInteractableSideFor (#9388) 2023-07-08 02:04:19 -07:00
Jake Potrebic
c06ad72e31 Fix incorrect new blockdata in EntityChangeBlockEvent (#9445)
Also fixes EntityBreakDoorEvent not having the correct 'to' block data

Also standardizes how to handle EntityChangeBlockEvent before a removeBlock or destroyBlock
call. Always use 'state.getFluidState().createLegacyBlock()' to get the new state instead of
just using the 'air' state.
2023-07-07 10:25:36 -07:00
Jake Potrebic
a7bb0d20d4 [ci skip] Use Nullable annotation for Entity source (#9435) 2023-07-06 20:38:46 -07:00
Spottedleaf
40e354e38e Optimize player lookups for beacons
For larger ranges, it's better to iterate over the player list
than the entity slices.
2023-07-06 20:18:33 -07:00
Shane Freeder
3b3cf7f532 Don't allow for supporting block checks to load chunks
I cannot test this due to lack of hardware (took 30 minutes getting paper
updated and loaded into IJ on this machine...), however, this is the easiest
patch for now. Ideally, some form of distance check would probably be added to
improve invalidation of this cache.
2023-07-05 23:13:30 +01:00
Lulu13022002
493852bbd1 Fix ThrownEggHatchEvent#setHatching (#9448) 2023-07-05 09:46:12 +02:00
Nassim Jahnke
c32c74f4ce Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9440)
Upstream has released updates that appear 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:
01aa02eb PR-858: Add LivingEntity#playHurtAnimation()
9421320f PR-884: Refinements to new ban API for improved compatibility and correctness
37a60b45 SPIGOT-6455, SPIGOT-7030, PR-750: Improve ban API
4eeb174b All smithing inventories are now the new smithing inventory
f2bb168e PR-880: Add methods to get/set FallingBlock CancelDrop
e7a807fa PR-879: Add Player#sendHealthUpdate()
692b8e96 SPIGOT-7370: Remove float value conversion in plugin.yml
2d033390 SPIGOT-7403: Add direct API for waxed signs
16a08373 PR-876: Add missing Raider API and 'no action ticks'

CraftBukkit Changes:
b60a95c8c PR-1189: Add LivingEntity#playHurtAnimation()
95c335c63 PR-1226: Fix VehicleEnterEvent not being called for certain entities
0a0fc3bee PR-1227: Refinements to new ban API for improved compatibility and correctness
0d0b1e5dc Revert bad change to PathfinderGoalSit causing all cats to sit
648196070 SPIGOT-6455, SPIGOT-7030, PR-1054: Improve ban API
31fe848d6 All smithing inventories are now the new smithing inventory
9a919a143 SPIGOT-7416: SmithItemEvent not firing in Smithing Table
9f64f0d22 PR-1221: Add methods to get/set FallingBlock CancelDrop
3be9ac171 PR-1220: Add Player#sendHealthUpdate()
c1279f775 PR-1209: Clean up various patches
c432e4397 Fix Raider#setCelebrating() implementation
504d96665 SPIGOT-7403: Add direct API for waxed signs
c68c1f1b3 PR-1216: Add missing Raider API and 'no action ticks'
85b89c3dd Increase outdated build delay

Spigot Changes:
9ebce8af Rebuild patches
64b565e6 Rebuild patches
2023-07-04 10:22:56 +02:00
Lulu13022002
1dec9836ed Call missing BlockDispenseEvents (#8518)
* Call missing BlockDispenseEvent

* Avoid duplicate event

* Show a single item for event

* Move glowstone refill event

* rebased

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-07-03 01:12:07 +02:00
Jason Penilla
772363fc92 Move Log4j plugins to own source set (#9428) 2023-07-01 22:00:46 -07:00
Jake Potrebic
7a776d1395 Fix default permission for xp command (#9419) 2023-06-30 15:02:25 -07:00
Boy0000
9628b9384b Add option to disable NoteBlock and Tripwire updates (#9368) 2023-06-30 16:11:52 +02:00
Nassim Jahnke
3e7890be06 Hotfix double entity removal making entity scheduler retire call
The assumption that the setRemoved method will never be called more than once is flawed, considering even vanilla code seems to indicate it might happen. Especially with plugins, throwing an exception is not something reasonably maintainable across all the places it *could* happen.
If it is called a second time after already having been removed due to changing dimensions, that's definitely bad, so no extra check for that
Fixes #9420
2023-06-29 17:41:32 +02:00
Jake Potrebic
6671a56ff8 Improve command function perm level checks (#9411) 2023-06-28 23:18:28 -07:00
Jake Potrebic
c163c4b6a9 Fix replenishable container entities save/load existing contents (#9417) 2023-06-28 11:06:47 -07:00
Jake Potrebic
ab8df6ba8a Fix entity selectors while spectating (#9402) 2023-06-27 14:46:27 -07:00
Jake Potrebic
4f0fa96a00 Deprecate duplicate chat completion methods (#9401) 2023-06-27 01:18:59 -07:00
Lulu13022002
94fbc95d13 Avoid duplicate death event call for armorstands (#9223)
* Avoid duplicate death event call for armorstands

* restore vanilla behavior (emit the game event etc...)
2023-06-27 06:22:49 +02:00
Redned
609047b836 Only tick item frames if players can see it (#9377)
In the event that an item frame cannot be seen by any players, ticking the item frame every tick is unnecessary. This can be a very hot section of the entity tracker when lots of item frames are present on a server, so this reduces the logic which speeds it up.
2023-06-26 18:26:29 -05:00
Bit
18fa5eef34 Add event for player editing sign (#9300)
Addresses https://github.com/PaperMC/Paper/issues/9293
2023-06-26 18:35:32 -04:00
Nassim Jahnke
279c17fcdf Iterate over entity array copy for entity scheduler 2023-06-26 18:41:08 +02:00
powercas_gamer
9696b46122 Fix ugly java logger format for paper plugin dependency loader (#9395) 2023-06-25 09:57:45 +02:00
Owen1212055
ec0be3fbf2 Fix cycle on paper plugin toString (#9392) 2023-06-24 17:37:38 -04:00
Owen1212055
08197c3a58 Fix interact event call override (#9387) 2023-06-23 12:03:43 -04:00
Molean
1ef0244836 Fix incorrect phantom spawning entity (#9385) 2023-06-23 18:50:29 +08:00
Samir
97487ac8bb ratelimited packet is logged to console on kick (#9292) 2023-06-21 09:36:14 -04:00
Redned
03bf77cebd Fix incorrect crafting result amount for fireworks (#9322)
Although vanilla does not specifically call this method anywhere, this fixes a bug where the result using the Bukkit API returns the wrong amount.
2023-06-21 08:11:50 -05:00
Owen1212055
6a733d70c1 Properly Cancel Usable Items (#9225)
This fixes the bug causing canceling PlayerInteractEvent to cause items to continue to be used despite being canceled on the server.

For example, items being consumed but never finishing, shields being put up, etc.
The underlying issue of this is that the client modifies their synced data values, and so we have to (forcibly) resend
them in order for the client to reset their using item state.
2023-06-18 18:33:15 -04:00
Nassim Jahnke
135469a842 Pull Folia API take two 2023-06-18 22:46:52 +02:00
Nassim Jahnke
8686a939f1 Revert "Move some Folia API to Paper for easy compat (#9360)"
This reverts commit e256eec4ef.
2023-06-18 21:47:17 +02:00
Nassim Jahnke
e256eec4ef Move some Folia API to Paper for easy compat (#9360) 2023-06-18 20:02:59 +02:00
Shane Freeder
7727050285 Temp: Pre-init PlayerChunkLoaderData in order to prepopulate the BFS lookup cache because potatos (Closes #9338) 2023-06-18 13:49:22 +01:00
Nassim Jahnke
fb00916689 Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appear 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:
0c5d8709 SPIGOT-7400: Downgrade maven-resolver due to issues resolving certain depends
255c4fdb SPIGOT-7380: Add PlayerInteractEvent#getClickedPosition and ChiseledBookshelf#getSlot

CraftBukkit Changes:
b6b514b7e SPIGOT-7400: Downgrade maven-resolver due to issues resolving certain depends
fcff84de9 SPIGOT-7399: Revert null check in CraftMetaItem#safelyAdd
44a4b5649 SPIGOT-7380: Add PlayerInteractEvent#getClickedPosition and ChiseledBookshelf#getSlot
676969d01 SPIGOT-7389: Handle setting null items in ChiseledBookshelf Inventory
2023-06-18 13:03:18 +02:00
Jake Potrebic
fb0fd871fe Add method to remove all active potion effects (#9361)
* Add method to remove all active potion effects

* use clear instead of removeAll
2023-06-17 21:10:13 -07:00
Riley Park
efe626d498 Disable BukkitMirrorTest 2023-06-17 14:20:46 -07:00
Jake Potrebic
c975c477f7 Add trail ruins structure set seed in spigot config (#9327)
Also adds a server test to ensure the defaults match and that a seed
exists for each structure set
2023-06-17 12:12:23 -07:00
Jake Potrebic
aa6d576fe0 Add method to get ungenerated chunk from long key (#9254)
Also added a missing deprecation for a location block key method
2023-06-17 11:43:08 -07:00
Jake Potrebic
d555760ff6 Remove more outdated config settings (#9358) 2023-06-17 11:25:22 -07:00
Jake Potrebic
06ee6ab5d4 Remove stacktrace on exception from reading server.properties (#9296) 2023-06-16 19:27:45 -07:00
Spottedleaf
c0d376e242 Copy itemstack when sanitizing for datawatcher items
Since the packet is broadcasted for players, it means that
the packet will be sent to multiple players. In this case,
modifying the data results in a possible race condition
where a CME may occur as the packet will be serialized on
many different netty IO threads.
2023-06-16 10:27:59 -07:00
Spottedleaf
cffc14631b Make sure to post process chunks before they are sent to players
Some TEs need to be post processed after generation to be sent
properly (chests)
2023-06-16 10:24:51 -07:00
Spottedleaf
3cfd74da9e Fix IntegerUtil#getDivisorNumbers
Use unsigned mod operation for initialization of anc

Also includes
- 5a0cefb45e
- acc8ed9634
2023-06-16 09:05:36 -07:00
powercas_gamer
2d788fba60 chore(api): add missing javadoc urls (#9355) 2023-06-16 17:34:49 +02:00
Ollie
f352774eef Update the server logo (#9264)
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2023-06-16 16:20:31 +01:00
Lulu13022002
0f4cd873af Fix sniffer removeExploredLocation and javadoc (#9311) 2023-06-16 15:33:25 +02:00
Nassim Jahnke
f0e193c3d1 Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appear 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:
be1f3344 SPIGOT-7326: Add ClickType#isMouseClick()

CraftBukkit Changes:
3b557627c Fix Player#setScoreboard() checking incorrect state
9a21b0b89 SPIGOT-7393: Fix new tile entities not loading Bukkit's PersistentDataContainer

Spigot Changes:
c62f4bd9 Rebuild patches
2023-06-16 13:32:29 +02:00
Phillipp Glanz
4de304b9eb Don't enforce icanhasbukkit default if alias block exists (#9334) 2023-06-16 13:02:43 +02:00
Jake Potrebic
26d93fcec4 Fix incorrect annotation on BrushableBlock#getItem (#9345) 2023-06-16 03:58:09 -07:00
Jake Potrebic
557ea82bf6 Updated Upstream (Bukkit/CraftBukkit) (#9342)
Upstream has released updates that appear 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:
fdff0cd4 PR-869: Add Enderman#teleport and Enderman#teleportTowards
dfd86ee7 Improve sendSignChange and related documentation
beced2b2 PR-867: Add Player#sendBlockUpdate to send tile entity updates

CraftBukkit Changes:
ad6d0cffb SPIGOT-7394: Fix another issue with sendSignChange
66c5ce4c7 SPIGOT-7391: Preserve vanilla sign json where not modified by event
ae3824f94 PR-1204: Add Enderman#teleport and Enderman#teleportTowards
5863a2eae Fix sendSignChange not working
4a7eadc97 PR-1201: Add Player#sendBlockUpdate to send tile entity updates
789324e30 Work around issue placing decorated pots
2023-06-16 03:28:31 -07:00
Jason Penilla
3477dbf4aa Use ANSI serializer for console completion descriptions (#9351) 2023-06-15 10:11:09 -07:00
Jake Potrebic
8d5fa4f1ee Bump kyori's ansi to fix color bleed (#9346) 2023-06-15 09:24:01 -07:00
Jake Potrebic
56e39bc072 Re-add dropped patch during 1.20 update (#9344) 2023-06-14 17:52:28 -07:00
Bjarne Koll
529fb86efd Call BlockEntity#load in new child types (#9340)
BlockEntity#load is responsible for loading the pdc data for block
entities. Some of the new block entities added by mojang do not call
their super method, preventing paper from loading the PDC, which
leads to a loss of data.

This commit adds the super calls to prevent this.
2023-06-14 13:06:50 +02:00
powercas_gamer
01297f5079 [ci skip] mention adventure in chatcolor deprecation message (#9336)
* mention adventure in chatcolor deprecation message

* expand text

* americans
2023-06-14 05:48:41 +02:00
Jason Penilla
b40a6bb08b 1.20.1 (#9333) 2023-06-13 00:10:07 -07:00
Jake Potrebic
aa5e9d1d49 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9301) 2023-06-12 16:51:45 -07:00
Jason Penilla
b835c02322 Fix dev bundle generation 2023-06-12 16:44:07 -07:00
Emilia Kond
6925d11945 Use net.kyori.ansi for console logging (#9313)
Uses the new ANSIComponentSerializer introduced in Adventure 4.14.0 to
serialize components when logging them via the ComponentLogger, or when
sending messages to the console.

This replaces the old solution which uses legacy jank and custom color
conversions, with a new library that handles the conversion and config
2023-06-13 01:00:12 +03:00
Bjarne Koll
bc6e534738 Implement BossBarViewer on Player (#9332)
* Implement BossBarViewer on Player

Author: Riley Park <rileysebastianpark@gmail.com>

* Implement BossBar#viewers
2023-06-12 23:43:39 +02:00
Jake Potrebic
8df3a11758 fix incorrectly updated move vector checking patch (#9328) 2023-06-12 11:26:43 -07:00
Jake Potrebic
a7397ad665 Fix SmithingInventory helper slot methods for 1.20 (#9325) 2023-06-12 10:04:53 -07:00
Lulu13022002
04928c58a4 Fix EntityDeathEvent cancellation (#9323) 2023-06-12 19:03:51 +02:00
Bjarne Koll
1fcfe34f7f Fix sendSignChange0's usage of SignText (#9310) 2023-06-11 22:53:28 +02:00
Jake Potrebic
4e7f46f6c3 correctly hide players from entity argument suggestions (#9245) 2023-06-10 18:15:43 -07:00
Lulu13022002
8ee3c344d4 Add back the source uuid on exp orb for animals breeding (#9289) 2023-06-11 03:01:10 +02:00
Spottedleaf
f85410d12b Fix incorrect collision shape for hopper item suck
It shouldn't cost too much more to check the correct shape,
provided that it is cached and we use the overall AABB
to collect possible entities to check against.

The issues with the old check code is that it will use two
getEntitiesOfClass calls plus the addition of streams
_and_ the toAabbs() logic on VoxelShape. The new code
caches toAabbs, uses one getEntitiesOfClass call, and
does not use streams. Then compared to 1.12, we are
only performing two additional AABB checks per item.
2023-06-10 13:42:03 -07:00
Spottedleaf
3fe23c1679 Allow double removal from player chunk loader
Unlike Folia, players may be incorrectly be double-removed

Fixes https://github.com/PaperMC/Paper/issues/9299
2023-06-10 08:27:23 -07:00
Owen1212055
eb317edc8a Don't use event to get block position (#9295) 2023-06-10 02:13:42 -04:00
Jake Potrebic
120345dea6 Properly remove the experimental smithing inventory type (#9290) 2023-06-09 11:50:00 -07:00
Jake Potrebic
fd6fd80508 Add API for waxed signs (#9291) 2023-06-09 11:32:20 -07:00
Lulu13022002
8405a53d88 Add pitcher plant api (#9286) 2023-06-09 14:23:38 +02:00
Bjarne Koll
3553730d51 Minimise EntityFertilizeEggEvent and add sniffer (#9280) 2023-06-09 09:01:08 +02:00
Jake Potrebic
0bd83b4c4d fix missing trigger entity for xp orb from breeding 2023-06-08 23:52:18 -07:00
Jake Potrebic
6dfe9ac1d8 add side to PlayerSignCommandPreprocessEvent 2023-06-08 22:57:24 -07:00
Jake Potrebic
e450f54015 fix some more 1.20 tracking issues 2023-06-08 22:45:45 -07:00
Jake Potrebic
6cc19431ea Fix setListenerRange for calibrated sculk sensors 2023-06-08 22:35:52 -07:00
Jason Penilla
e6be773522 Prevent the rcon thread from attempting connections after shutdown 2023-06-08 22:25:23 -07:00
Jake Potrebic
b3a92319b9 Ignore inline definitions of trim material & pattern 2023-06-08 21:53:37 -07:00
Jake Potrebic
6161cbb44c Add back Anti-Xray patch (#9283) 2023-06-08 21:29:58 -07:00
Owen1212055
d943e42150 Fix javadoc 2023-06-08 22:53:42 -04:00
Owen1212055
77e3d3e158 Finish tests & bad calls 2023-06-08 22:51:31 -04:00
Jake Potrebic
350be363a0 fix not editable sign after openSign 2023-06-08 19:45:48 -07:00
Owen1212055
fed16ccbff Move block farther away for Player#setRotation (#8514) 2023-06-08 22:37:59 -04:00
Lulu13022002
c67f26d42a Fix collision between AABB and a dot (#8733) 2023-06-09 04:17:32 +02:00
Lulu13022002
ae7ed5a3b3 Avoid duplicate poi entries from the first section (#9235) 2023-06-09 04:14:30 +02:00
Spottedleaf
65db359354 Fix crash relating to "Already sent chunk"
Forgot to update the distandce field in the single user area map
on update, and additionally used the wrong radius (introduced
last commit) for the broadcast map
2023-06-08 18:00:46 -07:00
Spottedleaf
8c4fdb4e79 Fix inconsistent chunk sending with vanilla
Vanilla now loads the proper number of chunks for sending
to players. So, we can finally match their behavior after
all these years.
2023-06-08 17:43:05 -07:00
Jake Potrebic
913720b65c add missing call to EntityInsideBlockEvent 2023-06-08 17:34:35 -07:00
Jake Potrebic
a4e62bcb6e fix some failing tests 2023-06-08 17:25:21 -07:00
Owen1212055
6ee3455f40 Fix breaking pots throwing exception 2023-06-08 20:24:02 -04:00
Jason Penilla
3913e1d74b Update adventure 2023-06-08 17:22:51 -07:00
Jake Potrebic
6038cfb862 add missing block entity type to CraftBlockStates 2023-06-08 17:04:46 -07:00
Jake Potrebic
2a0a2d181f fix sculk npe 2023-06-08 16:56:02 -07:00
Spottedleaf
20f6705a20 Updated Upstream (CraftBukkit/Spigot)
Upstream has released updates that appear 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:
fd92f1e65 SPIGOT-7378: Add BlockDropItemEvent for Suspicious Sand & Gravel drops
cb1b69d13 SPIGOT-7377: Server sends player list twice

Spigot Changes:
16cfc987 Rebuild patches
2023-06-08 16:47:58 -07:00
Spottedleaf
5c8d49542f Fix boot errors
Thanks kennytv
2023-06-08 16:44:17 -07:00
Spottedleaf
c7006765bd Fix final compilation issues 2023-06-08 16:35:02 -07:00
Spottedleaf
494b03ea47 Apply last patch 2023-06-08 16:21:20 -07:00
Spottedleaf
cadfd892c9 Add in some patches 2023-06-08 16:12:34 -07:00
Spottedleaf
e031042af5 Finish updating chunk system patch
Add in locking changes from folia, plus fix some diffs.
I'm sure it'll be error-free.
2023-06-08 16:04:53 -07:00
Jake Potrebic
dc11e08746 more compile fixes 2023-06-08 14:13:43 -07:00