At the time this was re-added, there was concern around how the JIT would handle the system property that enabled it. This shouldn't be a problem, and as such we no longer need to block access to it. The Vanilla Method Profiler will not provide much to most users however there is no harm in providing it as an option. For most users, the recommended and supported method for determining performance issues with Paper will continue to be Timings.
45 lines
1.8 KiB
Diff
45 lines
1.8 KiB
Diff
From 8a9c03adf99ca8e4f43009560601ab56346fd67b Mon Sep 17 00:00:00 2001
|
|
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
|
Date: Sun, 11 Jun 2017 16:30:30 -0500
|
|
Subject: [PATCH] PlayerAttemptPickupItemEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
|
|
index ae4910b4..0b7fc327 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityItem.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityItem.java
|
|
@@ -8,6 +8,7 @@ import org.apache.logging.log4j.Logger;
|
|
import org.bukkit.event.entity.EntityPickupItemEvent;
|
|
import org.bukkit.event.player.PlayerPickupItemEvent;
|
|
// CraftBukkit end
|
|
+import org.bukkit.event.player.PlayerAttemptPickupItemEvent; // Paper
|
|
import com.destroystokyo.paper.HopperPusher; // Paper
|
|
|
|
// Paper start - implement HopperPusher
|
|
@@ -334,6 +335,22 @@ public class EntityItem extends Entity implements HopperPusher {
|
|
int remaining = i - canHold;
|
|
boolean flyAtPlayer = false; // Paper
|
|
|
|
+ // Paper start
|
|
+ if (this.pickupDelay <= 0) {
|
|
+ PlayerAttemptPickupItemEvent attemptEvent = new PlayerAttemptPickupItemEvent((org.bukkit.entity.Player) entityhuman.getBukkitEntity(), (org.bukkit.entity.Item) this.getBukkitEntity(), remaining);
|
|
+ this.world.getServer().getPluginManager().callEvent(attemptEvent);
|
|
+
|
|
+ flyAtPlayer = attemptEvent.getFlyAtPlayer();
|
|
+ if (attemptEvent.isCancelled()) {
|
|
+ if (flyAtPlayer) {
|
|
+ entityhuman.receive(this, i);
|
|
+ }
|
|
+
|
|
+ return;
|
|
+ }
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
if (this.pickupDelay <= 0 && canHold > 0) {
|
|
itemstack.setCount(canHold);
|
|
// Call legacy event
|
|
--
|
|
2.14.3
|
|
|