From ebb1b1607d3508f9706832519c4fb51621929c6b Mon Sep 17 00:00:00 2001 From: themode Date: Fri, 21 Aug 2020 16:09:26 +0200 Subject: [PATCH] Do not compute target block stage increase each tick --- src/main/java/net/minestom/server/entity/Player.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/minestom/server/entity/Player.java b/src/main/java/net/minestom/server/entity/Player.java index bf9a14c7c..3c47f2887 100644 --- a/src/main/java/net/minestom/server/entity/Player.java +++ b/src/main/java/net/minestom/server/entity/Player.java @@ -309,9 +309,12 @@ public class Player extends LivingEntity implements CommandSender { final boolean processStage = targetBreakDelay < 0 || targetBlockBreakCount >= targetBreakDelay; - // Negative value should skip abs(value) stage - final byte stageIncrease = (byte) (targetBreakDelay > 0 ? 1 : Math.abs(targetBreakDelay)); + // Check if the player did finish his current break delay if (processStage) { + + // Negative value should skip abs(value) stage + final byte stageIncrease = (byte) (targetBreakDelay > 0 ? 1 : Math.abs(targetBreakDelay)); + // Should increment the target block stage if (targetCustomBlock.enableMultiPlayerBreaking()) { // Let the custom block object manages the breaking