diff --git a/plugin/src/main/java/com/denizenscript/denizen/scripts/commands/entity/LookCommand.java b/plugin/src/main/java/com/denizenscript/denizen/scripts/commands/entity/LookCommand.java index 04bcea6e5b..cc76ae30d2 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/scripts/commands/entity/LookCommand.java +++ b/plugin/src/main/java/com/denizenscript/denizen/scripts/commands/entity/LookCommand.java @@ -119,7 +119,11 @@ public static void autoExecute(ScriptEntry scriptEntry, else { if (entity.isPlayer()) { Location playerTeleDest = entity.getLocation().clone(); - float relYaw = yawRaw - playerTeleDest.getYaw(); + float relYaw = (yawRaw - playerTeleDest.getYaw()) % 360; + if (relYaw > 180) { + relYaw -= 360; + } + final float actualRelYaw = relYaw; float relPitch = pitchRaw - playerTeleDest.getPitch(); playerTeleDest.setYaw(yawRaw); playerTeleDest.setPitch(pitchRaw); @@ -133,7 +137,7 @@ public static void autoExecute(ScriptEntry scriptEntry, try { for (int i = 0; i < times; i++) { Thread.sleep(ms); - NMSHandler.packetHelper.sendRelativeLookPacket(player, relYaw, relPitch); + NMSHandler.packetHelper.sendRelativeLookPacket(player, actualRelYaw, relPitch); } } catch (Throwable ex) {