Commit Graph

3543 Commits

Author SHA1 Message Date
c94922514a MenuType API addition InventoryView Builders (#11816) 2025-01-11 20:21:24 +01:00
ac3aaa248b Don't use delayed registries in impl anywhere (#11918) 2025-01-11 20:02:28 +01:00
19ddbeff9e Fix InventoryAction wrong for Bundles (#11902) 2025-01-11 19:50:24 +01:00
5e14504f20 [ci skip] Add missing deprecated docs for isEnabledByFeature (#11938) 2025-01-09 21:08:28 +01:00
08fc33ca03 Update CustomTimingsHandler Nag Message (#11923) 2025-01-09 19:02:03 +01:00
f367f107cf Add rotation helpers to Location (#11908) 2025-01-04 21:54:27 +01:00
daddcf6742 Fix JOML javadoc URL (#11883) 2025-01-02 08:15:47 +00:00
bdfad1c838 Add sendRich/PlainMessage methods to Server (#11872) 2024-12-31 19:47:57 -05:00
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
60edd611f2 [ci skip] Fix spelling of ignition's word into javadoc (#11864) 2024-12-29 22:30:51 +01:00
d00344af65 update jb annotations to 26.0.1 (#11860) 2024-12-29 06:53:38 -08:00
887f3f74d1 [ci skip] Replace FQN with import in EventExecutor 2024-12-29 00:34:45 +01:00
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
93a3df085c Extend HumanEntity#dropItem API (#11810) 2024-12-28 23:47:21 +01:00
18da1ae4c0 [ci skip] update DiscoveredDatapack javadoc 2024-12-28 13:49:11 -08:00
feb8756567 Add datapack registration lifecycle event (#11804) 2024-12-28 13:30:43 -08:00
0629524cb2 Directly build Art (#11813) 2024-12-27 16:07:48 -08:00
5c7537cb5c Add DamageType RegistryEvent (#11783) 2024-12-28 00:13:27 +01:00
ca8709b30f Fix more incorrect array nullability annotations (#11836) 2024-12-27 22:24:16 +01:00
13c94e40ad Updated adventure to 4.18.0 (#11809) 2024-12-27 22:04:17 +01:00
953f6f929e Banner pattern registry modification (#11803) 2024-12-26 18:57:34 -05:00
aac246ae29 Expand on entity serialization API (#11807) 2024-12-27 00:08:00 +01:00
af2812fb0f For new registry values, allow copying from existing (#11796)
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-12-26 13:41:15 -08:00
a14c06bbd8 fix annotation test for null marked inner classes (#11826) 2024-12-26 10:22:00 -08:00
3331805d0b Deprecate #furnace_materials item tag (#11823) 2024-12-26 15:24:02 +01:00
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
3a479eadd7 Add Registry#getTags (#11795) 2024-12-25 19:39:27 -08:00
a07cec16f8 Add effective name to ItemStack (#11770) 2024-12-25 21:56:24 +01:00
d568e175ee Port basic lookAt methods from Player to Entity (#11775) 2024-12-24 23:00:07 +01:00
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
62d4130bba [ci skip] Fix Inventory#addItem javadoc mismatch with behaviour (#11782) 2024-12-23 16:20:12 +01:00
63c94c90d9 [ci skip] Comment out update tasks, update comments 2024-12-23 12:29:27 +01:00
eb793c3131 [ci skip] more cleanup from repo reorg 2024-12-22 19:07:17 -08:00
083c083188 Fix a bunch more issues arising from mutable types (#11769) 2024-12-22 22:50:00 +01:00
4c6ea8416b move junit platform dep to -server and -api 2024-12-21 15:10:08 -08:00
a18b1b7ef1 Add capabilities for old API coordinates
This will cause Gradle to throw a selection error when for example paper-api and spigot-api are on the classpath. Users will need to add selection rules or excludes for certain transitive deps to solve this rather than build with a broken classpath.
2024-12-20 15:07:43 -08:00
413751ae2d Update Mob.java (#11757) 2024-12-19 23:14:21 +01:00
49f715fdda update brig in the API and patch cleanup 2024-12-18 18:30:29 -08:00
5922e6334b fix allowPermanentBlockBreakExploits config 2024-12-18 23:35:47 +01:00
ff75689b08 Adjust build for config cache compat 2024-12-12 11:36:57 +01:00
0280fbb374 Disable deprecated annotation test 2024-12-03 15:33:45 +01:00
ed6663d2b9 Expanded Art API 2024-11-23 18:08:13 +00:00
b9a4e9a745 API to allow/disallow tick sleeping 2024-11-12 22:25:35 +01:00
7c0d854ed3 API to check if the server is sleeping 2024-11-10 16:32:51 +01:00
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
14832a70e9 Optimise color distance check in MapPalette by removing floating point math 2024-06-29 12:04:48 +01:00
30b4dedabb DataComponent API
Exposes the data component logic used by vanilla ItemStack to API
consumers as a version-specific API.
The types and methods introduced by this patch do not follow the general
API deprecation contracts and will be adapted to each new minecraft
release without backwards compatibility measures.
2024-04-28 19:53:06 -04:00
Doc
65f5b7a4b7 Add AnvilView#bypassEnchantmentLevelRestriction
Anvils, by default, limit applied enchantment levels to their respective
maximum level. The added API enables plugins to disable this behaviour,
allowing enchantments that are overleveled to be applied via the anvil.
2024-10-06 16:45:20 -03:00
6dfba7e0c7 Add Offline PDC API 2022-07-09 17:17:04 +02:00
11f0f5a80a Void damage configuration API 2024-09-25 04:43:26 -04:00