From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Date: Mon, 11 Sep 2023 15:47:19 -0400 Subject: [PATCH] Reduce canSee work Co-authored by: Martijn Muijsers Co-authored by: MachineBreaker diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java index c3b9a9904f7b34df3dbd0a25e52946ab45f0f4d6..859708f1ab4b9f1bd318ca08c73cb67b1c3fe010 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -993,17 +993,19 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl for (int i = 0, len = entities.size(); i < len; ++i) { Entity entity = entities.get(i); - if (checkCanSee && source instanceof net.minecraft.server.level.ServerPlayer && entity instanceof net.minecraft.server.level.ServerPlayer - && !((net.minecraft.server.level.ServerPlayer) source).getBukkitEntity().canSee(((net.minecraft.server.level.ServerPlayer) entity).getBukkitEntity())) { - continue; - } - + // Leaf - move up // !entity1.dead && entity1.i && (entity == null || !entity1.x(entity)); // elide the last check since vanilla calls with entity = null // only we care about the source for the canSee check if (entity.isRemoved() || !entity.blocksBuilding) { continue; } + // Leaf end + + if (checkCanSee && source instanceof net.minecraft.server.level.ServerPlayer && entity instanceof net.minecraft.server.level.ServerPlayer + && !((net.minecraft.server.level.ServerPlayer) source).getBukkitEntity().canSee(((net.minecraft.server.level.ServerPlayer) entity).getBukkitEntity())) { + continue; + } if (net.minecraft.world.phys.shapes.Shapes.joinIsNotEmpty(voxelshape, net.minecraft.world.phys.shapes.Shapes.create(entity.getBoundingBox()), net.minecraft.world.phys.shapes.BooleanOp.AND)) { return false;