Кстати да. LuaExportBeforeNextFrame() полезнее.
Вот немного упрощенный кусок моего кода (до упрощения он работал, после не проверял :) )
function moveSomething()
local buf, err
buf, err = mySocket:receive('*l') -- Получаем
-- io.write(string.format("%s\n", buf)) -- собственный лог
if buf ~= nil then
---запись в массив
numbers = {}
local first = 1
local s, e = string.find(buf, "%-?%d+%.%d+", first) -- подстрока вида xxx.xxx или -xxx.xxx, то бишь действительное число
local i = 0
while s ~=nil do
-- io.write(string.format("sub = %s\n", string.sub(buf, s, e))) -- собственный лог
numbers[i] = tonumber(string.sub(buf, s, e))
-- io.write(string.format("numbers[%d] = %f\n", i, numbers[i])) -- собственный лог
first = e
s, e = string.find(buf, "%-?%d+%.%d+", first)
i = i + 1
end
for j=0, i-1 do
LoSetCommand(2001+i, numbers[i])
end
else
-- io.write(string.format("At time %.3f Error: %s\n", t, err)) -- собственный лог
end
end
function LuaExportBeforeNextFrame()
if connected then
moveSomething()
end
end