Commit Graph

5282 Commits

Author SHA1 Message Date
PepperCode1
9f4055d993 Fix harming potion dupe
EntityLiving#applyInstantEffect() immediately kills the player and drops their inventory.
Before this patch, instant effects would be applied before the potion ItemStack is removed and replaced with a glass bottle. This caused the potion ItemStack to be dropped before it was supposed to be removed from the inventory. It also caused the glass bottle to be put into a dead player's inventory.
This patch makes it so that instant effects are applied after the potion ItemStack is removed, and the glass bottle is only put into the player's inventory if the player is not dead. Otherwise, the glass bottle is dropped on the ground.
2020-12-31 18:43:21 +01:00
Aikar
7bfb781ff3
Additional Block Material API's
Faster version for isSolid() that utilizes NMS's state for isSolid instead of the slower
process to do this in the Bukkit API

Material#isSolid uses a large switch statement which isn't as performant vs a simple boolean return

Adds API for buildable, replaceable, burnable too.
2020-12-30 19:43:45 -05:00
Aikar
0eaffd0082
Micro Optimize DataBits
There was 2 unnecessary lines of code in a core method used for DataBits
that repeatedly calculated a static value.

We now just precalculate that in the constructor and reuse the value instead.

This is a micro optimization, but this is some of the hottest code in the server so
it should provide some minor gains as well as improve inlining.

