Commit graph

410 commits

Author SHA1 Message Date
Owen
839c6a1845
Fix #11169 (#12706)
This technically fixes the improperly updated patch, and also no longer checks canPickUpLoot.
2025-06-20 19:22:27 -04:00
Owen
6a51c44ec2
Cleanup Primed TNT Fix (#12704)
This option should probably be removed as its a descendant of an option that allows "old tnt cannon" behavior before ~1.9 But this improves the fix so properly update the velocity/position rather than the questionable way it was doing it before.
2025-06-20 18:22:37 -04:00
Owen
4b3f967e49
Improve Fix MC-44654 (#12703)
This more properly implement spigot's fix for teleportation area effect clouds, now however supporting many other entity types specified in this bug report.

Currently, this is not an issue for (all) hanging blocks since they have a fix identical to this inside of setPos. Note however the client does not nicely support moving these entities anyways.
2025-06-20 16:02:24 -04:00
Bjarne Koll
a24f9b204c
1.21.6 dev
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Co-authored-by: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com>
Co-authored-by: Noah van der Aa <ndvdaa@gmail.com>
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2025-06-17 15:45:25 +02:00
Shane Freeder
4eda045b15
Backport fix for MC-296337 (Fixes #12617) (#12619) 2025-06-06 19:05:30 +01:00
Pedro
220b57add4
Fixs and Improvements for EndermanEscapeEvent (#12570) 2025-05-24 21:53:02 +02:00
Namiu/うにたろう
d683970d40
Add FishHookStateChangeEvent (#12165) 2025-05-15 20:17:32 +02:00
David
cbcf75a57c
Update visual fire handling with TriState support (#12303)
Replaced the Boolean-based visual fire system with TriState for improved clarity and flexibility, enabling three distinct states: TRUE, FALSE, and NOT_SET. Deprecated older methods in favor of new ones and updated internal handling to reflect these changes. Adjusted serialization and deserialization logic to accommodate the new TriState implementation.
2025-05-07 23:33:41 +02:00
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