Commit Graph

402 Commits

Author SHA1 Message Date
Mart
88a3a87015 Configurable xp orb merge group count (#12503) 2025-05-03 20:51:19 +02:00
Pedro
6f1f5b67e0 Fix ArmorStand items for canceled EntityDeathEvent (#12288)
Co-authored-by: Tamion <70228790+notTamion@users.noreply.github.com>
2025-05-02 23:19:15 +02:00
TonytheMacaroni
1074237311 Pass correct draw strength for EntityShootBowEvent (#12308) 2025-05-02 16:05:50 -04:00
Pedro
d637ae85dd Fix NoSuchElementException in EntityTransformEvent for slimes (#12510) 2025-05-02 21:15:58 +02:00
Shane Freeder
cb3ffd0b4a Don't store empty PDCs on raids 2025-05-02 20:02:34 +01:00
Shane Freeder
93246a0730 Fix errors when loading raid files without a PDC 2025-05-02 19:43:06 +01:00
Pedro
5acfdd6af4 Fix save/load NaN Entity Motion (#12269) 2025-04-30 19:53:32 +02:00
Bjarne Koll
ed322043d0 Clone blockpos in InsideBlockEffectApplier record 2025-04-14 18:31:39 +02:00
KioProject
91bfb6fb7e Fix freeze locked (#12434) 2025-04-14 11:47:27 +02:00
Bjarne Koll
8f62e0fb31 Correctly order getArmorContents
Mojangs EQUIPMENT_SLOT_MAPPING uses an Int2ObjectArrayMap and hence
technically does provide iteration stability, however it is filled from
a MapN, which destroys the well order of the entries.
To iterate from smallest to largest inventory index correctly, this
commit introduces a sorted array based on the EQUIPMENT_SLOT_MAPPING.
2025-04-13 11:41:59 +02:00
Nassim Jahnke
f00727c57e 1.21.5
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com>
Co-authored-by: MiniDigger | Martin <admin@minidigger.dev>
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
Co-authored-by: Noah van der Aa <ndvdaa@gmail.com>
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
Co-authored-by: Tamion <70228790+notTamion@users.noreply.github.com>
Co-authored-by: Warrior <50800980+Warriorrrr@users.noreply.github.com>
2025-04-12 17:27:00 +02:00
Pedro
f225858235 Fix firework entity not being removed when FireworkExplodeEvent is cancelled (#12268)
* Fix Firework not removed when FireworkExplodeEvent is canceled

* JUnit require pass null

* tweaks
2025-03-24 00:20:14 +01:00
Mart
bb1beda67b feat: add event to wind charge explode (#12248)
* feat: add event to wind charge explode

* fix: use correct parameters

* feat: allow setters to work

* fix: use consts

* Unify paper comments

---------

Co-authored-by: Warrior <50800980+Warriorrrr@users.noreply.github.com>
2025-03-17 10:54:49 +01:00
Lulu13022002
a6ce734fd0 Fix zombie villager not dropping item once cured (#12230) 2025-03-07 23:13:25 -05:00
Dylan
8de7e356fa Add null check to level ref in Entity constructor (#12218) 2025-03-03 17:46:20 +01:00
okx-code
0a6e7435b3 Fix invulnerability damage and armour (#12190) 2025-02-26 14:06:42 +01:00
Lulu13022002
9b9f046f41 Remove broken code (#12171) 2025-02-25 22:14:21 +01:00
Tamion
60394c5b98 Fix PlayerReadyArrowEvent cancellation desync (#12111) 2025-02-16 21:44:08 +01:00
TonytheMacaroni
2a4a115432 Add EntityEquipmentChangedEvent (#12011) 2025-02-16 20:46:59 +01:00
Creeam
a3781ff3be Separate tick count to ensure vanilla parity (#12077) 2025-02-16 20:46:37 +01:00
Lulu13022002
7bee99714a Cleanup damage source a bit (#12106) 2025-02-16 20:14:00 +01:00
Pedro
cb25c0cf31 [ci skip] Fix annotation fields used in NMS getBukkitEntity (#12120) 2025-02-16 19:17:26 +01:00
Tamion
072a8317b2 Add proper attached blocks API to AbstractArrow (#12099) 2025-02-12 23:13:07 +01:00
Lulu13022002
1a04e96ab7 Fix EntityBreedEvent cancellation (#12046) 2025-02-08 20:59:13 +01:00
Lulu13022002
51acc802b8 Prevent duplicate raider in RaidSpawnWaveEvent list (#12040) 2025-02-08 20:55:57 +01:00
Roni Äikäs
cb6c57e0f8 Fix Squid and Dolphin spawn height (#12045) 2025-02-08 20:24:07 +01:00
Spottedleaf
e2f0efd1af Remove nms.Entity#isChunkLoaded
This method was used pre 1.17 era where an Entity was explicitly
tied to a (then called) Chunk's entity slices. If an entity
was not inside a Chunk, then it was considered invalid as
it was not possible to save the entity.

In 1.17+, entities are now tied to a separately tracked entity
section management system. This system is far more reliable now
as it no longer requires a full chunk load to properly track
entities for saving. As a result, an Entity if inside the world
is always attached to some entity chunk section (except in rare
cases in Vanilla which are fixed in Moonrise).

As a result, whether the chunk the entity is in is loaded is no
longer an indication of whether they are tracked in the world
and we can reliably infer that the entity is correctly in the
world through the valid field alone.

Additionally drop the isInWorld() check, as valid=true implies
isInWorld=true. More importantly, the isInWorld() check invokes
getHandle which may trip a thread check on Folia. This will fix
World#getEntities() and friends exploding on Folia.

However, World#getEntities() on Folia still cannot reliably return
all entities in the world as actions such as cross-region
(not cross-world) teleporting will remove entities from the world.
2025-01-28 17:33:48 -08:00
EnZaXD
fb5b173c6a Add PlayerClientLoadedWorldEvent (#11940) 2025-01-25 21:47:08 +01:00
Bjarne Koll
6b7650d81b Only add goat horn once (#12001) 2025-01-22 18:20:24 +01:00
Bjarne Koll
eeec611b9d Fix zombie villager infection chance hunk (#11974)
Dropped during hardfork, now moved to a false-ed out if statement to
prevent dropping in future updates.
2025-01-14 17:15:47 +01:00
Nassim Jahnke
9746d73ade Add back known movement check 2025-01-12 15:29:07 +01:00
Warrior
b34ae4fb3c Fix wolves ignoring result of damage event (#11932) 2025-01-08 21:46:58 +01:00
ChromMob
6ab13521b7 Improve performance of PoiCompetitorScan by unrolling stream (#11871) 2025-01-04 21:23:21 +01:00
Strokkur24
93a3df085c Extend HumanEntity#dropItem API (#11810) 2024-12-28 23:47:21 +01:00
Bjarne Koll
e0abc5f85d Do not spawn fire for visual lightning (#11845) 2024-12-28 14:58:22 +01:00
SoSeDiK
aac246ae29 Expand on entity serialization API (#11807) 2024-12-27 00:08:00 +01:00
Bjarne Koll
17d76ae42b Correctly die when cancelling EntityResurrectEvent (#11785)
The existing logic in LivingEntity#checkTotemDeathProtection completes
by checking whether the death protection component is null or not.
In cases where the event was cancelled, the component needs to be nulled
out to prevent the method from returning true, causing the player to
properly die.
2024-12-23 19:38:10 +01:00
Owen
188124bcc3 Fix totems negating incorrect item (#11776) 2024-12-22 23:58:01 -05:00
Bjarne Koll
f8bf600375 Fix potion effect type removal (#11778)
An incorrectly updated hunk attempted to remove the MobEffectInstance
from the active effect map instead of the Holder<MobEffect> as the
parameter name was changed from holder to effect during hardfork.
2024-12-23 04:51:58 +01:00
Nassim Jahnke
3b0b3a0aef and some more 2024-12-21 13:45:04 +01:00
Nassim Jahnke
82216a59fe Apply some feature patches to files instead
They're small and/or really shouldn't be left unapplied
2024-12-21 13:21:47 +01:00
Nassim Jahnke
e0593e9286 More diff/changed variable name cleanup 2024-12-21 12:15:25 +01:00
Lulu13022002
2213ce5bbc fix enderpearl across portals 2024-12-20 21:22:58 +01:00
Nassim Jahnke
f3c1eb3dc0 More param name fixes 2024-12-20 12:45:19 +01:00
Nassim Jahnke
42a2ccff55 Remove dead diff, some name/diff cleanup 2024-12-20 12:00:24 +01:00
Owen1212055
2935905ced Small sculk cleanup
Don't check for empty items anymore in FishingHook.

Removes some diff + we handle it gracefully in add fresh entity
2024-12-19 20:44:24 -05:00
Lulu13022002
25a7793b9c drop duplicate block update 2024-12-19 22:12:09 +01:00
Lulu13022002
5922e6334b fix allowPermanentBlockBreakExploits config 2024-12-18 23:35:47 +01:00
Lulu13022002
dce53e05b8 fix bogged dropping shears instead of mushrooms 2024-12-18 19:37:10 +01:00
Lulu13022002
6126012369 readd beacon effect cause 2024-12-18 19:29:39 +01:00