Как нарисовать линию до какого-либо обьекта?

FiveNine

Новичок
Автор темы
9
0
Версия SA-MP
  1. Любая
Как нарисовать линию на экране, например к ближайшему транспорту?
 
Решение
Как нарисовать линию на экране, например к ближайшему транспорту?
Lua:
function main()
    while true do wait(0)
        if doesCharExist(PLAYER_PED) then
            local res, car, vx, vy, vz = getNearestVehicle(getCharCoordinates(PLAYER_PED))
            if res and isCarOnScreen(car) then
                local x, y = convert3DCoordsToScreen(vx, vy, vz)
                local px, py = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                renderDrawLine(px, py, x, y, 2, 0xFFFFFFFFF)
            end
        end
    end
end

function getNearestVehicle(x, y, z)
    local result, car, rx, ry, rz
    local distance = 999
    for _, v in pairs(getAllVehicles()) do
        local cx, cy, cz = getCarCoordinates(v)...

Andrinall

Известный
702
518
Как нарисовать линию на экране, например к ближайшему транспорту?
Lua:
function main()
    while true do wait(0)
        if doesCharExist(PLAYER_PED) then
            local res, car, vx, vy, vz = getNearestVehicle(getCharCoordinates(PLAYER_PED))
            if res and isCarOnScreen(car) then
                local x, y = convert3DCoordsToScreen(vx, vy, vz)
                local px, py = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                renderDrawLine(px, py, x, y, 2, 0xFFFFFFFFF)
            end
        end
    end
end

function getNearestVehicle(x, y, z)
    local result, car, rx, ry, rz
    local distance = 999
    for _, v in pairs(getAllVehicles()) do
        local cx, cy, cz = getCarCoordinates(v)
        local dist = getDistanceBetweenCoords3d(x, y, z, cx, cy, cz)
        if dist < distance then
            car, rx, ry, rz = v, cx, cy, cz
            distance = dist
        end
    end
    return (car ~= nil), car, rx, ry, rz -- handle транспорта возвращается на случай, если надо будет что-то с ним делать. Там цвет узнать или ещё что)
end
 
Последнее редактирование:
  • Злость
Реакции: Anarch