geforkt von Mirrors/Paper
aa52bf9e33
Mojang made some changes to priorities in 1.17 and it seems that these changes conflict with the changes made in this patch, which in some cases appears to cause excessive rescheduling of tasks. This, however, is not confirmed as such but seems to be the behavior that we're seeing to cause this issue, if mojang has adopted the changes we suggested, then a good chunk of this patch may be unneeded, but, this needs a much better look than I'm currently able to do
28 Zeilen
1.2 KiB
Diff
28 Zeilen
1.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: kennytv <jahnke.nassim@gmail.com>
|
|
Date: Tue, 25 Aug 2020 13:48:33 +0200
|
|
Subject: [PATCH] Add PlayerItemCooldownEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/item/ServerItemCooldowns.java b/src/main/java/net/minecraft/world/item/ServerItemCooldowns.java
|
|
index 47283d2a49209839002212e663a503a82ea86587..ce026600b3b5c846d991a0dfe599708caf2a2962 100644
|
|
--- a/src/main/java/net/minecraft/world/item/ServerItemCooldowns.java
|
|
+++ b/src/main/java/net/minecraft/world/item/ServerItemCooldowns.java
|
|
@@ -10,6 +10,16 @@ public class ServerItemCooldowns extends ItemCooldowns {
|
|
this.player = player;
|
|
}
|
|
|
|
+ // Paper start
|
|
+ @Override
|
|
+ public void addCooldown(Item item, int duration) {
|
|
+ io.papermc.paper.event.player.PlayerItemCooldownEvent event = new io.papermc.paper.event.player.PlayerItemCooldownEvent(this.player.getBukkitEntity(), org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(item), duration);
|
|
+ if (event.callEvent()) {
|
|
+ super.addCooldown(item, event.getCooldown());
|
|
+ }
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
@Override
|
|
protected void onCooldownStarted(Item item, int duration) {
|
|
super.onCooldownStarted(item, duration);
|