From acc4d12f4bedd37e3958e67f60b2203a77f7bc32 Mon Sep 17 00:00:00 2001 From: helixhorned Date: Wed, 5 Mar 2014 21:12:57 +0000 Subject: [PATCH] LunaCON: fix 'getincangle'. git-svn-id: https://svn.eduke32.com/eduke32@4362 1a8010ca-5511-0410-912e-c29ae57300e0 --- polymer/eduke32/source/lunatic/control.lua | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/polymer/eduke32/source/lunatic/control.lua b/polymer/eduke32/source/lunatic/control.lua index 4188bf3e2..1a91d74e5 100644 --- a/polymer/eduke32/source/lunatic/control.lua +++ b/polymer/eduke32/source/lunatic/control.lua @@ -1611,14 +1611,13 @@ end function _angdiff(a1, a2) a1 = band(a1, 2047) a2 = band(a2, 2047) - -- a1 and a2 are in [0, 2047] - if (abs(a2-a1) < 1024) then - return abs(a2-a1) + + if (abs(a2-a1) >= 1024) then + if (a2 > 1024) then a2 = a2 - 2048 end + if (a1 > 1024) then a1 = a1 - 2048 end end - -- |a2-a1| >= 1024 - if (a2 > 1024) then a2=a2-2048 end - if (a1 > 1024) then a1=a1-2048 end - -- a1 and a2 is in [-1023, 1024] + + -- a1, a2 are in [-1023, 1024] return a2-a1 end