mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-19 15:09:25 +00:00
remove couple streams
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Taiyou06 <kaandindar21@gmail.com>
|
||||
Date: Mon, 12 May 2025 19:11:16 +0200
|
||||
Subject: [PATCH] Remove streams in MobSensor
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/ai/sensing/MobSensor.java b/net/minecraft/world/entity/ai/sensing/MobSensor.java
|
||||
index bda210b4809a5aade7ab4d0f26fdda4d5f53f619..18c7fe0b39b366d3ac4fd83415953c063e5c562f 100644
|
||||
--- a/net/minecraft/world/entity/ai/sensing/MobSensor.java
|
||||
+++ b/net/minecraft/world/entity/ai/sensing/MobSensor.java
|
||||
@@ -40,7 +40,14 @@ public class MobSensor<T extends LivingEntity> extends Sensor<T> {
|
||||
public void checkForMobsNearby(T sensingEntity) {
|
||||
Optional<List<LivingEntity>> memory = sensingEntity.getBrain().getMemory(MemoryModuleType.NEAREST_LIVING_ENTITIES);
|
||||
if (!memory.isEmpty()) {
|
||||
- boolean flag = memory.get().stream().anyMatch(livingEntity -> this.mobTest.test(sensingEntity, livingEntity));
|
||||
+ boolean flag = false;
|
||||
+ List<LivingEntity> entities = memory.get();
|
||||
+ for (LivingEntity livingEntity : entities) {
|
||||
+ if (this.mobTest.test(sensingEntity, livingEntity)) {
|
||||
+ flag = true;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
if (flag) {
|
||||
this.mobDetected(sensingEntity);
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Taiyou06 <kaandindar21@gmail.com>
|
||||
Date: Mon, 12 May 2025 19:39:03 +0200
|
||||
Subject: [PATCH] Remove streams in TemptingSensor
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/ai/sensing/TemptingSensor.java b/net/minecraft/world/entity/ai/sensing/TemptingSensor.java
|
||||
index 4b3ba795bc18417f983600f1edbc1895ccb7deab..48fef89a7a3286c17a56a842fa44b80797971d2f 100644
|
||||
--- a/net/minecraft/world/entity/ai/sensing/TemptingSensor.java
|
||||
+++ b/net/minecraft/world/entity/ai/sensing/TemptingSensor.java
|
||||
@@ -1,12 +1,13 @@
|
||||
package net.minecraft.world.entity.ai.sensing;
|
||||
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
+import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.function.Predicate;
|
||||
-import java.util.stream.Collectors;
|
||||
import net.minecraft.server.level.ServerLevel;
|
||||
+import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.world.entity.EntitySelector;
|
||||
import net.minecraft.world.entity.PathfinderMob;
|
||||
import net.minecraft.world.entity.ai.Brain;
|
||||
@@ -36,14 +37,21 @@ public class TemptingSensor extends Sensor<PathfinderMob> {
|
||||
protected void doTick(ServerLevel level, PathfinderMob entity) {
|
||||
Brain<?> brain = entity.getBrain();
|
||||
TargetingConditions targetingConditions = TEMPT_TARGETING.copy().range((float)entity.getAttributeValue(Attributes.TEMPT_RANGE));
|
||||
- List<Player> list = level.players()
|
||||
- .stream()
|
||||
- .filter(EntitySelector.NO_SPECTATORS)
|
||||
- .filter(serverPlayer -> targetingConditions.test(level, entity, serverPlayer))
|
||||
- .filter(this::playerHoldingTemptation)
|
||||
- .filter(serverPlayer -> !entity.hasPassenger(serverPlayer))
|
||||
- .sorted(Comparator.comparingDouble(entity::distanceToSqr))
|
||||
- .collect(Collectors.toList());
|
||||
+
|
||||
+ List<ServerPlayer> allPlayers = level.players();
|
||||
+ List<Player> list = new ArrayList<>();
|
||||
+
|
||||
+ for (Player serverPlayer : allPlayers) {
|
||||
+ if (EntitySelector.NO_SPECTATORS.test(serverPlayer) &&
|
||||
+ targetingConditions.test(level, entity, serverPlayer) &&
|
||||
+ this.playerHoldingTemptation(serverPlayer) &&
|
||||
+ !entity.hasPassenger(serverPlayer)) {
|
||||
+ list.add(serverPlayer);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ list.sort(Comparator.comparingDouble(entity::distanceToSqr));
|
||||
+
|
||||
if (!list.isEmpty()) {
|
||||
Player player = list.get(0);
|
||||
// CraftBukkit start
|
||||
Reference in New Issue
Block a user