From 19048ed8b5d15f6ecb46f3d90f3b03fb42fcfc1f Mon Sep 17 00:00:00 2001 From: MathemanFlo Date: Wed, 9 Mar 2022 07:53:58 +0100 Subject: [PATCH] Make light angle consistent with other angles --- Sources/arm/ui/UIMenu.hx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Sources/arm/ui/UIMenu.hx b/Sources/arm/ui/UIMenu.hx index ace50bc8..184882f1 100644 --- a/Sources/arm/ui/UIMenu.hx +++ b/Sources/arm/ui/UIMenu.hx @@ -160,10 +160,12 @@ class UIMenu { var lahandle = Id.handle(); lahandle.value = Context.lightAngle / Math.PI * 180; menuAlign(ui); - var newAngle = ui.slider(lahandle, tr("Light Angle"), 0.0, 359.0, true, 1) / 180 * Math.PI; + var newAngle = ui.slider(lahandle, tr("Light Angle"), 0.0, 360.0, true, 1) / 180 * Math.PI; var ldiff = newAngle - Context.lightAngle; if (Math.abs(ldiff) > 0.005) { - Context.lightAngle = newAngle % (2*Math.PI); + if (newAngle < 0) newAngle += (Std.int(-newAngle / (2 * Math.PI)) + 1) * 2 * Math.PI; + else if (newAngle > 2 * Math.PI) newAngle -= Std.int(newAngle / (2 * Math.PI)) * 2 * Math.PI; + Context.lightAngle = newAngle; var m = iron.math.Mat4.identity(); m.self = kha.math.FastMatrix4.rotationZ(ldiff); light.transform.local.multmat(m);