Commit Graph
36 Commits
Author SHA1 Message Date
Brokkonaut fb91090522 Call EntityDropItemEvent when a container item drops its contents (#11441) 2024-09-27 18:27:14 +02:00
Brokkonaut 0049c47717 Don't check if we can see non-visible entities 2023-10-21 20:53:33 +01:00
Brokkonaut 246a5a3002 Make water animal spawn height configurable (#7135) 2022-01-07 11:38:51 +01:00
Brokkonaut a6ef388655 Don't check if we can see non-visible entities 2023-10-21 20:52:57 +01:00
Brokkonaut a6dd9f7a68 Make water animal spawn height configurable 2021-12-18 08:26:55 +01:00
Brokkonaut 3e0623bf9b Fix SkullMeta.setPlayerProfile() (#2833) 2020-01-10 19:07:29 +01:00
Brokkonaut bd8cab5d23 Remove "Fire EntityCombustEvent for phantoms" patch as it is fixed in Spigot (#1805)
It is fixed here: https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/commits/438556243d976e6123308d7ef414fe246180be06
2019-01-16 19:06:39 +01:00
Brokkonaut 4c9478551c Don't modify item tag if interaction is canceled (#1589)
The item tag is stored before executing the interaction and restored before handling the
resulting events. If the event was not canceled and the ItemStack is not modified in the
event, the new tag is set back to the new one afterwards. This is similar to the handling
of the item amount.

This fixes a bug where tools lose durability when the interaction is canceled and another bug
where tools become completely repaired when they should break but the interaction was canceled.
2018-10-20 16:03:35 +02:00
Brokkonaut 62630cfdc6 Fire EntityCombustEvent for phantoms (#1573) 2018-10-18 05:04:21 +02:00
Brokkonaut 3ef552d105 Sometimes World.save() did not save the whole world. (#1538)
flag = true is a force save of the whole world (for example World.save()), this should ignore the current queue size.
2018-10-05 17:23:20 +02:00
Brokkonaut 390139846a Avoid dimension id collisions (#1487)
getDimensionId() returns the dimension id - 1. So without this patch
we would reuse an existing dimension id, if some other dimension was
unloaded before.

In Spigot this is nearly invisible because DimensionManager has no equals(),
so dimension id collisions just create 2 worlds with the same dimension.

The PaperWorldMap (Added in
https://github.com/PaperMC/Paper/blob/master/Spigot-Server-Patches/0376-Optimize-Server-World-Map.patch ) changes this - Now the dimension is overwritten if there is some collision,
what causes players to teleport to incorrect worlds, World checks will no longer work
and many more evil things.
2018-09-25 16:53:52 +02:00
Brokkonaut af737481c2 The disconnect on packet spam must be called sync (#1452)
And it was called twice, probably forgotten in the patch.
2018-09-18 04:04:47 +02:00
Brokkonaut e9cbd7b668 [1.13] Skull block profile api (#1308)
Adds #1307
2018-08-06 07:24:55 +02:00
Brokkonaut 875c84df6f Fix broken block iteration (#1269)
Fixes https://github.com/PaperMC/Paper/issues/1259 and generation of the end pillars
2018-07-25 03:39:30 +02:00
Brokkonaut df8c42d4ad 1.13: Resend bed on cancelled interaction (#1245)
Minecraft 1.13 requires resending the block for both parts of the bed
2018-07-21 14:47:22 +02:00
Brokkonaut 651753d370 Add World.getEntity(UUID) API
This is the best way to get an entity when the world and its UUID are known.
It is faster than Server.getEntity(UUID) because it does not have to iterate all worlds
2018-07-03 16:16:01 +02:00
Brokkonaut d47caaad6a Improve ProjectileHitEvent to include the BlockFace where the projectile has hit (#1182) 2018-06-30 05:50:17 +02:00
Brokkonaut fbe69b61a9 Add EntityKnockbackByEntityEvent (#1162)
This event is called when an entity receives knockback by another entity. The knockback can be modified in the event. If the event is cancelled the entity is not knocked back.
2018-06-21 03:59:11 +02:00
Brokkonaut b77a601ae0 Avoid int overflow in lootable refill time calculations (#1146)
Fixes https://github.com/PaperMC/Paper/issues/1141
2018-06-13 20:15:31 +02:00
Brokkonaut bfd81cc275 Configurable sprint interruption on attack (#1085)
If the sprint interruption is disabled players continue sprinting when they attack entities.
2018-04-18 15:46:48 +02:00
Brokkonaut 7f21066ba1 Add missing registerPlayer in CraftPlayer.showPlayer0 (#1051) 2018-03-20 17:27:00 +01:00
Brokkonaut 3672d832d4 [CI-SKIP] Add Brokkonaut to MIT list (#1042) 2018-03-11 04:38:50 +01:00
Brokkonaut 44aa7d0ef4 Update CB 2017-11-09 03:36:59 +01:00
Brokkonaut 2509fce30a Send attack SoundEffects only to players who can see the attacker 2017-10-31 03:29:53 +01:00
Brokkonaut 56763aad0d Replace HashSet with fastutil's ObjectOpenHashSet in HashTreeSet
HashSet sometimes uses compareTo() instead of equals() and this breaks the comparison of net.minecraft.server.NextTickListEntry (the only place where HashTreeSet is used).

In this cases duplicate entries could be added to the HashSet of HashTreeSet, because NextTickListEntry.compareTo() does not return 0, even if NextTickListEntry.equals() returns true.

ObjectOpenHashSet never uses compareTo(), so the inconsistencies of NextTickListEntry cause no problems.

Fixes https://github.com/PaperMC/Paper/issues/588
2017-10-20 04:43:02 +02:00
Brokkonaut db39b99f26 I forgot the // Paper comment 2017-08-12 02:23:35 +02:00
Brokkonaut 3c154072d3 MC-94186 Fix dragon egg falling in lazy chunks
Fixes falling dragon eggs in lazy chunks fall to the block below the last empty block and replacing that block with them.

See also https://bugs.mojang.com/browse/MC-94186
2017-08-11 03:32:07 +02:00
Brokkonaut 75618c5da8 Make chunk unload targetSize more aggressive
Re: GH-597
2017-02-08 15:11:43 -06:00
Brokkonaut 449309fc3d Fix an AIOOBE in inventory handling
Closes GH-404
2016-09-04 16:49:29 -05:00
Brokkonaut 044978f8cc Update upstream CB/S 2016-06-09 19:28:16 +02:00
Brokkonaut 7749dcdd84 Implement World.getEntity(UUID) API 2018-07-03 16:08:14 +02:00
991875920d Add entity knockback events
- EntityKnockbackEvent
- EntityPushedByEntityAttackEvent
- EntityKnockbackByEntityEvent

Co-authored-by: aerulion <aerulion@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2018-06-18 15:46:23 +02:00
Brokkonaut 5a528af05e Configurable sprint interruption on attack
If the sprint interruption is disabled players continue sprinting when they attack entities.
2018-04-14 20:20:46 +02:00
Brokkonaut e0661a5f13 Send attack SoundEffects only to players who can see the attacker 2017-10-31 03:26:18 +01:00
Brokkonaut f8562d67ca Add World.getEntity(UUID) API 2018-07-03 16:07:16 +02:00
e95376162f Add entity knockback events
- EntityKnockbackEvent
- EntityPushedByEntityAttackEvent
- EntityKnockbackByEntityEvent

Co-authored-by: aerulion <aerulion@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2018-06-18 15:40:39 +02:00