Additionally, to further help inlining, mark the DataBits methods as final.
2020-12-30 14:02:44 -05:00
jmp
8ccb7fd679 Add and implement cancellable TargetHitEvent for when Target Blocks are hit by Projectiles 2020-12-29 16:28:47 +01:00
Aikar
0507b5d7f6
[Auto] Updated Upstream (CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
b5e5adc42 SPIGOT-6296: Server crashes when burning something at y-level 0
2020-12-28 16:57:08 -05:00
Aikar
1c2571224e
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2020-12-28 07:31:48 -05:00
Jake Potrebic
2b312dfbe2 Add OBSTRUCTED result to BedEnterResult enum 2020-12-28 13:18:38 +01:00
Aikar
a5201ac989
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2020-12-28 07:11:59 -05:00
Jake Potrebic
fb7503399a added PlayerTradeEvent 2020-12-28 13:07:48 +01:00
Aikar
e4633ca277
[Auto] Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
f4a9ed36 SPIGOT-6273: Expose ItemFrame ItemDropChance through API

CraftBukkit Changes:
72c5e7477 SPIGOT-6273: Expose ItemFrame ItemDropChance through API
2020-12-27 17:07:01 -05:00
Aikar
a23be44da0
[Auto] Updated Upstream (CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
9f2b92e58 SPIGOT-6292: LivingEntity.setNoDamageTicks no longer functions
2020-12-27 16:37:02 -05:00
Mariell
e40ea889dc
[CI-SKIP] Deprecate the view distance APIs on Player (#4945) 2020-12-27 11:37:37 +00:00
Shane Freeder
d9fd54e16c Do not crash from invalid ingredient lists in VillagerAcquireTradeEvent 2020-12-27 11:31:49 +00:00
Toshimichi0915
24388381ad Fix lead duplication 2020-12-25 12:46:00 +01:00
Matthew Miller
0bdfb01589 Add API to get Tile Entities in a Chunk by Predicate 2020-12-24 10:27:49 +01:00
Jake Potrebic
4643944343
fix book page limit length (#4932) 2020-12-23 22:52:56 +00:00
Aikar
98a702c7d5
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2020-12-22 18:07:03 -05:00
Mark Vainomaa
cab361600b Expose LivingEntity hurt direction 2020-12-22 23:57:07 +01:00
Shane Freeder
7ef05fbd8a Do not perform neighbour updates when using debug stick (Fixes #2134)
CB blindly drops any update flags when recording block modifications,
this causes the debug stick to blindly update neighbouring blocks on usage
in order to control this, we will special case this item, however, this
ideally should be fixed by recording the actual update flags used,
but will induce ABI breaks...

This patch also maintains the behavior of the BlockPlaceEvent, this
behavior will NOT be guaranteed in the future, however.
2020-12-22 22:45:10 +00:00
Aikar
a70924789b
[Auto] Updated Upstream (CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
6917945f0 SPIGOT-6289: Fix setting entity equipment
2020-12-22 16:02:19 -05:00
Aikar
c83a661f6e
Optimize Dynamic#get Missing Keys
get was calling toString() on every NBT object that was ever asked for an optional
key from the object to build a string for the error text.

When done on large NBT objects, this was using a ton of computation time building the
JSON representation of the NBT object.

Now we will just skip the value when 99.9999% of the time the text is never even printed.
2020-12-21 11:03:36 -05:00
Shane Freeder
abca14ff96 Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
6f9fe1d9 #562: Add API to set equipment silently
bcddb754 SPIGOT-6256: Add method to check if the entity is in water

CraftBukkit Changes:
878b4375 #772: Add API to set equipment silently
22d7fcc9 SPIGOT-6256: Add method to check if the entity is in water
2020-12-21 07:56:22 +00:00
Bastian Oppermann
d5f3458c8c
Adjust bStats data sending delay (#4914)
Many servers tend to restart at a fixed time at xx:00 which causes an
uneven distribution of requests on the bStats backend. To circumvent
this problem, this commit introduces some randomness to the initial
and second delay.
2020-12-20 15:41:00 +00:00
MiniDigger
de31e8c709
Remove Paper's UnsafeUtils (#4913) 2020-12-19 21:14:37 +01:00
Simon Gardling
4e16d36e29 Fix typo in 0368-Asynchronous-chunk-IO-and-loading.patch 2020-12-19 11:52:54 +01:00
Kyle Wood
8e0ed41f3b
Update Paperclip (again) 2020-12-18 22:38:18 -08:00
Kyle Wood
6817c0ebc7
Update Paperclip 2020-12-18 22:19:36 -08:00
Aikar
9623b5f19c
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2020-12-17 16:57:03 -05:00
BillyGalbreath
fe5f035db7 Fix CraftSound backwards compatibility 2020-12-17 22:53:39 +01:00
MiniDigger
fb36f15d6c
Let some more packets be send immediately, closes #4140 (#4896)
Signed-off-by: MiniDigger <admin@minidigger.me>
2020-12-16 17:16:03 -05:00
cakoyo
ede41fe163 Emancipate more features to PlayerHandshakeEvent
* The hostname and socket address was not null when the event fired, but the event does not provide the value, the change allows plugins to use the old value.
* Since `proxyLogicEnabled` will be checked after the event fired, to check the config value will allow plugins to modify it during the event handling.

Signed-off-by: MiniDigger <admin@minidigger.me>
2020-12-16 21:52:21 +01:00
Aikar
3fdeba1f5c
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2020-12-16 15:26:55 -05:00
Fruxz
5fc07bd634 Maded Title-Objects directy sendable to targets 2020-12-16 21:21:00 +01:00
ysl3000
e7b9a478e9 Player Chunk Load/Unload Events
Co-authored-by: Mariell <proximyst@proximyst.com>
2020-12-16 20:23:35 +01:00
BillyGalbreath
1d0cfc0cc2 MC-4 Fix item position desync 2020-12-16 20:09:05 +01:00
Shane Freeder
458db6206d Limit auto recipe packets 2020-12-14 03:18:46 +00:00
Aikar
9c9583cd2b
[Auto] Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
8f495b8d #564: Add method to get max world size

CraftBukkit Changes:
768d7fc2d #773: Add method to get max world size

Spigot Changes:
628435a8 #103: Add async catchers to Chunk#getEntities
2020-12-12 19:42:05 -05:00
BillyGalbreath
31ac45a0a2 Fix curing villager makes equipment disappear 2020-12-10 19:31:19 +01:00
Shane Freeder
cc04948176 Tick inactive goal selectors 2020-12-09 20:31:08 +00:00
MiniDigger
c19ec63941 fix 4878 by always calling events using bukkit singleton 2020-12-09 21:13:32 +01:00
BillyGalbreath
5d216be1d7
Fix MC-181190 curing zombie villager discount exploit (#4871) 2020-12-08 22:56:22 -05:00
Jake Potrebic
3dc82c2008
deprecate IllegalPacketEvent (#4867) 2020-12-07 23:51:55 -08:00
William Blake Galbreath
9a129fa99a Add #getEligibleHumans to SkeletonHorseTrapEvent 2020-12-05 15:51:56 +01:00
Mariell Hoversholm
b5e23c7a62 Fix merging spawning values 2020-12-05 15:03:04 +01:00
Jake Potrebic
a932e8ad75 Turn off spigot verbose world by default 2020-12-05 14:15:00 +01:00
MiniDigger
8ced89f654 Fix Delegation to vanilla chunk gen
This broke in 1.16.1, when upstream changed stuff around and introduced this delegate field.

Closes #4097
2020-12-05 13:59:18 +01:00
Jake Potrebic
684b6ea40b
fixed bug in jvm checker (#4845) 2020-12-04 19:58:24 -08:00
Kyle Wood
f15abda562
Enable Multi-Release plugin jar support
Fixes #4841
2020-12-04 15:57:46 -08:00
Aikar
31a6e3f898
[Auto] Updated Upstream (CraftBukkit)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
5b747147e Increase outdated build delay
2020-12-03 03:37:01 -05:00
Kyle Wood
eb89fd5dea
Add warning for servers not running on Java 11 2020-12-02 22:27:03 -08:00