70ce6ce831
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
30 lines
1.5 KiB
Diff
30 lines
1.5 KiB
Diff
From e37f1eb51738e8092a3111dcd21a3ef5bf2ea0c9 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sun, 24 Mar 2019 18:09:20 -0400
|
|
Subject: [PATCH] don't go below 0 for pickupDelay, breaks picking up items
|
|
|
|
vanilla checks for == 0
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
|
|
index ddd1f6307..7e9256314 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityItem.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityItem.java
|
|
@@ -59,6 +59,7 @@ public class EntityItem extends Entity {
|
|
// CraftBukkit start - Use wall time for pickup and despawn timers
|
|
int elapsedTicks = MinecraftServer.currentTick - this.lastTick;
|
|
if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks;
|
|
+ this.pickupDelay = Math.max(0, this.pickupDelay); // Paper - don't go below 0
|
|
if (this.age != -32768) this.age += elapsedTicks;
|
|
this.lastTick = MinecraftServer.currentTick;
|
|
// CraftBukkit end
|
|
@@ -145,6 +146,7 @@ public class EntityItem extends Entity {
|
|
// CraftBukkit start - Use wall time for pickup and despawn timers
|
|
int elapsedTicks = MinecraftServer.currentTick - this.lastTick;
|
|
if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks;
|
|
+ this.pickupDelay = Math.max(0, this.pickupDelay); // Paper - don't go below 0
|
|
if (this.age != -32768) this.age += elapsedTicks;
|
|
this.lastTick = MinecraftServer.currentTick;
|
|
// CraftBukkit end
|
|
--
|
|
2.21.0
|
|
|