запись маршрутов?

Vespan

loneliness
Автор темы
Проверенный
2,141
1,800
Версия MoonLoader
.026-beta
Типа,как в луа записать маршрут и воспроизводить так как я записывал?И ли это вообще возможно.
 
  • Эм
Реакции: YarikVL

манку хлебал

Потрачен
302
122
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
можешь отсюда вырезать

Lua:
function main()
    while true do
        if testCheat('RR') then
            playRoute('data')
        end
        wait(1)
    end
end

function playRoute(route)
    local data = readRoute(route)
    if data then
        for _, line in pairs(data) do
            local x, y, sprint, jump = line:match('{(.*)}:{(.*)}:{(.*)}:{(.*)}')
            if x and y and sprint and jump then
                repeat
                    wait(0)
                    drawLine(x, y)
                    setGameKeyState(1, -128)
                    setCameraPos(x, y)
                    if sprint == 'sprint' then
                        setGameKeyState(16, 255)
                    elseif jump == 'jump' then
                        setGameKeyState(16, 0)
                        setGameKeyState(14, 255)
                    end
                until locateCharOnFoot2d(PLAYER_PED, x, y, 1.5, 1.5, false)
            end
        end
    else
        sampAddChatMessage('cant open file', -1)
    end
end

function setCameraPos(x, y)
    local camX, camY, camZ = getActiveCameraCoordinates()
    setCameraPositionUnfixed(0.0, (getHeadingFromVector2d(x - camX, y - camY) - 90.0) / 57.2957795)
 end

 function drawLine(x, y)
    local posX, posY, posZ = getCharCoordinates(PLAYER_PED)
    if isPointOnScreen(x, y, posZ, 0.0) then
        local screenPosX, screenPosY = convert3DCoordsToScreen(x, y, posZ)
        local charPosX, charPosY = convert3DCoordsToScreen(posX, posY, posZ)
        renderDrawLine(charPosX, charPosY, screenPosX, screenPosY, 2, 0xFFFFFFFF)
        renderDrawPolygon(screenPosX, screenPosY, 10, 10, 14, 0.0, 0xFF000000)
        renderDrawPolygon(charPosX, charPosY, 10, 10, 14, 0.0, 0xFF000000)
    end
end

function readRoute(route)
    local file = io.open(string.format('moonloader/routes/%s.txt', route), 'r')
    if file then
        local data = {}
        for line in file:lines() do
            table.insert(data, line)
        end
        file:close()
        return data
    end
end
когда то для себя вырезал, тут еще рисуется линия куда бежит, в оригинале вроде ее нет (воспроизведение только с ног, на машину мне не надо было)
 
  • Нравится
Реакции: kru_tin и YarikVL

Vespan

loneliness
Автор темы
Проверенный
2,141
1,800
можешь отсюда вырезать

Lua:
function main()
    while true do
        if testCheat('RR') then
            playRoute('data')
        end
        wait(1)
    end
end

function playRoute(route)
    local data = readRoute(route)
    if data then
        for _, line in pairs(data) do
            local x, y, sprint, jump = line:match('{(.*)}:{(.*)}:{(.*)}:{(.*)}')
            if x and y and sprint and jump then
                repeat
                    wait(0)
                    drawLine(x, y)
                    setGameKeyState(1, -128)
                    setCameraPos(x, y)
                    if sprint == 'sprint' then
                        setGameKeyState(16, 255)
                    elseif jump == 'jump' then
                        setGameKeyState(16, 0)
                        setGameKeyState(14, 255)
                    end
                until locateCharOnFoot2d(PLAYER_PED, x, y, 1.5, 1.5, false)
            end
        end
    else
        sampAddChatMessage('cant open file', -1)
    end
end

function setCameraPos(x, y)
    local camX, camY, camZ = getActiveCameraCoordinates()
    setCameraPositionUnfixed(0.0, (getHeadingFromVector2d(x - camX, y - camY) - 90.0) / 57.2957795)
 end

 function drawLine(x, y)
    local posX, posY, posZ = getCharCoordinates(PLAYER_PED)
    if isPointOnScreen(x, y, posZ, 0.0) then
        local screenPosX, screenPosY = convert3DCoordsToScreen(x, y, posZ)
        local charPosX, charPosY = convert3DCoordsToScreen(posX, posY, posZ)
        renderDrawLine(charPosX, charPosY, screenPosX, screenPosY, 2, 0xFFFFFFFF)
        renderDrawPolygon(screenPosX, screenPosY, 10, 10, 14, 0.0, 0xFF000000)
        renderDrawPolygon(charPosX, charPosY, 10, 10, 14, 0.0, 0xFF000000)
    end
end

function readRoute(route)
    local file = io.open(string.format('moonloader/routes/%s.txt', route), 'r')
    if file then
        local data = {}
        for line in file:lines() do
            table.insert(data, line)
        end
        file:close()
        return data
    end
end
когда то для себя вырезал, тут еще рисуется линия куда бежит, в оригинале вроде ее нет (воспроизведение только с ног, на машину мне не надо было)
я знаю про это)
но хотел узнать ли возможен вот такое
(ТАЙМКОД 2:39),сматри как он идеально идет,нигде не застрянет(ток это SF), такое я бы хотел в луа
 

манку хлебал

Потрачен
302
122
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
я знаю про это)
но хотел узнать ли возможен вот такое
(ТАЙМКОД 2:39),сматри как он идеально идет,нигде не застрянет(ток это SF), такое я бы хотел в луа
Что бы 100% как ты записывал воспроизводилось - записывай исходящую синхру, а потом ее воспроизведи.
 
  • Нравится
Реакции: Vespan