diff --git a/src/main/java/ac/grim/grimac/checks/impl/badpackets/BadPacketsZ.java b/src/main/java/ac/grim/grimac/checks/impl/badpackets/BadPacketsZ.java index cd617d93e3..d8e401e8db 100644 --- a/src/main/java/ac/grim/grimac/checks/impl/badpackets/BadPacketsZ.java +++ b/src/main/java/ac/grim/grimac/checks/impl/badpackets/BadPacketsZ.java @@ -4,6 +4,7 @@ import ac.grim.grimac.checks.CheckData; import ac.grim.grimac.checks.type.PacketCheck; import ac.grim.grimac.player.GrimPlayer; +import ac.grim.grimac.utils.anticheat.MessageUtil; import com.github.retrooper.packetevents.PacketEvents; import com.github.retrooper.packetevents.event.PacketReceiveEvent; import com.github.retrooper.packetevents.manager.server.ServerVersion; @@ -39,10 +40,6 @@ private boolean shouldExempt(final Vector3i pos) { return player.getClientVersion().isOlderThan(ClientVersion.V_1_14_4) || getBlockDamage(player, pos) < 1; } - private String formatted(Vector3i vec) { - return vec == null ? "null" : vec.x + ", " + vec.y + ", " + vec.z; - } - public void handle(PacketReceiveEvent event, WrapperPlayClientPlayerDigging dig) { if (dig.getAction() == DiggingAction.START_DIGGING) { final Vector3i pos = dig.getBlockPosition(); @@ -57,7 +54,7 @@ public void handle(PacketReceiveEvent event, WrapperPlayClientPlayerDigging dig) final Vector3i pos = dig.getBlockPosition(); if (shouldExempt(pos)) { - lastCancelledBlock = null; + lastCancelledBlock = pos; lastLastBlock = null; lastBlock = null; return; @@ -66,7 +63,7 @@ public void handle(PacketReceiveEvent event, WrapperPlayClientPlayerDigging dig) if (!pos.equals(lastBlock)) { // https://github.com/GrimAnticheat/Grim/issues/1512 if (player.getClientVersion().isOlderThan(ClientVersion.V_1_14_4) || (!lastBlockWasInstantBreak && pos.equals(lastCancelledBlock))) { - if (flagAndAlert("action=CANCELLED_DIGGING" + ", last=" + formatted(lastBlock) + ", pos=" + formatted(pos))) { + if (flagAndAlert("action=CANCELLED_DIGGING" + ", last=" + MessageUtil.toUnlabledString(lastBlock) + ", pos=" + MessageUtil.toUnlabledString(pos))) { if (shouldModifyPackets()) { event.setCancelled(true); player.onPacketCancel(); @@ -87,7 +84,7 @@ public void handle(PacketReceiveEvent event, WrapperPlayClientPlayerDigging dig) // when a player looks away from the mined block, they send a cancel, and if they look at it again, they don't send another start. (thanks mojang!) if (!pos.equals(lastCancelledBlock) && (!lastBlockWasInstantBreak || player.getClientVersion().isOlderThan(ClientVersion.V_1_14_4)) && !pos.equals(lastBlock)) { - if (flagAndAlert("action=FINISHED_DIGGING" + ", last=" + formatted(lastBlock) + ", pos=" + formatted(pos))) { + if (flagAndAlert("action=FINISHED_DIGGING" + ", last=" + MessageUtil.toUnlabledString(lastBlock) + ", pos=" + MessageUtil.toUnlabledString(pos))) { if (shouldModifyPackets()) { event.setCancelled(true); player.onPacketCancel();