Commit Graph

3091 Commits

Author SHA1 Message Date
Warrior
e616498ed7 Add Vault block API (#12068) 2025-02-12 23:15:22 +01:00
Lulu13022002
a06179a018 Update entity effect (#12104) 2025-02-12 23:14:07 +01:00
Tamion
072a8317b2 Add proper attached blocks API to AbstractArrow (#12099) 2025-02-12 23:13:07 +01:00
David
3bd69f2e56 [ci skip] Enhance javadoc for World#setAutoSave method (#12088)
Clarify that disabling auto-save does not stop all saving operations. This addition explicitly mentions that the world will still save on shutdown and explains the intended purpose of the method.
2025-02-10 23:07:46 +01:00
Lulu13022002
eff617b8f8 [ci skip] Deprecate Server#setSpawnRadius (#12024) 2025-02-08 22:10:08 +01:00
Jason Penilla
61312fdb59 Switch to jspecify annotations for Player (#12042)
Fixes compilation issues for plugins from recent API addition with double-annotated parameter (JetBrains annotations are type-use and parameter, so nonnull array of nonnull elements ends up with duplicates)
2025-02-08 20:57:35 +01:00
David
53ae5c95b7 Make Sittable interface extend Entity (#12016) 2025-02-08 20:16:23 +01:00
Lulu13022002
e0711af5d5 Deprecate UnsafeValues#getSpawnEggLayerColor (#12041) 2025-01-31 13:17:45 +01:00
Lulu13022002
d4a957849c Experimental annotation changes (#12028) 2025-01-30 20:02:14 +01:00
caramel
7e21cb8181 fix PlayerChangedMainHandEvent javadoc (#12020)
* fix PlayerChangedMainHandEvent javadoc

* Obsolete

---------

Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
2025-01-26 14:00:32 -08:00
masmc05
3af5e77132 Add Player#give (#11995) 2025-01-26 21:19:00 +01:00
Tamion
939bb7828f Add RayTraceConfigurationBuilder (#11907) 2025-01-25 20:58:16 +01:00
Creeam
336ea9dfeb Check for empty when sending equipment changes (#12008) 2025-01-25 20:04:47 +01:00
masmc05
e82f7e6bb6 [ci skip] Fix Inventory#setMaxStackSize jd (#11968) 2025-01-14 13:43:28 +01:00
masmc05
85d0040f57 [ci skip] Fix getTemperature javadocs (#11967)
In 1.15 spigot changed the behavior of all temperature methods to always return height adjusted temperature.
Correctly reflect this in the javadocs.
2025-01-14 13:42:34 +01:00
Bjarne Koll
1bb3677651 Remove deprecation from EntityRemoveEvent (#11961)
Bukkits entity remove event is called at a different time than the
existing paper event, specifically it is called after an entity has been
stored during chunk unloads.

This means that, while the bukkit event can have a defined reason, it
does not allow modification to the entity data. In this regard it
differs from the paper implementation and prevents developers from using
the paper event as an alternative.

Co-authored-by: TonytheMacaroni <tonythemacaroni123@gmail.com>
2025-01-13 17:51:58 +01:00
masmc05
3709150bc1 Expose all possible block data states (#11958) 2025-01-12 14:56:56 -08:00
Lulu13022002
2ea6aee343 Deprecate Turtle#isDigging (#11959) 2025-01-12 12:49:25 -08:00
masmc05
08ac057fda Rename getPotentialBedLocation to getPotentialRespawnLocation (#11950) 2025-01-12 02:17:46 +01:00
Noah van der Aa
ed75b0e54b Disallow calling JavaPlugin#getCommand during onEnable for Paper plugins (#11914)
Co-authored-by: leguan <longboard.noah@gmail.com>
2025-01-11 22:46:36 +01:00
Miles
c94922514a MenuType API addition InventoryView Builders (#11816) 2025-01-11 20:21:24 +01:00
Jake Potrebic
ac3aaa248b Don't use delayed registries in impl anywhere (#11918) 2025-01-11 20:02:28 +01:00
Tamion
19ddbeff9e Fix InventoryAction wrong for Bundles (#11902) 2025-01-11 19:50:24 +01:00
Pedro
5e14504f20 [ci skip] Add missing deprecated docs for isEnabledByFeature (#11938) 2025-01-09 21:08:28 +01:00
Pedro
f367f107cf Add rotation helpers to Location (#11908) 2025-01-04 21:54:27 +01:00
powercas_gamer
bdfad1c838 Add sendRich/PlainMessage methods to Server (#11872) 2024-12-31 19:47:57 -05:00
David
1e4669e8be [ci skip] Clarify loot table behavior when set to null. (#11861)
Updated documentation to specify that setting a null loot table resets it to its default behavior.
2024-12-30 11:07:40 +01:00
Nicolas RAYNAUD
60edd611f2 [ci skip] Fix spelling of ignition's word into javadoc (#11864) 2024-12-29 22:30:51 +01:00
Bjarne Koll
887f3f74d1 [ci skip] Replace FQN with import in EventExecutor 2024-12-29 00:34:45 +01:00
Hannes Greule
287eb52fa4 Use hidden classes for event executors (#11848)
Static final MethodHandles perform similar to direct calls. Additionally,
hidden classes simplify logic around ClassLoaders as they can be defined
weakly coupled to their defining class loader. All variants of methods
(static, private, non-void) can be covered by this mechanism.
2024-12-29 00:11:09 +01:00
Strokkur24
93a3df085c Extend HumanEntity#dropItem API (#11810) 2024-12-28 23:47:21 +01:00
Jake Potrebic
0629524cb2 Directly build Art (#11813) 2024-12-27 16:07:48 -08:00
Chaosdave34
5c7537cb5c Add DamageType RegistryEvent (#11783) 2024-12-28 00:13:27 +01:00
Jake Potrebic
ca8709b30f Fix more incorrect array nullability annotations (#11836) 2024-12-27 22:24:16 +01:00
SoSeDiK
aac246ae29 Expand on entity serialization API (#11807) 2024-12-27 00:08:00 +01:00
Lulu13022002
3331805d0b Deprecate #furnace_materials item tag (#11823) 2024-12-26 15:24:02 +01:00
Maddy Miller
d85d318951 Fix NullPointerException in PlayerInteractEvent#getClickedPosition (#11827)
Fixes a NullPointerException in PlayerInteractEvent#getClickedPosition

Re: https://github.com/EngineHub/CraftBook/issues/1340
2024-12-26 08:41:37 +00:00
Jake Potrebic
3a479eadd7 Add Registry#getTags (#11795) 2024-12-25 19:39:27 -08:00
masmc05
a07cec16f8 Add effective name to ItemStack (#11770) 2024-12-25 21:56:24 +01:00
Pedro
d568e175ee Port basic lookAt methods from Player to Entity (#11775) 2024-12-24 23:00:07 +01:00
Jake Potrebic
d0d0efee02 Partially revert 083c083188 for Transformation (#11798)
* Partially revert 083c083188 for Transformation

The type is used in a way that requires mutability

* keep copy in ctors
2024-12-23 15:46:17 -08:00
masmc05
62d4130bba [ci skip] Fix Inventory#addItem javadoc mismatch with behaviour (#11782) 2024-12-23 16:20:12 +01:00
Jake Potrebic
083c083188 Fix a bunch more issues arising from mutable types (#11769) 2024-12-22 22:50:00 +01:00
Jake
413751ae2d Update Mob.java (#11757) 2024-12-19 23:14:21 +01:00
Lulu13022002
5922e6334b fix allowPermanentBlockBreakExploits config 2024-12-18 23:35:47 +01:00
kokiriglade
ed6663d2b9 Expanded Art API 2024-11-23 18:08:13 +00:00
Abel
b9a4e9a745 API to allow/disallow tick sleeping 2024-11-12 22:25:35 +01:00
Abel
7c0d854ed3 API to check if the server is sleeping 2024-11-10 16:32:51 +01:00
Bjarne Koll
a47a008ce1 Fix incorrect invulnerability damage reduction
Fixes incorrect spigot handling of the invulnerability damage
reduction applied when an already invulnerable entity is damaged with a
larger damage amount than the initial damage.
Vanilla still damages entities even if invulnerable if the damage to be
applied is larger than the previous damage taken. In that case, vanilla
applies the difference between the previous damage taken and the
proposed damage.

Spigot's damage modifier API takes over the computation of damage
reducing effects, however spigot invokes this handling with the initial
damage before computing the difference to the previous damage amount.
This leads to the reduction values to generally be larger than expected,
as they are computed on the not-yet-reduced value.
Spigot applies these reductions after calling the EntityDamageEvent and
*then* subtracts the previous damage point, leading to the final damage
amount being smaller than expected.

This patch cannot simply call the EntityDamageEvent with the reduced
damage, as that would lead to EntityDamageEvent#getDamage() returning
the already reduced damage, which breaks its method contract.
Instead, this patch makes use of the DamageModifier API, implementing
the last-damage-reduction as a DamageModifier.
2024-11-11 21:35:22 +01:00
Barnaby
14832a70e9 Optimise color distance check in MapPalette by removing floating point math 2024-06-29 12:04:48 +01:00