--Вариант в игре
function sampev.onPlayerSync(playerId, data)
lua_thread.create(function()
if settings.maincfg.sendTargets then
local vecX = data.position.x + (data.moveSpeed.x * 100) -- Увеличенный вектор, для наглядности
local vecY = data.position.y + (data.moveSpeed.y * 100) -- Увеличенный вектор, для наглядности
local vecZ = data.position.z + (data.moveSpeed.z * 100) -- Увеличенный вектор, для наглядности
local wX1, wY1 = convert3DCoordsToScreen(data.position.x, data.position.y, data.position.z)
local wX2, wY2 = convert3DCoordsToScreen(vecX, vecY, vecZ)
renderDrawLine(wX1, wY1, wX2, wY2, 1, 0xFFFFFFFF)--Для игры. Вектор скорости отрисуется корректно.
print("PlayerSyncData:", data.position.x, data.position.y, data.position.z, data.moveSpeed.x * 100, data.moveSpeed.y * 100, data.moveSpeed.z * 100)
--printf здесь выдаст разный по направлению результат вектора скорости
end
end)
end
--Вариант для бота
function sampev.onPlayerSync(playerId, data)
newTask(function()
if settings.maincfg.sendTargets then
local sendData = {
data.position.x,
data.position.y,
data.position.z,
data.position.x + (data.moveSpeed.x * 100),
data.position.y + (data.moveSpeed.y * 100),
data.position.z + (data.moveSpeed.z * 100)
}
renderOnClient(data)--Функция отрабатывает корректно, искажений при передаче нет. Вектор скорости отрисуется некорректно, из-за неверных данных от бота
print("PlayerSyncData:", data.position.x, data.position.y, data.position.z, data.moveSpeed.x * 100, data.moveSpeed.y * 100, data.moveSpeed.z * 100)
--printf здесь выдаст разный по направлению результат вектора скорости
end
end)
end