Commit graph

2686 commits

Author SHA1 Message Date
Owen1212055
babd22019c Patches! 2024-04-24 08:11:27 -04:00
Jake Potrebic
27c46717f6 405 2024-04-23 23:44:48 -07:00
Jake Potrebic
49787270cb 354 2024-04-23 23:05:14 -07:00
Jake Potrebic
ebedfa4da7 301 2024-04-23 22:43:09 -07:00
Jake Potrebic
840f63b25a 253 2024-04-23 19:46:06 -07:00
Jake Potrebic
e45f4f85f4 221 2024-04-23 19:21:40 -07:00
Owen1212055
717c16dc69 Patches! 2024-04-23 18:25:14 -07:00
Owen1212055
c844ac9d01 Update upstream 2024-04-23 19:31:55 -04:00
Owen1212055
97cf432687 update 2024-04-23 19:30:03 -04:00
Jake Potrebic
9a497c83b8 fix 2 of our javadoc errors 2024-04-23 16:30:24 -07:00
Jake Potrebic
8c0153f78d work on some API stuff 2024-04-23 16:26:24 -07:00
Jason Penilla
d527aa0f5b Fix api compile 2024-04-23 14:47:29 -07:00
Jason Penilla
178efa2903 Don't use defaultToolchain method for run tasks 2024-04-23 14:39:36 -07:00
Jason Penilla
8004d7f08a 41 2024-04-23 14:31:37 -07:00
Jason Penilla
17a9cefe8e Fix continueServerUpdate with 2-line subjects 2024-04-23 14:26:28 -07:00
Jason Penilla
fbe7d95d0f 33 2024-04-23 14:12:24 -07:00
Jason Penilla
040ea261c7 Apply timings 2024-04-23 14:04:59 -07:00
Jason Penilla
67e8e37fe3 Apply shadow removal patch 2024-04-23 13:41:25 -07:00
Jason Penilla
5c78ce1a3a Fix reflection diff and order wrt commodore diff 2024-04-23 13:36:31 -07:00
Nassim Jahnke
0898d2405e Work 2024-04-23 21:23:27 +02:00
Jason Penilla
a616fad617 Add plugin remapping patches 2024-04-23 11:44:28 -07:00
Jake Potrebic
5c6e2be729 work on Adventure patch 2024-04-23 11:32:19 -07:00
Jake Potrebic
7f1e33effe do some work 2024-04-23 11:03:16 -07:00
Jake Potrebic
47ee5579ff Begin update to 1.20.5 2024-04-23 10:02:08 -07:00
leguan
73da69c09e [ci skip] Fix javadoc typo (#10445) 2024-04-22 20:08:37 +02:00
Jake Potrebic
659ebace6c More Raid API (#7537) 2024-04-20 12:57:51 -07:00
Tamion
9c2056070c Add Configuration for finding Structures outside World Border (#10437) 2024-04-20 21:29:32 +02:00
Janet Blackquill
2db91fd866 Add CartographyItemEvent and get/setResult for CartographyInventory (#10396) 2024-04-20 14:10:35 -04:00
Florian Beck
3fc5a0b21d Added chunk view API (#10398) 2024-04-20 19:56:59 +02:00
Nassim Jahnke
ab63e7e64f Allow setting player list name early 2024-04-20 15:24:42 +02:00
Tamion
b1a467786e Fix inventory desync with PlayerLeashEntityEvent (#10436) 2024-04-20 05:23:32 +02:00
Jake Potrebic
bdfe4c21f6 Add API for ticking fluids (#10435)
* Add API for ticking fluids

* update javadocs
2024-04-19 13:03:32 -07:00
brickmonster
07e8f74355 Remove dead code (LegacyResult) (#10411)
* Stop firing AsyncPlayerChatPreviewEvent as chat preview was removed in 1.19.3. This is in parity with upstream

* formatting and small tweaks

* correctly set MESSAGE_CHANGED flag for modern modifications

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-19 20:47:24 +01:00
Jason Penilla
76be2651ca "Downgrade" Vineflower to 1.10.1 release (#10423)
* "Downgrade" Vineflower to 1.10.1 release

The main thing we lose from the 1.11 snapshots is a recent fix for redundant casts.

* Thanks intellij

* a
2024-04-16 12:44:59 -07:00
Owen1212055
14b0751f02 Deprecate ItemStack#setType & add ItemStack#withType (#10290) 2024-04-12 17:16:22 -04:00
ButterDebugger
9e05b17b92 Add color transition and clone functions to ParticleBuilder (#10342) 2024-04-12 16:07:28 -04:00
Cross
dd8fa8eefb Fix hit criteria advancement triggered before changing state (#10409)
* Fix hit criteria advancement being triggered before changing block state.

* Rebase

---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-04-12 20:42:00 +01:00
Shane Freeder
0d8e6831c3 Fix StackOverflowException thrown on shutdown (Fixes #10404) (#10408)
paper previously migrated away from using executeIfPossible as this throws a
RejectedExecutionException when the server is shutting down, which is then picked
up by the Connection handler object and causes the player to be kicked without
the intended disconnection message that comes from commands such as /stop, /restart

This was fine, because previously changes made in spigot would just prevent these
packets from being executed anyways. Instead, we'll just use a marker exception
to try to detect this specific state.
2024-04-12 20:37:00 +01:00
Hy3z
73c52d2df4 [ci skip] Referenced InventoryDragEvent in documentation of InventoryClickEvent (#10395) 2024-04-12 21:19:55 +02:00
Jake Potrebic
89528bff42 Update patches to handle vineflower decompiler (#10406)
* Update patches to handle vineflower decompiler

* update patches again to handle inlined simple lambdas

* update vf again and re-apply/rebuild patches

* update patches after removal of verify-merges flag

* fix compile issue

* remove maven local

* fix some issues

* address more issues

* fix collision patch

* use paperweight release

* more fixes

* update fineflower and fix patches again

* add missing comment descriptor

---------

Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
2024-04-12 12:14:06 -07:00
Lulu13022002
99625a6d53 [ci skip] Update book page/char limit for book meta doc (#10415) 2024-04-12 20:58:44 +02:00
gecko10000
a7eec3f980 Change online mode default for Velocity configuration (#10413) 2024-04-12 10:21:31 -07:00
Jake Potrebic
7263a87e9c Deprecate several Keyed#getKey methods (#10357)
- Structure (can already be defined inline in datapacks
- PatternType (can be defined inline in 1.20.5 data components)
- MusicInstrument (same as above)
2024-04-07 22:20:51 -07:00
Shane Freeder
b56970d394 Allow player-list API to self un/list (#10358) 2024-04-07 01:45:43 +01:00
Joseph Burton
bccba9bc30 Ignore minecart in activation range (#10359) 2024-04-07 00:50:43 +01:00
Noah van der Aa
7f488e6d9d Disable vertical air friction when item entities have friction disabled (#10369) 2024-04-07 01:36:59 +02:00
Evan
b6a760757a Add BlockBreakProgressUpdateEvent (#10300) 2024-04-06 18:28:17 -04:00
Lulu13022002
d06c0b4571 Backport some stuff from the generators branch (#10365) 2024-04-06 23:51:47 +02:00
Tamion
613a19f70d Add more item use API (#10304) 2024-04-06 23:44:27 +02:00
Lulu13022002
2089697232 Don't throw NPE for unplaced blockstate on #getDrops (#10366) 2024-04-06 23:26:56 +02:00
powercas_gamer
8a2bd44f1f Deprecate Bukkit#getLogger (#10388)
* Deprecate Bukkit#getLogger

* fix typo in MaterialSetTags

* change to Internal and squash into other patch

* improve api note message

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-06 23:20:29 +02:00
Pierpaolo Coletta
e1e5a33da4 Fix invalid block entities created during world gen (#10375) 2024-04-06 23:16:54 +02:00
Bridge
7de6922d21 feat: Entity#teleportAsync method with TeleportFlags (#10371)
* feat: Entity#teleportAsync method with TeleportFlags

* use method-local class

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-06 22:38:37 +02:00
Jake Potrebic
68e86d7297 Updated Upstream (Bukkit/CraftBukkit) (#10379)
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:
f02baa38 PR-988: Add World#getIntersectingChunks(BoundingBox)
9321d665 Move getItemInUse up to LivingEntity
819eef73 PR-959: Add access to current item's remaining ticks
c4fdadb0 SPIGOT-7601: Add AbstractArrow#getItem
be8261ca Add support for Java 22
26119676 PR-979: Add more translation keys
66753362 PR-985: Correct book maximum pages and characters per page documentation
c8be92fa PR-980: Improve getArmorContents() documentation
f1120ee2 PR-983: Expose riptide velocity to PlayerRiptideEvent

CraftBukkit Changes:
dfaa89bbe PR-1369: Add World#getIntersectingChunks(BoundingBox)
51bbab2b9 Move getItemInUse up to LivingEntity
668e09602 PR-1331: Add access to current item's remaining ticks
a639406d1 SPIGOT-7601: Add AbstractArrow#getItem
0398930fc SPIGOT-7602: Allow opening in-world horse and related inventories
ffd15611c SPIGOT-7608: Allow empty lists to morph to any PDT list
2188dcfa9 Add support for Java 22
45d6a609f SPIGOT-7604: Revert "SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime"
06d915943 SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime
ca3bc3707 PR-1361: Add more translation keys
366c3ca80 SPIGOT-7600: EntityChangeBlockEvent is not fired for frog eggs
06d0f9ba8 SPIGOT-7593: Fix sapling growth physics / client-side updates
45c2608e4 PR-1366: Expose riptide velocity to PlayerRiptideEvent
29b6bb79b SPIGOT-7587: Remove fixes for now-resolved MC-142590 and MC-109346
2024-04-06 12:53:39 -07:00
Jason Penilla
61dc3d0b17 build: Compile against and shade the filtered jar (#9747)
* Compile against & shade the filtered jar

* Move check for if the paper asset root needs to be pushed

* Don't disable incremental compilation

* Remove mavenLocal

* use paperweight release
2024-04-04 17:12:05 -07:00
DungeonDev
44336b8510 Add config option for tripwire disarming fix
Fixes #10382

Co-authored-by: Tamion <70228790+notTamion@users.noreply.github.com>
2024-04-02 12:15:49 +02:00
Jason Penilla
2b24892fa4 build: Update paperweight to 1.5.12 and Gradle Wrapper to 8.7 (#10361) 2024-03-29 10:43:36 -07:00
Jake Potrebic
8fa3b24907 [ci skip] move custom brig exception to paper package 2024-03-26 08:38:26 -07:00
Nassim Jahnke
c848b33030 Return dummy string instead of empty optional 2024-03-25 13:26:01 +01:00
maxcom1
6a200a1663 Add methods to change entity physics (#10334) 2024-03-23 22:26:17 +01:00
FireInstall
0c76cbb7cc Move invisible setting up to entities (#10346) 2024-03-23 20:27:30 +01:00
Shane Freeder
5efed01031 Do not copy profile data if profiles are the same (#10259) 2024-03-20 21:47:50 +00:00
TonytheMacaroni
b17ca0b19e Expose power on fireballs (#10302) 2024-03-20 17:33:34 -04:00
Jake Potrebic
3e27ced8ce Clone mutable types in events when changes are discarded (#10333) 2024-03-20 13:42:29 -07:00
maxcom1
71a2187c20 Fire EntityChangeBlockEvent on beehive nectar deposit (#10306)
* Add BeehiveNectarDepositEvent

* Fire EntityChangeBlockEvent instead of a separate event
2024-03-20 20:35:10 +01:00
Nassim Jahnke
8e2c466bc3 Fix tripwire disarming not working as intended 2024-03-19 19:49:12 +01:00
viciscat
956e59eaef Expand Hopper BlockState API (#10328) 2024-03-16 20:28:50 +01:00
Jake Potrebic
c47e305c9f Fix DamageSource API (#10307)
Uses the correct entity in the EntityDamageByEntity event
Returns the correct entity for API's DamageSource#getCausingEntity
2024-03-16 11:51:22 -07:00
leguan
5423df4cab Add onboarding message for initial server start (#10312) 2024-03-16 19:10:26 +01:00
Suppergerrie2
c136006ed0 Fix missing profiler.pop() in PathFinder::findPath (#10320) 2024-03-15 12:09:47 +01:00
Bjarne Koll
ce6e3b23da Allow passenger retaining teleport via end gateway (#10283)
Previously paper disabled the abilities for entities to teleport via end
gateways if they were being used as a vehicle.

While the behaviour generally worked fine for entities riding other
entities, players would quickly end up in an invalid state, not seeing
their passenger anymore.

This commit removes the paper introduced limitation by now properly
updating the passengers location of a player when they are teleporting
through an end gateway.
2024-03-10 01:08:44 +01:00
Jake Potrebic
31997fcd56 Add param to overrides to the correct method is called (#10308) 2024-03-09 15:16:27 -08:00
Jake Potrebic
8b00b9a52d Updated Upstream (Bukkit/CraftBukkit) (#10301)
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:
7ca2b46c SPIGOT-7594: Fix typo and include missing MinecraftExperimental annotation in Loot Table enum

CraftBukkit Changes:
176c0ad39 Fix copying BlockStates with fields (eg, Banner)
ee685bd2a Fix Camel not standing up when hurt
619936d4b Increase outdated build delay
2024-03-08 15:52:00 -08:00
Jake Potrebic
ee3ba92337 Per world ticks per spawn settings (#6891) 2024-03-03 14:53:58 -08:00
Owen1212055
7415dcf70e Allow enabling sand duping (#10191)
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable.

It should be noted that this decision does not promise all future exploits will be configurable.
2024-03-03 17:05:34 -05:00
Yannick Lamprecht
ae0c893174 add overloads to use suspicious effect entry to mushroom cow and suspicious stew meta (#10245)
The existing method with PotionEffect suggests that all attributes are used. In fact, only the PotionEffectType and the duration are used.



---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-03-03 22:40:18 +01:00
Shane Freeder
5a66c3b64e Don't tick empty worlds (#9025) 2024-03-03 21:10:45 +00:00
Jake Potrebic
a2a55e2b27 Deprecate extra ban methods with raw BanEntry (#9580) 2024-03-03 12:54:52 -08:00
Gero
0c2d5b9b74 Configurable max block/fluid ticks (#10266) 2024-03-03 21:43:00 +01:00
Yannick Lamprecht
29009b5f04 improve BanList types (#10239) 2024-03-03 21:36:17 +01:00
Rodney
715e4018a4 Fire EntityDamageByEntityEvent for unowned wither skulls patch (#10244) 2024-03-03 20:35:50 +01:00
Yannick Lamprecht
bf8eb0f964 add rich message component support to configuration (#10225) 2024-03-03 19:59:22 +01:00
granny
db9d9c153d check if itemstack is stackable first (#10285) 2024-03-03 10:37:00 -08:00
Nassim Jahnke
1cfe913c93 Fix spawnreason saving 2024-02-23 23:13:37 +01:00
Bjarne Koll
b2aea18b19 Fix corrupted plugin.yml breaking plugin loading (#10279)
Fix corrupted plugin.yml file in one plugin not loading any plugins by
the server.

Co-authored-by: Aleksander Jagiello <themolkapl@gmail.com>
2024-02-23 18:54:44 +01:00
Shane Freeder
f8a84f01e2 Make debug mode print current configuration phase 2024-02-23 13:54:52 +00:00
Nassim Jahnke
1863ac217f Updated Upstream (Bukkit/CraftBukkit/Spigot) (#10277)
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:
9a80d38c SPIGOT-336, SPIGOT-3366, SPIGOT-5768, SPIGOT-6409, SPIGOT-6861, PR-722: Add EntityRemoveEvent
258086d9 SPIGOT-7417, PR-967: Add Sign#getTargetSide and Sign#getAllowedEditor
ffaba051 SPIGOT-7584: Add missing Tag.ITEMS_NON_FLAMMABLE_WOOD

CraftBukkit Changes:
98b6c1ac7 SPIGOT-7589 Fix NullPointerException when bans expire
a2736ddb0 SPIGOT-336, SPIGOT-3366, SPIGOT-5768, SPIGOT-6409, SPIGOT-6861, PR-1008: Add EntityRemoveEvent
5bf12cb89 SPIGOT-7565: Throw a more descriptive error message when a developer tries to spawn an entity from a CraftBukkit class
76d95fe7e SPIGOT-7417, PR-1343: Add Sign#getTargetSide and Sign#getAllowedEditor

Spigot Changes:
e9ec5485 Rebuild patches
f1b62e0c Rebuild patches
2024-02-23 14:37:33 +01:00
Shane Freeder
e33fdd8189 Do not access world state to see if we can see a Player
Thrown into the adventure patch because I don't see the justification of a patch existing
for something like this.
2024-02-22 16:23:15 +00:00
Nassim Jahnke
bc49d1fd6c Add more ResourceLocation checks, some cleanup 2024-02-18 12:53:27 +01:00
Jason Penilla
14253bdf2c Run round-trip adventure codec tests with JSON, NBT, and Java ops. Use JavaOps for conversions. (#10031) 2024-02-17 14:58:56 -07:00
viciscat
c4731d1330 FluidState API (#9951)
* Add new FluidState API functionality
---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
2024-02-17 21:44:03 +01:00
David Mayr
2d6b2baf34 Scoreboard objective number format api (#10036)
* feat: number format api

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: make each individual score customizable

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: fix incorrect descriptions

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use access transformers

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use adventure codecs

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* test: test for matching styles

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: convert number formats to interfaces

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: add style conversion to adventure patch

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use paper adventure method in PaperScoreboardFormat

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* chore: rename methods to avoid a method in records

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* fix: check if objective is still registered

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: improve style conversion

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: modify how the getter behaves in score

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use fluent naming

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: add spaces before the paper comments

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* chore: styling changes

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* chore: make constant final

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: add methods for styled format instead of constants

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* fix: remove incorrect getTrackedPlayers check

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: add . at the end of sentences

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: explain null behaviour

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: mention score creation

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* rebase and fix javadoc comments

* remove server implementation defaults

* fix format for PaperScoreboardFormat

---------

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-02-17 21:22:00 +01:00
Emilia Kond
c113eea77d [ci skip] Fix javadoc mistake in PluginMeta (#10258)
"Schematic versioning" is not a real thing. The intended versioning
scheme is "semantic versioning". Introduced in #8108.
2024-02-17 21:37:55 +02:00
leguan
060fd2cde7 [ci skip] Fix JavaDoc mistake in BlockPistonRetractEvent (#10250) 2024-02-17 20:15:15 +01:00
Jake Potrebic
1f16b25f9e Fire entity knockback event for ownerless tnt (#7171) 2024-02-16 15:44:43 -08:00
Shane Freeder
72004ecb99 Updated Upstream (Bukkit) (#10255)
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:
58ce1b0f Improve compatibility of new DamageSource API
2024-02-16 22:44:38 +00:00
Pedro
d884bac087 Fix BlockState being set to null for damage events (#10252) 2024-02-15 06:05:50 -03:00
Nassim Jahnke
41dcfd64b1 Updated Upstream (Bukkit/CraftBukkit) (#10242)
* 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:
a6a9d2a4 Remove some old ApiStatus.Experimental annotations
be72314c SPIGOT-7300, PR-829: Add new DamageSource API providing enhanced information about entity damage
b252cf05 SPIGOT-7576, PR-970: Add methods in MushroomCow to change stew effects
b1c689bd PR-902: Add Server#isLoggingIPs to get log-ips configuration
08f86d1c PR-971: Add Player methods for client-side potion effects
2e3024a9 PR-963: Add API for in-world structures
a23292a7 SPIGOT-7530, PR-948: Improve Resource Pack API with new 1.20.3 functionality
1851857b SPIGOT-3071, PR-969: Add entity spawn method with spawn reason
cde4c52a SPIGOT-5553, PR-964: Add EntityKnockbackEvent

CraftBukkit Changes:
38fd4bd50 Fix accidentally renamed internal damage method
80f0ce4be SPIGOT-7300, PR-1180: Add new DamageSource API providing enhanced information about entity damage
7e43f3b16 SPIGOT-7581: Fix typo in BlockMushroom
ea14b7d90 SPIGOT-7576, PR-1347: Add methods in MushroomCow to change stew effects
4c687f243 PR-1259: Add Server#isLoggingIPs to get log-ips configuration
22a541a29 Improve support for per-world game rules
cb7dccce2 PR-1348: Add Player methods for client-side potion effects
b8d6109f0 PR-1335: Add API for in-world structures
4398a1b5b SPIGOT-7577: Make CraftWindCharge#explode discard the entity
e74107678 Fix Crafter maximum stack size
0bb0f4f6a SPIGOT-7530, PR-1314: Improve Resource Pack API with new 1.20.3 functionality
4949f556d SPIGOT-3071, PR-1345: Add entity spawn method with spawn reason
20ac73ca2 PR-1353: Fix Structure#place not working as documented with 0 palette
3c1b77871 SPIGOT-6911, PR-1349: Change max book length in CraftMetaBook
333701839 SPIGOT-7572: Bee nests generated without bees
f48f4174c SPIGOT-5553, PR-1336: Add EntityKnockbackEvent
2024-02-11 22:28:00 +01:00
Warrior
0ec98e642c Add getChunkSnapshot includeLightData parameter (#10234) 2024-02-10 22:28:56 +01:00
Emilia Kond
1ba0d87cba Fire BlockPreDispenseEvent for droppers (#10226) 2024-02-10 23:19:22 +02:00
Jake Potrebic
e8e83aefff Properly track the changed item from dispense events (#8658) 2024-02-10 13:17:24 -08:00
Jake Potrebic
d767c37a54 Fix possible StackOverflowError for some dispenser iteractions (#8524) 2024-02-10 12:17:40 -08:00
Lulu13022002
9665ac3903 Fix WaterBottleSplashEvent not forwarding hit result (#10203) 2024-02-10 20:27:29 +01:00
Warrior
a863590fd5 Propagate failed to bind to port error (#10235) 2024-02-10 20:23:50 +01:00
Yannick Lamprecht
8129e8b3d5 itemstack expose tooltip lines (#10185)
* Itemstack Tooltip API

* re-order methods so advanced is first

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-02-10 02:12:50 +01:00
Lulu13022002
bda56c82ff Fix fox drops on death (#8862) 2024-02-10 01:07:10 +01:00
Tamion
8b0207ac93 Add Conduit API (#10195) 2024-02-09 23:03:27 +01:00
Micah Rao
dec84759dc Check for server JARs in plugin directory (#10228) 2024-02-09 16:05:13 -05:00
Tamion
03d5d38a6a Add Arrow/Stinger Removal Time API (#10193) 2024-02-09 21:56:13 +01:00
Moulberry
6591c39509 Fix NotNull locales (#10216)
Two methods returning locales are annotated @NotNull, despite being able
to return null
2024-02-10 04:30:50 +08:00
Jake Potrebic
4f9f09bb9b Lifecycle Event System (#9629)
* registering stuff event system

* simply by removing a ton of unneeded generics

* separate RegistryEvent and RegistrarEvent

* add logic for removing hooks when a plugin is disabled

* cleanup more

* swap around the way things are registered

* block further hook registrations for JavaPlugin

* Slightly more extensible to support registry mod API

* rename some types

* more moving/renaming

* remove 'hook' name

* Rename to 'lifecycle'

* move more impls for the server

* add priorities

* added lock for bootstrap event registration

* slight refactor to allow 'register anywhere' event types

* Move event type list to server impl

* use builder pattern to create event handler configurations

* add some more javadocs

* fix some issues, slight refactors

* call predicate and method renames

* add owner aware events

* rebased and refactored owner aware events

* add single helper method for registering simple handler

* compile fixes

* check owner and fix generics on register helper

* javadoc fixes and a few type renames

* more javadoc fixes

* move service loader file to correct location

* rename to Monitorable and Prioritizable

* add invalidation system for events after running them

* block reloading plugins in certain situations

* update test plugin

* remove dummy events

* rebase
2024-02-09 12:12:01 -08:00
Nassim Jahnke
679f34297e Improve tag parser handling, move hunks out of chunk system patch 2024-02-05 12:31:51 +01:00
Nassim Jahnke
f2da18d62e More provider source fixup 2024-02-02 12:44:09 +01:00
Nassim Jahnke
6fba18bac1 Add missing catch 2024-02-01 11:41:29 +01:00
Nassim Jahnke
e07a036b9f Fix sleeping pos desync 2024-02-01 10:53:15 +01:00
Nassim Jahnke
1cdeef88c5 Small refactor of Paper plugin context preparation 2024-02-01 10:51:29 +01:00
Lulu13022002
f7e469eb2e [ci skip] Cleanup events (#10202) 2024-02-01 10:15:57 +01:00
Rowan
d676979ea0 [ci skip] Fix incorrect documentation for BlockDropItemEvent (#10175)
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-01-27 20:42:46 +01:00
Jake Potrebic
cc0082f248 Properly check if a loot table exists (#10190) 2024-01-27 11:21:18 -08:00
Warrior
adf45d523a Disable memory reserve allocating (#10180) 2024-01-27 20:06:03 +01:00
Luis
dd9c9c8f6c Make spawn egg colours visible (#10158)
Co-authored-by: Yannick Lamprecht <1420893+yannicklamprecht@users.noreply.github.com>
2024-01-27 18:32:05 +00:00
Chase Henderson
c4aa25cd95 Shulker duplicate event (#10135) 2024-01-27 13:13:12 -05:00
Jake Potrebic
a86380bc18 [ci skip] clarify javadocs for Block#getDrops (#10153) 2024-01-27 09:35:09 -08:00
Nassim Jahnke
b63a0c5a8f Fix javadoc errors, remove unused classes 2024-01-26 21:34:40 +01:00
Nassim Jahnke
ad30e27e98 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:
1d522878 PR-966: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
cc01b745 PR-965: Add DragonBattle#setPreviouslyKilled
28e3702f SPIGOT-6921, PR-957: Add methods to remove all enchantments on an ItemStack
8872404e PR-961: Add BlockData#copyTo
4054cc7b PR-956: Add method to get an offline player's location

CraftBukkit Changes:
292ec79e0 SPIGOT-7568: Call EntityChangeBlockEvent for DecoratedPot
b44bf5aa8 SPIGOT-7575: SuspiciousStewMeta creates invalid PotionEffect data
161784713 PR-1340: Centralize the conversion from and to Minecraft / Bukkit registry items even more and add a test case for them
b93c5a30d PR-1338: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
fb973486c SPIGOT-7570: PrepareItemCraftEvent#isRepair() always returns false
c9c24535e PR-1337: Add DragonBattle#setPreviouslyKilled
c8b4da803 SPIGOT-6921, PR-1330: Add methods to remove all enchantments on an ItemStack
95bc1c4f5 PR-1333: Add BlockData#copyTo
36e2f9ce1 PR-1329: Add method to get an offline player's location

Spigot Changes:
c198da22 SPIGOT-7563: Update to latest release of bungeecord-chat
2024-01-26 20:17:06 +01:00
Nassim Jahnke
98775ea8e5 [ci skip] Fixup a few bad comments 2024-01-26 19:41:41 +01:00
Nassim Jahnke
d71804b7f8 Finish moving patches back and improving compilable state 2024-01-25 10:54:46 +01:00
Nassim Jahnke
52438f04a0 [ci skip] Move chunk system patch back 2024-01-24 22:13:08 +01:00
Shane Freeder
49feea0525 Convert average tick value in the GUI to the correct granularity 2024-01-24 16:27:32 +00:00
Nassim Jahnke
8dae5500dd [ci skip] Move chunk system patch a bit back 2024-01-24 15:57:53 +01:00
Nassim Jahnke
2a60c836aa [ci skip] Fixup last commit 2024-01-24 14:05:59 +01:00
Nassim Jahnke
fae4fc60c9 [ci skip] Move chunk system patch back a bit 2024-01-24 13:07:40 +01:00
Nassim Jahnke
24e3f94688 [ci skip] (Mostly) finish adding identifying patch comments 2024-01-24 11:45:17 +01:00
FireInstall
15288309a2 Expose LootTable of DecoratedPot (#10023) 2024-01-23 21:57:17 +01:00
Jake Potrebic
b9b956adb8 Add BlockStateMeta#clearBlockState (#10160) 2024-01-23 12:41:47 -08:00
1stGlitch
85453a2f60 Add world to Entity AddTo/RemoveFrom Events (#10183)
When a plugin listens to the EntityAddToWorld and EntityRemoveFromWorld events, I don't believe there is currently any method of directly obtaining which world the entity was actually added to/removed from. Using event.getEntity().getWorld() works in many cases, but not all. Specifically, when an entity is teleported from one world to another, the location of the entity is updated prior to the removal event being called. This means that when an entity goes through a nether/end portal or is teleported between worlds with a command, a plugin listening to the EntityRemoveFromWorldEvent has no way of determining which world the entity was actually removed from (without relying on other events).

To resolve this, I've added the world as a field in the events along with a getter to retrieve it. I also removed an unused import and made the documentation more clear on the event behaviour when chunks load/unload.
2024-01-23 15:17:14 -05:00
Nassim Jahnke
cd30cd6d41 Move diffs around to compile without later ones applied 2024-01-23 18:01:39 +01:00
Nassim Jahnke
091f54138b [ci skip] Move some disruptive patches back 2024-01-23 15:43:48 +01:00
Nassim Jahnke
88d3d87993 [ci skip] Add more patch identifying comments 2024-01-23 14:34:17 +01:00
Nassim Jahnke
e433c8696b [ci skip] Move some disruptive patches back 2024-01-23 12:06:27 +01:00
Nassim Jahnke
5dec86e71c [ci skip] Move some disruptive patches back 2024-01-22 21:04:08 +01:00
Nassim Jahnke
94e0370bed [ci skip] Add more patch identifying comments 2024-01-22 19:01:10 +01:00
Nassim Jahnke
2a2cdc2d1a [ci skip] Add more patch identifying comments 2024-01-22 18:04:55 +01:00
Nassim Jahnke
b088c37fc1 [ci skip] Add more patch identifying comments 2024-01-21 19:37:09 +01:00
Nassim Jahnke
bc99c40604 [ci skip] Add more patch identifying comments, cleanup 2024-01-21 17:39:05 +01:00
Nassim Jahnke
db4ed47134 [ci skip] Add more identifying patch comments 2024-01-21 13:56:22 +01:00
Nassim Jahnke
0571a6438e [ci skip] Add more identifying patch comments 2024-01-21 12:53:04 +01:00
Nassim Jahnke
f6609428b6 [ci skip] Add more identifying patch comments 2024-01-21 12:11:43 +01:00
Nassim Jahnke
dee90322eb [ci skip] Add more identifying patch comments 2024-01-20 23:13:41 +01:00
Shane Freeder
e34d100c9c Async world data IO saving (#10171)
Co-authored-by: Cryptite <cryptite@gmail.com>
2024-01-20 21:51:15 +00:00