Ensure parity with old techhider by suppressing select packets

This commit is contained in:
D4rkr34lm
2026-05-22 19:39:57 +02:00
parent e11f3f7cbc
commit 54fa47bd99
3 changed files with 11 additions and 0 deletions
@@ -28,4 +28,5 @@ public interface AccessPrivilegeProvider {
boolean isPlayerPrivilegedToAccessBlock(Player p, int blockX, int blockY, int blockZ, Block block);
boolean isPlayerPrivilegedToAccessEntity(Player p, int entityId);
boolean isPlayerPrivilegedToAccessBlockEntity(Player p, int blockX, int blockY, int blockZ, BlockEntityType<?> type);
boolean isPlayerPrivalegedToPerformAction(Player p);
}
@@ -331,6 +331,9 @@ public abstract class TechHider implements AccessPrivilegeProvider {
return null;
}
});
TinyProtocol.instance.addFilter(ServerboundUseItemOnPacket.class, (p, packet) -> isPlayerPrivalegedToPerformAction(p) ? packet : null);
TinyProtocol.instance.addFilter(ServerboundInteractPacket.class, (p, packet) -> isPlayerPrivalegedToPerformAction(p) ? packet : null);
}
private Packet<?> processPacket(Player player, Packet<?> packet) {
@@ -563,4 +566,5 @@ public abstract class TechHider implements AccessPrivilegeProvider {
public abstract boolean isPlayerPrivilegedToAccessBlock(Player p, int blockX, int blockY, int blockZ, Block block);
public abstract boolean isPlayerPrivilegedToAccessEntity(Player p, int entityId);
public abstract boolean isPlayerPrivilegedToAccessBlockEntity(Player p, int blockX, int blockY, int blockZ, BlockEntityType<?> type);
public abstract boolean isPlayerPrivalegedToPerformAction(Player p);
}