9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-22 08:29:28 +00:00
Files
Leaf/patches/server/0043-Reduce-canSee-work.patch
Dreeam 337a94cda9 Updated Upstream (Paper/Gale/Purpur)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@d1a72ea Updated Upstream (Bukkit/CraftBukkit/Spigot) (#11405)
PaperMC/Paper@0a53f1d Set default drop behavior for player deaths (#11380)
PaperMC/Paper@951e7dd Fix TrialSpawner forgetting assigned mob when placed by player (#11381)
PaperMC/Paper@13a2395 Fix enable-player-collisions playing sounds when set to false (#11390)
PaperMC/Paper@1348e44 Prevent NPE when serializing unresolved profile (#11407)

Gale Changes:
Dreeam-qwq/Gale@f346681 Updated Upstream (Paper)
Dreeam-qwq/Gale@bba1737 Updated Upstream (Paper)

Purpur Changes:
PurpurMC/Purpur@88352c3 Updated Upstream (Paper)
PurpurMC/Purpur@dee41bc Updated Upstream (Paper)
PurpurMC/Purpur@fdfc12e Updated Upstream (Paper)
PurpurMC/Purpur@bc7bcbb Fix elytra durability setting not working properly (#1589)
PurpurMC/Purpur@8af4ea6 Updated Upstream (Paper)
PurpurMC/Purpur@8332fa4 Updated Upstream (Paper)
2024-09-17 01:38:58 -04:00

50 lines
2.9 KiB
Diff

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 <martijnmuijsers@live.nl>
Co-authored by: MachineBreaker <machinebreaker>
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 24ed26286c7e3e45279b6b27cd0a432b37fda4b2..83fcdd4d090bfc8801a640b2a5645313aa946343 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -854,17 +854,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;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 05ddb57f827ebf6c59bba5f1c2652da580e785dd..ab85eaf62ba901ace0ed25773df980a5ac97729a 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -640,6 +640,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return false;
}
OfflinePlayer other = (OfflinePlayer) obj;
+ if (this == obj) return true; // Leaf - reduce canSee work
if ((this.getUniqueId() == null) || (other.getUniqueId() == null)) {
return false;
}