From fb2de0ffbad0ded86277ab42d911980fe51a33e2 Mon Sep 17 00:00:00 2001 From: Dominilk <108392199+Dominilk01@users.noreply.github.com> Date: Sun, 29 Mar 2026 01:08:06 +0100 Subject: [PATCH 1/2] fix --- api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java b/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java index 0d3630f..1b53206 100644 --- a/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java +++ b/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java @@ -121,8 +121,8 @@ public void clearTracked() { * @return true if the user passed and did not fail any rules, false otherwise */ public boolean canSpawnFor(User user, WrapperEntity entity) { - if (entity.getViewerRules().stream().anyMatch(rule -> rule.shouldSee(user))) return true; - return globalRules.stream().anyMatch(rule -> rule.shouldSee(user)); + if (entity.getViewerRules().stream().allMatch(rule -> rule.shouldSee(user))) return true; + return globalRules.stream().allMatch(rule -> rule.shouldSee(user)); } /** From 9b192e75eed38450c509b4209087e34fc7f0245d Mon Sep 17 00:00:00 2001 From: Dominilk <108392199+Dominilk01@users.noreply.github.com> Date: Sun, 29 Mar 2026 01:25:45 +0100 Subject: [PATCH 2/2] allMatch is weird on empty list --- api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java b/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java index 1b53206..3431e08 100644 --- a/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java +++ b/api/src/main/java/me/tofaa/entitylib/ve/ViewerEngine.java @@ -121,7 +121,7 @@ public void clearTracked() { * @return true if the user passed and did not fail any rules, false otherwise */ public boolean canSpawnFor(User user, WrapperEntity entity) { - if (entity.getViewerRules().stream().allMatch(rule -> rule.shouldSee(user))) return true; + if (!entity.getViewerRules().isEmpty() && entity.getViewerRules().stream().allMatch(rule -> rule.shouldSee(user))) return true; return globalRules.stream().allMatch(rule -> rule.shouldSee(user)); }