9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-19 15:09:25 +00:00
Files
Leaf/leaf-server/minecraft-patches/features/0216-Remove-streams-on-updateConnectedPlayersWithinRange.patch
hayanesuru 23b7b02eee optimize chunk map (#438)
* rebase

* optimize LivingEntity#travel

* cleanup

* Replace fluid height map

* reuse array list in Entity#collide

* cleanup

* fix fire and liquid collision shape

* fix checkInside

* inline betweenClosed

* cleanup

* optimize getOnPos

* optimize equals in getOnPos

* update mainSupportingBlockPos on dirty

* cleanup

* rename

* merge same patch

* rebase and remove properly

* [ci skip] cleanup

* rebase and rebuild

* fix async locator

* remove async locator

* cleanup

* rebase

---------

Co-authored-by: Taiyou06 <kaandindar21@gmail.com>
2025-08-19 20:48:26 +02:00

34 lines
1.7 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Taiyou06 <kaandindar21@gmail.com>
Date: Sat, 22 Mar 2025 11:22:23 +0100
Subject: [PATCH] Remove streams on updateConnectedPlayersWithinRange
diff --git a/net/minecraft/world/level/block/entity/vault/VaultSharedData.java b/net/minecraft/world/level/block/entity/vault/VaultSharedData.java
index 036087f8085f05b43703ceca3413e0b8ac0a412b..514d8167ccbcc00de95d34e5ef2203dcaf824da1 100644
--- a/net/minecraft/world/level/block/entity/vault/VaultSharedData.java
+++ b/net/minecraft/world/level/block/entity/vault/VaultSharedData.java
@@ -65,11 +65,17 @@ public class VaultSharedData {
}
void updateConnectedPlayersWithinRange(ServerLevel level, BlockPos pos, VaultServerData serverData, VaultConfig config, double deactivationRange) {
- Set<UUID> set = config.playerDetector()
- .detect(level, config.entitySelector(), pos, deactivationRange, false)
- .stream()
- .filter(uuid -> !serverData.getRewardedPlayers().contains(uuid))
- .collect(Collectors.toSet());
+ // Leaf start - Remove streams on updateConnectedPlayersWithinRange
+ java.util.List<UUID> detectedPlayers = config.playerDetector().detect(level, config.entitySelector(), pos, deactivationRange, false);
+ Set<UUID> set = new ObjectLinkedOpenHashSet<>();
+
+ for (UUID uuid : detectedPlayers) {
+ if (!serverData.getRewardedPlayers().contains(uuid)) {
+ set.add(uuid);
+ }
+ }
+ // Leaf end - Remove streams on updateConnectedPlayersWithinRange
+
if (!this.connectedPlayers.equals(set)) {
this.connectedPlayers = set;
this.markDirty();