Телепорт игрока на дорогу по его ID

boy next door

Участник
Автор темы
219
18
Версия MoonLoader
.026-beta
здарова. как сделать команду /toroad [id], которая будет отправлять /tpcor [id] > установка метки на координаты ближайшей дороги > через секунду удаление этой метки?

Lua:
function main()
    while not isSampAvailable() do wait(0) end
        
    while true do
        wait(0)
        
    end
end

function getNearestRoadCoordinates(radius)
    local A = { getCharCoordinates(PLAYER_PED) }
    local B = { getClosestStraightRoad(A[1], A[2], A[3], 0, radius or 600) }
    if B[1] ~= 0 and B[2] ~= 0 and B[3] ~= 0 then
        return true, B[1], B[2], B[3]
    end
    return false
end

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x0100 and wparam == 0x73 then -- F4
        local result, x, y, z = getNearestRoadCoordinates()
        if result then
            local dist = getDistanceBetweenCoords3d(x, y, z, getCharCoordinates(PLAYER_PED))
            setCharCoordinates(PLAYER_PED, x, y, z + 1)
            sampAddChatMessage(("Вы телепортированны на ближайшую от Вас дорогу (%dm.)"):format(dist), 0xAAFFAA)
        else
            sampAddChatMessage("Не нашлось ни одной дороги поблизости", 0xFFAAAA)
        end
    end
end
 

Federal_OnDuty

Новичок
11
0
здарова. как сделать команду /toroad [id], которая будет отправлять /tpcor [id] > установка метки на координаты ближайшей дороги > через секунду удаление этой метки?

Lua:
function main()
    while not isSampAvailable() do wait(0) end
       
    while true do
        wait(0)
       
    end
end

function getNearestRoadCoordinates(radius)
    local A = { getCharCoordinates(PLAYER_PED) }
    local B = { getClosestStraightRoad(A[1], A[2], A[3], 0, radius or 600) }
    if B[1] ~= 0 and B[2] ~= 0 and B[3] ~= 0 then
        return true, B[1], B[2], B[3]
    end
    return false
end

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x0100 and wparam == 0x73 then -- F4
        local result, x, y, z = getNearestRoadCoordinates()
        if result then
            local dist = getDistanceBetweenCoords3d(x, y, z, getCharCoordinates(PLAYER_PED))
            setCharCoordinates(PLAYER_PED, x, y, z + 1)
            sampAddChatMessage(("Вы телепортированны на ближайшую от Вас дорогу (%dm.)"):format(dist), 0xAAFFAA)
        else
            sampAddChatMessage("Не нашлось ни одной дороги поблизости", 0xFFAAAA)
        end
    end
end
Попробуй дикрипнуть тулскоторый я тебе скину и команда /tpr та которая тебе нужна
 

Вложения

  • arztools.luac
    1.4 MB · Просмотры: 3
  • Клоун
  • Эм
Реакции: fokichevskiy и sdfy