diff --git a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_20_R2/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_20_R2/PaperweightAdapter.java index cd56dfbb16..78ccfcb3f6 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_20_R2/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_20_R2/PaperweightAdapter.java @@ -863,7 +863,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY //FAWE end ); diff --git a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweAdapter.java index 6b20bc44f8..5c6a53e977 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweAdapter.java @@ -309,7 +309,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweWorldNativeAccess.java index 352e9b9583..bd139a8a55 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightFaweWorldNativeAccess.java @@ -252,7 +252,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -268,7 +271,10 @@ public void run(Object value) { sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.UPDATE) )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightGetBlocks.java index be0203337e..54a8674b6a 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightGetBlocks.java @@ -747,7 +747,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -788,9 +788,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightPlatformAdapter.java index c117164ce0..07e3c61df0 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightPlatformAdapter.java @@ -343,7 +343,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -378,7 +378,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getChunkSource().getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightStarlightRelighter.java index b92835a82c..b99e601708 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R2/PaperweightStarlightRelighter.java @@ -68,7 +68,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL, Unit.INSTANCE); } diff --git a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R3/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R3/PaperweightAdapter.java index c0d9612302..723e71f902 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R3/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R3/PaperweightAdapter.java @@ -862,7 +862,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY //FAWE end ); diff --git a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweAdapter.java index ba8de057b9..673bee813b 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweAdapter.java @@ -308,7 +308,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweWorldNativeAccess.java index 4fb3e04851..6ae47cf56c 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightFaweWorldNativeAccess.java @@ -252,7 +252,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -268,7 +271,10 @@ public void run(Object value) { sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.UPDATE) )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightGetBlocks.java index b08afe5456..3340497955 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightGetBlocks.java @@ -748,7 +748,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -789,9 +789,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightPlatformAdapter.java index 1d12d7b583..a3d908d4f5 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightPlatformAdapter.java @@ -343,7 +343,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -378,7 +378,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getChunkSource().getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightStarlightRelighter.java index a1ce327f9c..c2fb7f73d7 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R3/PaperweightStarlightRelighter.java @@ -68,7 +68,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL, Unit.INSTANCE); } diff --git a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R4/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R4/PaperweightAdapter.java index 970b45faec..cbe85f0bbf 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R4/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext.fawe/v1_20_R4/PaperweightAdapter.java @@ -886,7 +886,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY //FAWE end ); diff --git a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweAdapter.java index dae0b48b92..9d21b284f1 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweAdapter.java @@ -317,7 +317,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweWorldNativeAccess.java index 4fa9988b81..b8f4a8bc5b 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightFaweWorldNativeAccess.java @@ -253,7 +253,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -269,7 +272,10 @@ public void run(Object value) { sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.UPDATE) )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightGetBlocks.java index a03f3d9475..f65f2f6d8b 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightGetBlocks.java @@ -749,7 +749,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -790,9 +790,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightPlatformAdapter.java index 3f59f2bb89..1062fc8f89 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightPlatformAdapter.java @@ -342,7 +342,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -372,7 +372,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getChunkSource().getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightStarlightRelighter.java index c7b61575c8..305bdbfa18 100644 --- a/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_20_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_20_R4/PaperweightStarlightRelighter.java @@ -68,7 +68,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL, Unit.INSTANCE); } diff --git a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_R1/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_R1/PaperweightAdapter.java index a021cccf3f..fda7876561 100644 --- a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_R1/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_R1/PaperweightAdapter.java @@ -887,7 +887,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY //FAWE end ); diff --git a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweAdapter.java index 7d2e9ced35..2b25af0e5f 100644 --- a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweAdapter.java @@ -317,7 +317,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweWorldNativeAccess.java index f7c2dc8e84..bdea87876a 100644 --- a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightFaweWorldNativeAccess.java @@ -253,7 +253,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -269,7 +272,10 @@ public void run(Object value) { sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.UPDATE) )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightGetBlocks.java index 9fbc1ef64e..0604dbf81c 100644 --- a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightGetBlocks.java @@ -746,7 +746,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -824,9 +824,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightPlatformAdapter.java index 9749ed6864..8cffcabeb0 100644 --- a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightPlatformAdapter.java @@ -326,7 +326,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -356,7 +356,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getChunkSource().getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightStarlightRelighter.java index aa7b19b39d..9f37c20a34 100644 --- a/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_21/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_R1/PaperweightStarlightRelighter.java @@ -71,7 +71,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL, Unit.INSTANCE); } diff --git a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_4/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_4/PaperweightAdapter.java index 6873a51229..9b7453599c 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_4/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_4/PaperweightAdapter.java @@ -843,7 +843,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY //FAWE end ); diff --git a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweAdapter.java index 7c6e608ea6..9d9ffa4928 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweAdapter.java @@ -303,7 +303,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweWorldNativeAccess.java index 60a1d5c13a..067358e2b5 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightFaweWorldNativeAccess.java @@ -254,7 +254,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -270,7 +273,10 @@ public void run(Object value) { sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.UPDATE) )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightGetBlocks.java index c2bbe67998..419dd6b587 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightGetBlocks.java @@ -742,7 +742,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -783,9 +783,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightPlatformAdapter.java index 7a8c8afb78..1cfbb1b9fa 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightPlatformAdapter.java @@ -318,7 +318,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -348,7 +348,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightStarlightRelighter.java index 42fa1d6341..18d9e1aea7 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_4/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_4/PaperweightStarlightRelighter.java @@ -71,7 +71,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL, Unit.INSTANCE); } diff --git a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_5/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_5/PaperweightAdapter.java index 381aea3285..35942928dd 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_5/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_5/PaperweightAdapter.java @@ -837,7 +837,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.VALIDATION, SideEffect.ENTITY_AI, SideEffect.EVENTS, - SideEffect.UPDATE + SideEffect.UPDATE, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweAdapter.java index 030fe92d51..c4b9cb3f44 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweAdapter.java @@ -303,7 +303,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweWorldNativeAccess.java index f5a49fbb67..a349c091ef 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightFaweWorldNativeAccess.java @@ -254,7 +254,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -270,7 +273,10 @@ public void run(Object value) { sideEffectSet.shouldApply(SideEffect.UPDATE) ? 0 : 512 )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightGetBlocks.java index 77e918f003..67b7bc82f3 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightGetBlocks.java @@ -742,7 +742,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -783,9 +783,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightPlatformAdapter.java index e2f39600da..e49b862d74 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightPlatformAdapter.java @@ -317,7 +317,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -347,7 +347,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightStarlightRelighter.java index 97f8fed3d7..5733039185 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_5/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_5/PaperweightStarlightRelighter.java @@ -72,7 +72,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL); } diff --git a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_6/PaperweightAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_6/PaperweightAdapter.java index 947e75d9f5..12bfd0e30d 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_6/PaperweightAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/ext/fawe/v1_21_6/PaperweightAdapter.java @@ -866,7 +866,8 @@ private ResourceKey getWorldDimKey(Environment env) { SideEffect.VALIDATION, SideEffect.ENTITY_AI, SideEffect.EVENTS, - SideEffect.UPDATE + SideEffect.UPDATE, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweAdapter.java index e9833694aa..36aa5268da 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweAdapter.java @@ -313,7 +313,8 @@ public BaseBlock getFullBlock(final Location location) { SideEffect.HISTORY, SideEffect.HEIGHTMAPS, SideEffect.LIGHTING, - SideEffect.NEIGHBORS + SideEffect.NEIGHBORS, + SideEffect.PAPER_ANTI_XRAY ); @Override diff --git a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweWorldNativeAccess.java b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweWorldNativeAccess.java index e29ee82dbb..10ee827521 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweWorldNativeAccess.java +++ b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightFaweWorldNativeAccess.java @@ -259,7 +259,10 @@ public void run(Object value) { return; } for (IntPair chunk : toSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; @@ -275,7 +278,10 @@ public void run(Object value) { sideEffectSet.shouldApply(SideEffect.UPDATE) ? 0 : 512 )); for (IntPair chunk : cachedChunksToSend) { - PaperweightPlatformAdapter.sendChunk(chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z()); + PaperweightPlatformAdapter.sendChunk( + chunk, getLevel().getWorld().getHandle(), chunk.x(), chunk.z(), + sideEffectSet != null && sideEffectSet.shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); } } }; diff --git a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightGetBlocks.java b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightGetBlocks.java index d88bd0f3d3..e410396eea 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightGetBlocks.java +++ b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightGetBlocks.java @@ -750,7 +750,7 @@ protected > T internalCall( if (!set .getSideEffectSet() .shouldApply(SideEffect.LIGHTING) || !Settings.settings().LIGHTING.DELAY_PACKET_SENDING || finalMask == 0 && biomes != null) { - this.send(); + this.send(set.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY)); } if (finalizer != null) { finalizer.run(); @@ -791,9 +791,9 @@ private void updateGet( } @Override - public void send() { + public void send(boolean obfuscateAntiXRay) { synchronized (sendLock) { - PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ); + PaperweightPlatformAdapter.sendChunk(new IntPair(chunkX, chunkZ), serverLevel, chunkX, chunkZ, obfuscateAntiXRay); } } diff --git a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightPlatformAdapter.java b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightPlatformAdapter.java index 745c36229f..b59537221b 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightPlatformAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightPlatformAdapter.java @@ -346,7 +346,7 @@ public static ChunkHolder getPlayerChunk(ServerLevel nmsWorld, final int chunkX, } @SuppressWarnings("deprecation") - public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ) { + public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int chunkZ, boolean obfuscateAntiXRay) { ChunkHolder chunkHolder = getPlayerChunk(nmsWorld, chunkX, chunkZ); if (chunkHolder == null) { return; @@ -376,7 +376,7 @@ public static void sendChunk(IntPair pair, ServerLevel nmsWorld, int chunkX, int nmsWorld.getLightEngine(), null, null, - false // last false is to not bother with x-ray + obfuscateAntiXRay ); } else { // deprecated on paper - deprecation suppressed diff --git a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightStarlightRelighter.java b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightStarlightRelighter.java index b347475fea..98d086204b 100644 --- a/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightStarlightRelighter.java +++ b/worldedit-bukkit/adapters/adapter-1_21_6/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_21_6/PaperweightStarlightRelighter.java @@ -72,7 +72,7 @@ protected void postProcessChunks(Set coords) { int x = pos.x; int z = pos.z; if (delay) { // we still need to send the block changes of that chunk - PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z); + PaperweightPlatformAdapter.sendChunk(new IntPair(x, z), serverLevel, x, z, this.obfuscateAntiXRay); } serverLevel.getChunkSource().removeTicketAtLevel(FAWE_TICKET, pos, LIGHT_LEVEL); } diff --git a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/AbstractBukkitGetBlocks.java b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/AbstractBukkitGetBlocks.java index 97d0461cb7..50acdd6dd0 100644 --- a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/AbstractBukkitGetBlocks.java +++ b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/AbstractBukkitGetBlocks.java @@ -52,7 +52,7 @@ protected AbstractBukkitGetBlocks( this.chunkPos = new IntPair(chunkX, chunkZ); } - protected abstract void send(); + protected abstract void send(boolean obfuscateAntiXRay); protected abstract CompletableFuture ensureLoaded(ServerLevel serverLevel); diff --git a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java index b2ff497de3..521f48a6eb 100644 --- a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java +++ b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java @@ -95,11 +95,11 @@ private static void mapPalette( } @Override - public void sendChunk(IChunkGet chunk, int mask, boolean lighting) { - if (!(chunk instanceof AbstractBukkitGetBlocks)) { + public void sendChunk(IChunkGet chunk, int mask, boolean lighting, boolean obfuscateAntiXRay) { + if (!(chunk instanceof AbstractBukkitGetBlocks abstractBukkitGetBlocks)) { throw new IllegalArgumentException("(IChunkGet) chunk not of type BukkitGetBlocks"); } - ((AbstractBukkitGetBlocks) chunk).send(); + abstractBukkitGetBlocks.send(obfuscateAntiXRay); } /** diff --git a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/StarlightRelighter.java b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/StarlightRelighter.java index 6ce77e165d..cd2eeb5560 100644 --- a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/StarlightRelighter.java +++ b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/StarlightRelighter.java @@ -6,6 +6,8 @@ import com.fastasyncworldedit.core.util.MathMan; import com.fastasyncworldedit.core.util.TaskManager; import com.sk89q.worldedit.internal.util.LogManagerCompat; +import com.sk89q.worldedit.util.SideEffect; +import io.papermc.lib.PaperLib; import it.unimi.dsi.fastutil.longs.Long2ObjectLinkedOpenHashMap; import it.unimi.dsi.fastutil.longs.LongArraySet; import it.unimi.dsi.fastutil.longs.LongIterator; @@ -41,10 +43,12 @@ public abstract class StarlightRelighter implements Rel private final ReentrantLock areaLock = new ReentrantLock(); private final NMSRelighter delegate; protected final SERVER_LEVEL serverLevel; + protected final boolean obfuscateAntiXRay; protected StarlightRelighter(SERVER_LEVEL serverLevel, IQueueExtent queue) { this.serverLevel = serverLevel; this.delegate = new NMSRelighter(queue); + this.obfuscateAntiXRay = PaperLib.isPaper() && queue.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY); } protected Set convertChunkKeysToChunkPos(LongSet chunks) { diff --git a/worldedit-core/src/main/java/com/fastasyncworldedit/core/FAWEPlatformAdapterImpl.java b/worldedit-core/src/main/java/com/fastasyncworldedit/core/FAWEPlatformAdapterImpl.java index 9f9e175e7f..973d1ed422 100644 --- a/worldedit-core/src/main/java/com/fastasyncworldedit/core/FAWEPlatformAdapterImpl.java +++ b/worldedit-core/src/main/java/com/fastasyncworldedit/core/FAWEPlatformAdapterImpl.java @@ -1,9 +1,11 @@ package com.fastasyncworldedit.core; import com.fastasyncworldedit.core.queue.IChunkGet; +import org.jetbrains.annotations.ApiStatus; +@ApiStatus.Internal public interface FAWEPlatformAdapterImpl { - void sendChunk(IChunkGet chunk, int mask, boolean lighting); + void sendChunk(IChunkGet chunk, int mask, boolean lighting, boolean obfuscateAntiXRay); } diff --git a/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/processor/lighting/NMSRelighter.java b/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/processor/lighting/NMSRelighter.java index 663144aba7..527ae7195e 100644 --- a/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/processor/lighting/NMSRelighter.java +++ b/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/processor/lighting/NMSRelighter.java @@ -14,6 +14,7 @@ import com.sk89q.worldedit.registry.state.EnumProperty; import com.sk89q.worldedit.registry.state.Property; import com.sk89q.worldedit.util.Direction; +import com.sk89q.worldedit.util.SideEffect; import com.sk89q.worldedit.world.block.BlockState; import com.sk89q.worldedit.world.block.BlockTypes; import com.sk89q.worldedit.world.registry.BlockMaterial; @@ -931,7 +932,10 @@ public void run(Object value) { ChunkHolder chunk = (ChunkHolder) queue.getOrCreateChunk(x, z); chunk.setBitMask(bitMask); chunk.flushLightToGet(); - Fawe.platform().getPlatformAdapter().sendChunk(chunk.getOrCreateGet(), bitMask, true); + Fawe.platform().getPlatformAdapter().sendChunk( + chunk.getOrCreateGet(), bitMask, true, + queue.getSideEffectSet().shouldApply(SideEffect.PAPER_ANTI_XRAY) + ); iter.remove(); } finished.set(true); diff --git a/worldedit-core/src/main/java/com/sk89q/worldedit/util/SideEffect.java b/worldedit-core/src/main/java/com/sk89q/worldedit/util/SideEffect.java index 49d8bc26d7..08edda3c56 100644 --- a/worldedit-core/src/main/java/com/sk89q/worldedit/util/SideEffect.java +++ b/worldedit-core/src/main/java/com/sk89q/worldedit/util/SideEffect.java @@ -24,16 +24,16 @@ import java.util.Locale; public enum SideEffect { - //FAWE start - adjust defaults, add history and heightmaps + //FAWE start - adjust defaults, add history, heightmaps and anti-x-ray HISTORY(State.ON, true), HEIGHTMAPS(State.ON, true), LIGHTING(Settings.settings().LIGHTING.MODE == 0 ? State.OFF : State.ON, true), NEIGHBORS(State.OFF, true), UPDATE(State.OFF, true), - //FAWE end VALIDATION(State.OFF, true), ENTITY_AI(State.OFF, true), EVENTS(State.OFF, true), + PAPER_ANTI_XRAY(State.OFF, true), /** * Internal use only. */ diff --git a/worldedit-core/src/main/resources/lang/strings.json b/worldedit-core/src/main/resources/lang/strings.json index bc0fc39249..9cc029e7b2 100644 --- a/worldedit-core/src/main/resources/lang/strings.json +++ b/worldedit-core/src/main/resources/lang/strings.json @@ -649,6 +649,8 @@ "worldedit.sideeffect.entity_ai.description": "Updates Entity AI paths for the block changes", "worldedit.sideeffect.events": "Mod/Plugin Events", "worldedit.sideeffect.events.description": "Tells other mods/plugins about these changes when applicable", + "worldedit.sideeffect.paper_anti_xray": "Anti-X-Ray Obfuscation", + "worldedit.sideeffect.paper_anti_xray.description": "Obfuscates block changes with Papers anti-x-ray system (if enabled)", "worldedit.sideeffect.state.on": "On", "worldedit.sideeffect.state.delayed": "Delayed", "worldedit.sideeffect.state.off": "Off",