diff --git a/lua/autorun/trackassembly_init.lua b/lua/autorun/trackassembly_init.lua index a7af09e2..574882e0 100644 --- a/lua/autorun/trackassembly_init.lua +++ b/lua/autorun/trackassembly_init.lua @@ -84,7 +84,7 @@ local asmlib = trackasmlib; if(not asmlib) then -- Module present ------------ CONFIGURE ASMLIB ------------ asmlib.InitBase("track","assembly") -asmlib.SetOpVar("TOOL_VERSION","8.747") +asmlib.SetOpVar("TOOL_VERSION","8.748") asmlib.SetIndexes("V" ,1,2,3) asmlib.SetIndexes("A" ,1,2,3) asmlib.SetIndexes("WV",1,2,3) diff --git a/lua/trackassembly/trackasmlib.lua b/lua/trackassembly/trackasmlib.lua index cb56001f..7d5af5dc 100644 --- a/lua/trackassembly/trackasmlib.lua +++ b/lua/trackassembly/trackasmlib.lua @@ -2357,13 +2357,13 @@ function RegisterPOA(stData, ivID, sP, sO, sA) if(not IsHere(TransferPOA(tOffs.A, "A"))) then LogInstance("Angle nonassignable "..GetReport2(iID, stData.Slot)); return nil end -------------------- Point -------------------- - if(sP:sub(1,1) == sD) then -- Point is disabled then use origin + if(tOffs.O.Slot or sP:sub(1,1) == sE) then -- Origin transform trigger + stData.Tran = true; ReloadPOA(); tOffs.P.Slot = sP -- Store transform + LogInstance("Point transform "..GetReport3(iID, sP, stData.Slot)) + elseif(sP:sub(1,1) == sD) then -- Point is disabled then use origin ReloadPOA(tOffs.O[cvX], tOffs.O[cvY], tOffs.O[cvZ]) elseif(IsNull(sP) or IsBlank(sP)) then -- Empty value use origin ReloadPOA(tOffs.O[cvX], tOffs.O[cvY], tOffs.O[cvZ]) - elseif(tOffs.O.Slot or sP:sub(1,1) == sE) then -- Origin transform trigger - stData.Tran = true; ReloadPOA(); tOffs.P.Slot = sP -- Store transform - LogInstance("Point transform "..GetReport3(iID, sP, stData.Slot)) else -- When the point is empty use the origin otherwise decode the value if(not DecodePOA(sP)) then -- Try to decode the point when present LogInstance("Point mismatch "..GetReport2(iID, stData.Slot)) end