Commit Graph

2266 Commits

Author SHA1 Message Date
Aeltumn
deb92c2129
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 14:18:09 -07:00
MiniDigger | Martin
83cfeb1b37
Improve java version check (#9692) 2023-09-16 23:06:36 +02:00
Jake Potrebic
99b311de54
[ci skip] Clarify where furnace-related events are called (#8753) 2023-09-16 13:55:40 -07:00
Jake Potrebic
eb60bffa98
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
29d1c7b602
Call BlockRedstoneEvents for lecterns (#9721) 2023-09-14 23:17:53 +02:00
leguan
7145f41b6e
compression level change with config option (#9711) 2023-09-14 13:11:19 +02:00
TreemanKing
6378792a99
Add Barrel to LootableBlockInventory (#9687) 2023-09-14 13:04:36 +02:00
Duckulus
e68fd7162a
Add missing Piglin Dancing API (#8894) 2023-09-14 12:54:43 +02:00
Lulu13022002
eea0c649ca
Swap some nullable annotations (#9696) 2023-09-14 12:44:12 +02:00
Warrior
1c15111f08
Add missing particle javadocs (#9716) 2023-09-14 12:09:09 +10:00
Nassim Jahnke
517f8fbbac
Fix line of sight distance check 2023-09-12 09:56:24 +10:00
Spottedleaf
fb06829845 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
c9cd94f3c6
Fix fixItemsMergingThroughWalls check (#9707) 2023-09-11 14:46:02 +10:00
Nassim Jahnke
e2b197132d
Add missing slot sanity checks for container clicks 2023-09-11 12:03:35 +10:00
Nassim Jahnke
72e87abc2d
Strip raytracing for EntityLiving#hasLineOfSight
Co-authored-by: Paul Sauve <paul@technove.co>
2023-09-10 12:28:03 +10:00
Joe
33bec7f20a Copy NBT in legacy dragon fight converter 2023-09-06 18:33:31 -07:00
Joe
471f4de9c4 Copy NBT in upgrade data neighbor ticks 2023-09-06 18:30:02 -07:00
Lulu13022002
39953cf08d
Take in account waterlogged blocks for scaffolding (#9676) 2023-09-04 17:52:27 +02:00
Md5Lukas
b4e3b3d1dd
Allow non-op players to execute the click event callback (#9652) 2023-08-28 13:21:13 +02:00
Noah van der Aa
b8edb0e130
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
0c0a480d82
Do crystal-portal proximity check before entity lookup (#9611) 2023-08-26 13:23:31 -07:00
Lulu13022002
0e622c79fa
Add sniffer egg api (#9288) 2023-08-26 22:12:46 +02:00
Jake Potrebic
7d13b7066c
Add titleOverride to InventoryOpenEvent (#7540) 2023-08-26 12:28:42 -07:00
Jake Potrebic
6813244fb0
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
6f30f08b20 Readd old BlockDamageEvent constructor 2023-08-25 10:19:55 +10:00
Jake Potrebic
e552bebca1
Fix inventory desync (#9640) 2023-08-24 16:53:02 -07:00
Aeltumn
0c8882f7f9
Add OfflinePlayer#isConnected (#9642) 2023-08-24 21:44:31 +10:00
Jake Potrebic
b8a0049207
Fix exact choice recipe book clicks (#7822) 2023-08-23 08:20:32 -07:00
Warrior
7a1863ed78
Limit setBurnTime to valid short values (#9623) 2023-08-23 20:54:34 +10:00
Jake Potrebic
a751001ed1
[ci skip] Refactor context records for easier expansion (#9589) 2023-08-23 13:34:57 +10:00
Martijn
fcc5f232f9
Optimize nearest structure border iteration (#9638) 2023-08-23 11:53:42 +10:00
The456
9cbad8ebbf
Expose Hand during BlockCanBuildEvent (#9636) 2023-08-23 10:41:30 +10:00
Bjarne Koll
3716832282
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
a712766995
Allow custom damage for trident (#8132) 2023-08-22 16:20:38 +10:00
Lulu13022002
7386a13642
Fix endgateway teleportation offset (#9517) 2023-08-22 16:03:15 +10:00
Jake Potrebic
9395aa6079
Improve performance of mass crafts (#9603) 2023-08-22 15:54:28 +10:00
Rodney
0c7385b569
Add PlayerPickItemEvent (#5590) 2023-08-22 15:22:05 +10:00
SoSeDiK
27d39cac4f
Properly clone custom nbt tags inside ItemMeta (#7849) 2023-08-22 14:59:31 +10:00
Jake Potrebic
fed9042390
More DragonBattle API (#5655) 2023-08-22 14:08:43 +10:00
Joo200
e3f29f4345
MerchantRecipe: add copy constructor (#8703) 2023-08-22 13:48:25 +10:00
aerulion
b29ecd4c22
Expose clicked BlockFace during BlockDamageEvent (#9632) 2023-08-22 13:07:18 +10:00
SoSeDiK
2be57c6943
Expand Pose API (#8781) 2023-08-22 13:05:47 +10:00
caramel
97b9c4a2a4
Fix NPE on Boat#getStatus (#9115) 2023-08-22 12:57:54 +10:00
Bjarne Koll
281855c877
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 22:08:25 +10:00
Corey Shupe
00a68b1efe
Player listing API (#8782) 2023-08-21 18:51:31 +10:00
ruViolence
7232506c22
Add entity tracker min Y distance config option (#9406) 2023-08-21 18:05:49 +10:00
Jake Potrebic
1b96c64620
Improve cancelling PreCreatureSpawnEvent with per player mob spawns (#9400) 2023-08-21 17:44:47 +10:00
Yannick Lamprecht
5bf82aa136
Add cancellability to PlayerTrackEntityEvent (#8605) 2023-08-21 17:38:55 +10:00
TonytheMacaroni
88891c37b1
Add Entity Coordinate and Rotation API (#9461) 2023-08-21 17:35:05 +10:00
Will FP
1259b93ba6
Fixed CraftItemStack/CraftItemMeta enchantment level inconsistency (#8792)
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2023-08-21 17:31:52 +10:00
Trevor Bedson
990765bd08
Fire entity death event for ender dragon (#9495) 2023-08-21 17:06:21 +10:00
Nassim Jahnke
45ba65283f [ci skip] Rebuild patches 2023-08-21 14:51:19 +10:00
Gero
f43a19c275
Fix CME in CraftPersistentDataTypeRegistry (#6701) 2023-08-21 14:50:21 +10:00
EpicPlayerA10
d928dda91d
Don't tab-complete namespaced commands if send-namespaced is false (#9366) 2023-08-21 14:50:11 +10:00
galacticwarrior9
bd67b83fd0
Determine lava and water fluid explosion resistance by their block explosion resistance (#9482) 2023-08-21 14:50:02 +10:00
Gameoholic
ed8401c748
Fix rotation for spawning display entities (#9552) 2023-08-21 14:49:53 +10:00
EpicPlayerA10
5b34a09ed0
Add option to disable chorus plant and mushroom block updates (#9442) 2023-08-21 14:49:38 +10:00
Md5Lukas
67a1a8caf8
Fix Inventory#getLocation not working for the composter (#9596) 2023-08-21 14:49:29 +10:00
Jake Potrebic
d12916255a
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
666a2147a7
[ci skip] rebuild patches 2023-08-20 14:28:49 -07:00
Jake Potrebic
2bd6ba2c63
Deprecate and replace methods using deprecated StructureType (#8643) 2023-08-20 10:30:45 -07:00
Jake Potrebic
fd4f0c7741
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
eb8f2bb2a1 Fix unknown entity interaction clicked position getter if null 2023-08-19 12:01:06 +10:00
Martijn
307d05bba8
Count down radius-aware dependency tree node parents (#9600) 2023-08-18 12:02:20 +10:00
Jamie
ea1f33cf9a
Delete patch to fix PaperMC/Paper#9612 (#9621) 2023-08-17 15:51:34 -05:00
Nassim Jahnke
73af2d4cea
Add clicked position to PlayerUseUnknownEntityEvent (#9604) 2023-08-16 17:58:07 +10:00
Bjarne Koll
47b805fdf1
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-15 21:08:00 -07:00
Warrior
6520ca1c47
Fix main thread priority being lowered (#9488) 2023-08-15 19:37:17 +02:00
Jake Potrebic
a73ed9572e
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
93829bba5a
Account for dimension type in portal void damage check (#9602) 2023-08-13 13:30:48 -07:00
Warrior
02338e5069
Fix DEFAULT getEntitySpawnReason for /summon (#9480) 2023-08-13 01:57:13 +02:00
Nacioszeczek
1dfdbef42b
SculkCatalyst bloom API (#9466) 2023-08-13 01:31:32 +02:00
Jake Potrebic
2df309bd49
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
29aaf7bc24
Fix custom statistic criteria creation (#9595) 2023-08-12 23:50:21 +02:00
Jake Potrebic
20a71c58d3
Add restrict-player-reloot-time config (#7652) 2023-08-12 14:26:47 -07:00
montlikadani
3b4839ee32
Fix players are invisible after using setPlayerProfile (#9143)
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
2023-08-12 16:10:09 +02:00
Warrior
3c41f8f0b3
Cache map ids on item frames (#9584) 2023-08-12 23:33:24 +10:00
Warrior
9bc70e6888
Make the cursor limit option apply to banners (#9554) 2023-08-10 15:22:40 +02:00
Spottedleaf
4179b8f3fa 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
98c567fe6f
Use correct seed on api world load (#9541) 2023-08-08 16:35:15 -07:00
Warrior
a2002a76b8
Fix wild wolves not considering bones interesting (#9579) 2023-08-08 16:15:01 -07:00
Jake Potrebic
93cf3eb832
Respect randomizeData on more entities when spawning (#9483) 2023-08-08 16:07:59 -07:00
Warrior
9ffccd6430
Use correct source for mushroom block spread event (#9587) 2023-08-08 15:51:58 -07:00
Nassim Jahnke
408a9050ba Don't put entities removed during the portal exit event into an invalid state 2023-08-08 17:48:55 +10:00
Nassim Jahnke
ef2b574c6a Clone location in PlayerFailMoveEvent getters 2023-08-08 13:00:17 +10:00
Moulberry
5274ad672b
Add and implement PlayerFailMoveEvent (#9535) 2023-08-08 12:51:09 +10:00
Jake Potrebic
d6d2b6f4e5
Only capture actual tree growth (#6464) 2023-08-05 19:33:18 -07:00
Phillipp Glanz
8fe8ca6658
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
31358d5e48
API for updating recipes on clients (#6463) 2023-08-05 18:11:22 -07:00
Bjarne Koll
508a295b44
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-05 17:31:10 -07:00
Jake Potrebic
2fa8efce9b
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
69a801305d
[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 12:58:38 -07:00
Jake Potrebic
2c55dd86ff
Expand use of strict advancement dim check (#9545) 2023-08-05 12:26:28 -07:00
Emily
13c9d3c423
Bump net.kyori:ansi to 1.0.3 (#9575) 2023-08-04 14:54:25 -07:00
Jake Potrebic
81619a652e
Fix treasure map config default (#9572) 2023-08-04 08:52:22 -07:00
Emilia Kond
f402f89a67
Bump net.kyori.ansi to 1.0.2 (#9546) 2023-07-29 12:59:46 +10:00
Jake Potrebic
6c7e3c5193
[ci skip] Clarify viewers set mutability in chat events (#9525) 2023-07-28 15:14:19 -07:00
Jake Potrebic
7d1cc6d409
Add Translatable interface to MusicInstrument (#9538) 2023-07-28 15:06:27 -07:00
Jake Potrebic
a40e48f3fd
Add cause to PlayerOpenSignEvent (#9441)
Also fire the event for plugin-opened signs
2023-07-26 17:25:14 +01:00
Spottedleaf
1837f6c677 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:21:45 -07:00
Owen
b14979e352
Remove isRemoved skip on .discard() (#9520) 2023-07-24 19:04:40 +10:00
powercas_gamer
aa93dcfdce
feat: add minimessage tag resolvers overload to CommandSender#sendMessage (#9505) 2023-07-23 01:46:40 -04:00
Sage
42830546f3
Add player whitelist events (#9209) 2023-07-23 00:38:53 -04:00
JLitewski
e19177a2c3
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
2c54b3949f
Don't support hex in book title and author (#9493) 2023-07-22 23:40:52 -04:00
Astralchroma
d8b8f61961
Configurable Region Compression Format (#8505) 2023-07-22 20:13:48 -04:00
Owen
383f0ed924
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
24d690fe7e
Fix hopper not marking source inv as changed (#9070) 2023-07-22 13:48:23 -07:00
Golfing7
46a36d3b28
Make ExperienceOrb entities call EntitySpawnEvent (#9197) 2023-07-22 16:19:50 -04:00
Roman Alexander
2f8d9db58c
Pathfinder hasPath should check if path is done. (#9231) 2023-07-22 16:04:19 -04:00
Infynyty
b1334b5105
Mark Player.sendSignChange as deprecated (#9382) 2023-07-22 21:38:40 +02:00
Jake Potrebic
c016e039a5
Fix unbreakable flint and steel consumed when igniting creepers (#9509) 2023-07-19 09:16:39 -07:00
Bjarne Koll
40adc2345b
[ci skip] Fix incorrect javadoc in JarLibrary (#9513) 2023-07-19 12:51:58 +01:00
Moulberry
c793bd93be
Allow LEFT_CLICK_AIR in 3.0->4.5 range of entity (#9211) 2023-07-16 17:58:25 +02:00
Jake Potrebic
b533905cc3
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 16:28:28 -04:00
Jason
fe780d041e
Add back accidentally dropped Wandering Trader patch (#9492) 2023-07-14 16:23:33 -07:00
Jake Potrebic
de3f149185
Fix possible NPE on painting creation (#9391) 2023-07-13 17:22:15 -07:00
Jake Potrebic
22ed60c101
Fix BanList API (#9450) 2023-07-13 14:43:45 -07:00
Jake Potrebic
aefb73c234
Add Owner UUID api for AreaEffectCloud (#9364) 2023-07-13 17:26:42 -04:00
Owen
ece4fd3597
Suppress Item Meta Validation Checks (#9331)
Stops item meta from aggressively throwing exceptions.
2023-07-13 16:59:49 -04:00
Jake Potrebic
836586d59b
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
Owen
92bc19b049
Fix missing item interaction cancelling case (#9427)
Properly cancels brushes now
2023-07-13 15:48:46 -04:00
Lulu13022002
1f8ca77bb6
Prevent desync for poi and pistons (#9270) 2023-07-13 15:22:05 -04:00
Jake Potrebic
a60eeb85f5
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
a3c760e6af
Handle block state in EntityDamageByBlockEvent (#9396) 2023-07-12 12:12:12 -07:00
Jake Potrebic
b3dc7a3b4b
fix item meta for tadpole buckets (#9473) 2023-07-11 11:52:11 -07:00
chickeneer
805fdd83b3
Add deprecations to SignSide string methods (#9467) 2023-07-11 09:58:08 -07:00
Warrior
6b325cd6a9
Array backed synched entity data (#9460) 2023-07-10 15:27:50 +02:00
Jake Potrebic
5de0f8ac48
Add Sign#getInteractableSideFor (#9388) 2023-07-08 11:04:19 +02:00
Jake Potrebic
e105354330
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
d7d3f6371e
[ci skip] Use Nullable annotation for Entity source (#9435) 2023-07-06 20:38:46 -07:00
Spottedleaf
48ea66e97f 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
dadd8b5a7c
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-06 02:55:19 +01:00
Lulu13022002
12c970097d
Fix ThrownEggHatchEvent#setHatching (#9448) 2023-07-05 09:46:12 +02:00
Nassim Jahnke
c0936a71bd
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
4356758b64
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-02 16:12:07 -07:00
Jason
171ba7ccf3
Move Log4j plugins to own source set (#9428) 2023-07-01 22:00:46 -07:00
Jake Potrebic
f2c1e1366a
Fix default permission for xp command (#9419) 2023-06-30 15:02:25 -07:00
Boy0000
fead63e2ea
Add option to disable NoteBlock and Tripwire updates (#9368) 2023-06-30 16:11:52 +02:00
Nassim Jahnke
225c95025b
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
437e8da700
Improve command function perm level checks (#9411) 2023-06-28 23:18:28 -07:00
Jake Potrebic
2c9c5e4662
Fix replenishable container entities save/load existing contents (#9417) 2023-06-28 11:06:47 -07:00
Jake Potrebic
e4b40ddc22
Fix entity selectors while spectating (#9402) 2023-06-27 14:46:27 -07:00
Jake Potrebic
8582999344
Deprecate duplicate chat completion methods (#9401) 2023-06-27 10:18:59 +02:00
Lulu13022002
cf0f013f53
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-26 21:22:49 -07:00
Redned
7103f813bc
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-27 00:26:29 +01:00
Bit
3f6c4b07ac
Add event for player editing sign (#9300)
Addresses https://github.com/PaperMC/Paper/issues/9293
2023-06-26 23:35:32 +01:00
Nassim Jahnke
990be1691b
Iterate over entity array copy for entity scheduler 2023-06-26 18:41:08 +02:00
powercas_gamer
e8bec64217
Fix ugly java logger format for paper plugin dependency loader (#9395) 2023-06-25 09:57:45 +02:00
Owen
b34d4ecd2e
Fix cycle on paper plugin toString (#9392) 2023-06-24 22:37:38 +01:00
Owen
aea9cdd37d
Fix interact event call override (#9387) 2023-06-23 11:03:43 -05:00
Molean
206dd3af05
Fix incorrect phantom spawning entity (#9385) 2023-06-23 12:50:29 +02:00
Samir
b1696788d6
ratelimited packet is logged to console on kick (#9292) 2023-06-21 14:36:14 +01:00
Redned
c613877e54
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 14:11:50 +01:00
Owen
3756f5bbf5
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
1f5bec71f3
Pull Folia API take two 2023-06-18 22:46:52 +02:00
Nassim Jahnke
b1fe756b73
Revert "Move some Folia API to Paper for easy compat (#9360)"
This reverts commit d6d4c78e7d.
2023-06-18 21:47:17 +02:00
Nassim Jahnke
d6d4c78e7d
Move some Folia API to Paper for easy compat (#9360) 2023-06-18 20:02:59 +02:00
Shane Freeder
976b95c74c
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
275173e538
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:18:11 +02:00
Jake Potrebic
873533b129
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
faf9a65b62 Disable BukkitMirrorTest 2023-06-17 14:20:46 -07:00
Jake Potrebic
072b78a713
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
3a0373901e
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
c1ea5502d4
Remove more outdated config settings (#9358) 2023-06-17 11:25:22 -07:00
Jake Potrebic
38856661c0
Remove stacktrace on exception from reading server.properties (#9296) 2023-06-16 19:27:45 -07:00
Spottedleaf
a226f44b45 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
f5551380b3 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:25:26 -07:00
Spottedleaf
3f237e869a 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
02e3b5a91a
chore(api): add missing javadoc urls (#9355) 2023-06-16 16:34:49 +01:00
Ollie
17966ddb8e
Update the server logo (#9264)
Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
2023-06-16 16:20:31 +01:00
Lulu13022002
f6139de06c
Fix sniffer removeExploredLocation and javadoc (#9311) 2023-06-16 14:33:25 +01:00
Nassim Jahnke
81834ac54a
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
fa674f3d35
Don't enforce icanhasbukkit default if alias block exists (#9334) 2023-06-16 12:02:43 +01:00
Jake Potrebic
b134eb406a
Fix incorrect annotation on BrushableBlock#getItem (#9345) 2023-06-16 11:58:09 +01:00
Jake Potrebic
41e6f20420
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 11:28:31 +01:00
Jason
f7b386ddc7
Use ANSI serializer for console completion descriptions (#9351) 2023-06-15 10:11:09 -07:00
Jake Potrebic
8bc0574fb8
Bump kyori's ansi to fix color bleed (#9346) 2023-06-15 09:24:01 -07:00
Jake Potrebic
bae6096aa2
Re-add dropped patch during 1.20 update (#9344) 2023-06-14 17:52:28 -07:00
Bjarne Koll
837cc25c51
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
62262d73d2
[ci skip] mention adventure in chatcolor deprecation message (#9336)
* mention adventure in chatcolor deprecation message

* expand text

* americans
2023-06-13 20:48:41 -07:00
Jason
2e363c73ba
1.20.1 (#9333) 2023-06-13 09:10:07 +02:00
Jake Potrebic
c287e921a9
Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9301) 2023-06-12 16:51:45 -07:00
Jason Penilla
b48e2e352e
Fix dev bundle generation 2023-06-12 16:44:07 -07:00
Emilia Kond
2d09115b3a
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-12 15:00:12 -07:00
Bjarne Koll
87dfff4cfa
Implement BossBarViewer on Player (#9332)
* Implement BossBarViewer on Player

Author: Riley Park <rileysebastianpark@gmail.com>

* Implement BossBar#viewers
2023-06-12 14:43:39 -07:00
Jake Potrebic
de19eb8c4a
fix incorrectly updated move vector checking patch (#9328) 2023-06-12 11:26:43 -07:00
Jake Potrebic
f8cfdd4ba9
Fix SmithingInventory helper slot methods for 1.20 (#9325) 2023-06-12 19:04:53 +02:00
Lulu13022002
eb0693fff7
Fix EntityDeathEvent cancellation (#9323) 2023-06-12 19:03:51 +02:00
Bjarne Koll
f4dfdcbb5b
Fix sendSignChange0's usage of SignText (#9310) 2023-06-11 22:53:28 +02:00
Jake Potrebic
3722877c3c
correctly hide players from entity argument suggestions (#9245) 2023-06-10 18:15:43 -07:00
Lulu13022002
e2e874f549
Add back the source uuid on exp orb for animals breeding (#9289) 2023-06-10 18:01:10 -07:00
Spottedleaf
bc3496ea58 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
3d06377b24 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
Owen
2ffb704efa
Don't use event to get block position (#9295) 2023-06-10 02:13:42 -04:00
Jake Potrebic
dc30ee591d
Properly remove the experimental smithing inventory type (#9290) 2023-06-09 20:50:00 +02:00
Jake Potrebic
0284b272d3
Add API for waxed signs (#9291) 2023-06-09 20:32:20 +02:00
Lulu13022002
648c000fb2
Add pitcher plant api (#9286) 2023-06-09 14:23:38 +02:00
Bjarne Koll
4b5f84712b
Minimise EntityFertilizeEggEvent and add sniffer (#9280) 2023-06-09 09:01:08 +02:00
Jake Potrebic
4e3febbfe0
fix missing trigger entity for xp orb from breeding 2023-06-08 23:52:18 -07:00