From 2a131102df7e04a1b16745f7963f986dd03712f1 Mon Sep 17 00:00:00 2001 From: fullwall Date: Sat, 13 Jun 2020 00:18:59 +0800 Subject: [PATCH] Check for range equality in random lookclose --- .../main/java/net/citizensnpcs/trait/LookClose.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/main/src/main/java/net/citizensnpcs/trait/LookClose.java b/main/src/main/java/net/citizensnpcs/trait/LookClose.java index 19723f1a6..8026c15fe 100644 --- a/main/src/main/java/net/citizensnpcs/trait/LookClose.java +++ b/main/src/main/java/net/citizensnpcs/trait/LookClose.java @@ -106,6 +106,10 @@ public class LookClose extends Trait implements Toggleable, CommandConfigurable return lookingAt == null; } + private boolean isEqual(float[] array) { + return Math.abs(array[0] - array[1]) < 0.001; + } + private boolean isPluginVanished(Player player) { for (MetadataValue meta : player.getMetadata("vanished")) { if (meta.asBoolean()) { @@ -134,8 +138,10 @@ public class LookClose extends Trait implements Toggleable, CommandConfigurable private void randomLook() { Random rand = new Random(); - float pitch = rand.doubles(randomPitchRange[0], randomPitchRange[1]).iterator().next().floatValue(), - yaw = rand.doubles(randomYawRange[0], randomYawRange[1]).iterator().next().floatValue(); + float pitch = isEqual(randomPitchRange) ? randomPitchRange[0] + : rand.doubles(randomPitchRange[0], randomPitchRange[1]).iterator().next().floatValue(); + float yaw = isEqual(randomYawRange) ? randomYawRange[0] + : rand.doubles(randomYawRange[0], randomYawRange[1]).iterator().next().floatValue(); Util.assumePose(npc.getEntity(), yaw, pitch); }