From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Cryptite Date: Mon, 10 Apr 2023 08:46:54 -0500 Subject: [PATCH] AntiXray Bypass diff --git a/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java index 42fdce97d99618a53f2e9c51804ff2205b574f69..7e8d58e3481be2d7ebbe5fe388d61932479e7721 100644 --- a/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java +++ b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java @@ -165,6 +165,7 @@ public final class ChunkPacketBlockControllerAntiXray extends ChunkPacketBlockCo @Override public boolean shouldModify(ServerPlayer player, LevelChunk chunk) { + if (player.getBukkitEntity().hasAntiXrayBypass()) return false; // Slice return !usePermission || !player.getBukkitEntity().hasPermission("paper.antixray.bypass"); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java index a39ca2dc5c57fecc5df2b6dd8918f6943af04487..e77beae68b89f4cc66eb5564933dea3c363e93e2 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -194,6 +194,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { private static final boolean DISABLE_CHANNEL_LIMIT = System.getProperty("paper.disableChannelLimit") != null; // Paper - add a flag to disable the channel limit private long lastSaveTime; // Paper end + private boolean antiXrayBypass; // Slice public CraftPlayer(CraftServer server, ServerPlayer entity) { super(server, entity); @@ -2740,6 +2741,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } // Paper end + // Slice start + public boolean hasAntiXrayBypass() { + return this.antiXrayBypass; + } + + @Override + public void toggleAntiXrayBypass(boolean bypass) { + this.antiXrayBypass = bypass; + } + // Slice end + @Override public void updateCommands() { if (this.getHandle().connection == null) return;