Неактуально Lua Рванка для аризоны[UPD. 17.10.2019]

BIG BOG

Известный
Автор темы
653
142
а сурс можешь этой рванки скинуть? я сам подправлю
Lua:
local events = require 'lib.samp.events'
crv = false
function events.onSetVehiclePosition()
    if crv then return false end
end
function events.onSetVehicleVelocity()
    if crv then return false end
end
function main()
    repeat wait(0) until isSampAvailable();
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Rvanka by BIG BOG Loaded', -1)
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Версия: 2.2', -1)
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Активация - /crv [id]', -1)
    sampRegisterChatCommand("crv",crv3)
    wait(-1)
end
function crv3(arg)
    if crv then
        crv = false
    return sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Завершаем процесс', -1)
    end
    arg = tonumber(arg)
    if arg == nil then
        sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Введите ИД!', -1)
    end
    if arg > 1000 then
        sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Невалидный ИД!', -1)
    end   
    if not isCharInAnyCar(PLAYER_PED) then
        return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Вы должны находиться в транспорте.", -1)
    end
    local f, pedok = sampGetCharHandleBySampPlayerId(arg)
    if f then
        px, py, pz = getCharCoordinates(pedok)
        local ax, ay, az = getCharCoordinates(PLAYER_PED)
        dist = math.sqrt( (ax - px) ^ 2 + (ay - py) ^ 2 + (az - pz) ^ 2 )
    else     crv = false return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок за пределами зоны стрима.", -1)end   
    if dist > 50 then
        crv = false
    return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок находится слишком далеко.", -1)end   
    crv = true
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Запускаем процесс', -1)   
    nopHook("onSendVehicleSync", true)
    crv2(arg, px, py, pz, pz)
    return
end


function crv2(id, cx, cy, cz, nz)
    local hveh = storeCarCharIsInNoSave(PLAYER_PED)
    local _, vid = sampGetVehicleIdByCarHandle(hveh)
    nopHook("onSendVehicleSync", true)
    SendVehicleSync(vid, cx, cy, cz)
    lua_thread.create(function()
        sampSendChat("/showlic "..id)
        SendVehicleSync(vid, cx, cy, cz)   
        while true do
            if not isCharInAnyCar(PLAYER_PED) then
            return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Вы покинули транспорт, рванка выключена.", -1)
            end
            px, py, pz = getCharCoordinates(PLAYER_PED)
            local f, pedok = sampGetCharHandleBySampPlayerId(id)
            if f then
                cx, cy, cz = getCharCoordinates(pedok)
                local ax, ay, az = getCharCoordinates(PLAYER_PED)
                dist = math.sqrt( (ax - px) ^ 2 + (ay - py) ^ 2 + (az - pz) ^ 2 )
                if isCharInAnyCar(pedok) then
                qx, qy, qz, qw = getVehicleQuaternion(car)
                else               
                crvp2(id, cx, cy, cz, nz)   
                return
                end
                if getDistanceBetweenCoords2d(1, pz, 1, cz) > 40 then
                sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок сместился слишком низко.", -1)
                end   
                if dist > 200 then
                    ccoordmaster(px, py, pz, vid)           
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок сместился слишком далеко.", -1)
                end
                else
                    ccoordmaster(px, py, pz, vid)   
                    crv = false
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок пропал из зоны стрима.", -1)
                end   
                if crv then
                    cx = cx + math.random(-2, 2)
                    cy = cy + math.random(-2, 2)
                    cz = cz + math.random(-1, 3)
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    printStringNow("~>~ WORK ~<~",50)
                else
                    ccoordmaster(px, py, pz, vid)
                    printStringNow("~>~ FINISHED ~<~",2000)
                    crv = false
                break
            end   
            wait(0)           
        end
    end)   
end
function crvp2(id, cx, cy, cz, nz)
    local hveh = storeCarCharIsInNoSave(PLAYER_PED)
    local _, vid = sampGetVehicleIdByCarHandle(hveh)
    lua_thread.create(function()
        SendVehicleSync(vid, cx, cy, cz)   
        while true do
            if not isCharInAnyCar(PLAYER_PED) then
            return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Вы должны находиться в транспорте.", -1)
            end
            px, py, pz = getCharCoordinates(PLAYER_PED)
            local f, pedok = sampGetCharHandleBySampPlayerId(id)
            if f then
                cx, cy, cz = getCharCoordinates(pedok)
                local ax, ay, az = getCharCoordinates(PLAYER_PED)
                dist = math.sqrt( (ax - px) ^ 2 + (ay - py) ^ 2 + (az - pz) ^ 2 )
                if isCharInAnyCar(pedok) then
                crv2(id, cx, cy, cz, nz)
                else               
                qx, qy, qz, qw = getCharQuaternion(pedok)
                end
                if getDistanceBetweenCoords2d(1, pz, 1, cz) > 60 then
                    cz = -30
                end   
                if dist > 200 then
                    crv = false
                    ccoordmaster(cx, cy, cz, vid)                       
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок сместился слишком далеко.", -1)
                end
                else
                ccoordmaster(cx, cy, cz, vid)   
                    crv = false
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок пропал из зоны стрима.", -1)
                end   
                if crv then
                    cz = cz + math.random(-2, 5)
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    cz = nz -70
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    wait(50)
                    cz = pz
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    printStringNow("~>~ WORK ~<~",100)
                else
                    ccoordmaster(cx, cy, cz, vid)
                    printStringNow("~>~ FINISHED ~<~",2000)
                    crv = false
                break
            end   
            wait(0)           
        end
    end)   
end
function ccup2(raz, cx, cy, cz, vid)
    local cx, cy, cz = getCharCoordinates(PLAYER_PED)
    local px, py, pz = cx, cy, cz
    lua_thread.create(function()
        while true do
            lua_thread.create(function()
            wait(100)
            end)
                if raz > 10 then
               cx = cx + math.random(-5,5)
                cy = cy + math.random(-5,5)
                cz = cz + 10
                SendVehicleSync(vid, cx, cy, cz)
                SendVehicleSync(vid, px, py, cz)
                raz = raz - 10
            else
                cx = cx + math.random(-5,5)
                cy = cy + math.random(-5,5)
                cz = cz + raz
                SendVehicleSync(vid, cx, cy, cz)
                SendVehicleSync(vid, px, py, cz)
                raz = 0
                lockPlayerControl(false)
                break
            end
        end
    end)
end
function getAngle(x1, y1, x2, y2)
    return math.atan2(x2 - x1, y2 - y1);
end
function ccoordmaster(cx, cy, cz, vid)
    local step = 20
    local x, y, z = getCharCoordinates(PLAYER_PED)
    local angle = getAngle(cx, cy, x, y)           
    lua_thread.create(function()
        while true do
            wait(100)
            if getDistanceBetweenCoords2d(cx, cy, x, y) > step then
                cx = cx + math.sin(angle) * step
                cy = cy + math.cos(angle) * step
                 SendVehicleSync(vid, cx, cy, cz-3)
            else
                if cz < z then
                    local dist2 = getDistanceBetweenCoords2d(1, cz, 1, z)
                    ccup2(dist2, cx, cy, cz, vid)
                    SendVehicleSync(vid, x, y, z)
                    nopHook("onSendVehicleSync", false)
                    lockPlayerControl(false)
                    break
                else               
                    SendVehicleSync(vid, x, y, z)
                    nopHook("onSendVehicleSync", false)
                    lockPlayerControl(false)
                    break
                end
            end
        end
    end)
end
function SendVehicleSync(veh, x, y, z)
    local _, myId = sampGetPlayerIdByCharHandle(PLAYER_PED)
    local data = allocateMemory(62)
    sampStorePlayerIncarData(myId, data)
    setStructElement(data, 0, 2, veh, false)
    setStructFloatElement(data, 24, x, false)
    setStructFloatElement(data, 28, y, false)
    setStructFloatElement(data, 32, z, false)
    setStructFloatElement(data, 8, math.random(-1,1), false)
    setStructFloatElement(data, 12, math.random(-1,1), false)   
    setStructFloatElement(data, 16, math.random(-1,1), false)
    setStructFloatElement(data, 20, math.random(-1,1), false)
   setStructFloatElement(data, 36, -0.5, false)
   setStructFloatElement(data, 40, -0.5, false)
    setStructFloatElement(data, 44, -0.5, false)
    sampSendIncarData(data)
    freeMemory(data)
end
function nopHook(name, bool)
    local samp = require 'samp.events'
    samp[name] = function()
        if bool then
            return false
        end
    end
end
 
  • Нравится
Реакции: RAYDON

Sasuke Uchiha

Участник
39
13
Lua:
local events = require 'lib.samp.events'
crv = false
function events.onSetVehiclePosition()
    if crv then return false end
end
function events.onSetVehicleVelocity()
    if crv then return false end
end
function main()
    repeat wait(0) until isSampAvailable();
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Rvanka by BIG BOG Loaded', -1)
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Версия: 2.2', -1)
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Активация - /crv [id]', -1)
    sampRegisterChatCommand("crv",crv3)
    wait(-1)
end
function crv3(arg)
    if crv then
        crv = false
    return sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Завершаем процесс', -1)
    end
    arg = tonumber(arg)
    if arg == nil then
        sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Введите ИД!', -1)
    end
    if arg > 1000 then
        sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Невалидный ИД!', -1)
    end  
    if not isCharInAnyCar(PLAYER_PED) then
        return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Вы должны находиться в транспорте.", -1)
    end
    local f, pedok = sampGetCharHandleBySampPlayerId(arg)
    if f then
        px, py, pz = getCharCoordinates(pedok)
        local ax, ay, az = getCharCoordinates(PLAYER_PED)
        dist = math.sqrt( (ax - px) ^ 2 + (ay - py) ^ 2 + (az - pz) ^ 2 )
    else     crv = false return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок за пределами зоны стрима.", -1)end  
    if dist > 50 then
        crv = false
    return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок находится слишком далеко.", -1)end  
    crv = true
    sampAddChatMessage('{FF0808}[Rvanka]{00B5EE}Запускаем процесс', -1)  
    nopHook("onSendVehicleSync", true)
    crv2(arg, px, py, pz, pz)
    return
end


function crv2(id, cx, cy, cz, nz)
    local hveh = storeCarCharIsInNoSave(PLAYER_PED)
    local _, vid = sampGetVehicleIdByCarHandle(hveh)
    nopHook("onSendVehicleSync", true)
    SendVehicleSync(vid, cx, cy, cz)
    lua_thread.create(function()
        sampSendChat("/showlic "..id)
        SendVehicleSync(vid, cx, cy, cz)  
        while true do
            if not isCharInAnyCar(PLAYER_PED) then
            return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Вы покинули транспорт, рванка выключена.", -1)
            end
            px, py, pz = getCharCoordinates(PLAYER_PED)
            local f, pedok = sampGetCharHandleBySampPlayerId(id)
            if f then
                cx, cy, cz = getCharCoordinates(pedok)
                local ax, ay, az = getCharCoordinates(PLAYER_PED)
                dist = math.sqrt( (ax - px) ^ 2 + (ay - py) ^ 2 + (az - pz) ^ 2 )
                if isCharInAnyCar(pedok) then
                qx, qy, qz, qw = getVehicleQuaternion(car)
                else              
                crvp2(id, cx, cy, cz, nz)  
                return
                end
                if getDistanceBetweenCoords2d(1, pz, 1, cz) > 40 then
                sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок сместился слишком низко.", -1)
                end  
                if dist > 200 then
                    ccoordmaster(px, py, pz, vid)          
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок сместился слишком далеко.", -1)
                end
                else
                    ccoordmaster(px, py, pz, vid)  
                    crv = false
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок пропал из зоны стрима.", -1)
                end  
                if crv then
                    cx = cx + math.random(-2, 2)
                    cy = cy + math.random(-2, 2)
                    cz = cz + math.random(-1, 3)
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    printStringNow("~>~ WORK ~<~",50)
                else
                    ccoordmaster(px, py, pz, vid)
                    printStringNow("~>~ FINISHED ~<~",2000)
                    crv = false
                break
            end  
            wait(0)          
        end
    end)  
end
function crvp2(id, cx, cy, cz, nz)
    local hveh = storeCarCharIsInNoSave(PLAYER_PED)
    local _, vid = sampGetVehicleIdByCarHandle(hveh)
    lua_thread.create(function()
        SendVehicleSync(vid, cx, cy, cz)  
        while true do
            if not isCharInAnyCar(PLAYER_PED) then
            return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Вы должны находиться в транспорте.", -1)
            end
            px, py, pz = getCharCoordinates(PLAYER_PED)
            local f, pedok = sampGetCharHandleBySampPlayerId(id)
            if f then
                cx, cy, cz = getCharCoordinates(pedok)
                local ax, ay, az = getCharCoordinates(PLAYER_PED)
                dist = math.sqrt( (ax - px) ^ 2 + (ay - py) ^ 2 + (az - pz) ^ 2 )
                if isCharInAnyCar(pedok) then
                crv2(id, cx, cy, cz, nz)
                else              
                qx, qy, qz, qw = getCharQuaternion(pedok)
                end
                if getDistanceBetweenCoords2d(1, pz, 1, cz) > 60 then
                    cz = -30
                end  
                if dist > 200 then
                    crv = false
                    ccoordmaster(cx, cy, cz, vid)                      
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок сместился слишком далеко.", -1)
                end
                else
                ccoordmaster(cx, cy, cz, vid)  
                    crv = false
                return sampAddChatMessage("{FF0808}[Rvanka]{00B5EE}Игрок пропал из зоны стрима.", -1)
                end  
                if crv then
                    cz = cz + math.random(-2, 5)
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    cz = nz -70
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    wait(50)
                    cz = pz
                    SendVehicleSync(vid, cx, cy, cz, qx, qy, qz, qw)
                    printStringNow("~>~ WORK ~<~",100)
                else
                    ccoordmaster(cx, cy, cz, vid)
                    printStringNow("~>~ FINISHED ~<~",2000)
                    crv = false
                break
            end  
            wait(0)          
        end
    end)  
end
function ccup2(raz, cx, cy, cz, vid)
    local cx, cy, cz = getCharCoordinates(PLAYER_PED)
    local px, py, pz = cx, cy, cz
    lua_thread.create(function()
        while true do
            lua_thread.create(function()
            wait(100)
            end)
                if raz > 10 then
               cx = cx + math.random(-5,5)
                cy = cy + math.random(-5,5)
                cz = cz + 10
                SendVehicleSync(vid, cx, cy, cz)
                SendVehicleSync(vid, px, py, cz)
                raz = raz - 10
            else
                cx = cx + math.random(-5,5)
                cy = cy + math.random(-5,5)
                cz = cz + raz
                SendVehicleSync(vid, cx, cy, cz)
                SendVehicleSync(vid, px, py, cz)
                raz = 0
                lockPlayerControl(false)
                break
            end
        end
    end)
end
function getAngle(x1, y1, x2, y2)
    return math.atan2(x2 - x1, y2 - y1);
end
function ccoordmaster(cx, cy, cz, vid)
    local step = 20
    local x, y, z = getCharCoordinates(PLAYER_PED)
    local angle = getAngle(cx, cy, x, y)          
    lua_thread.create(function()
        while true do
            wait(100)
            if getDistanceBetweenCoords2d(cx, cy, x, y) > step then
                cx = cx + math.sin(angle) * step
                cy = cy + math.cos(angle) * step
                 SendVehicleSync(vid, cx, cy, cz-3)
            else
                if cz < z then
                    local dist2 = getDistanceBetweenCoords2d(1, cz, 1, z)
                    ccup2(dist2, cx, cy, cz, vid)
                    SendVehicleSync(vid, x, y, z)
                    nopHook("onSendVehicleSync", false)
                    lockPlayerControl(false)
                    break
                else              
                    SendVehicleSync(vid, x, y, z)
                    nopHook("onSendVehicleSync", false)
                    lockPlayerControl(false)
                    break
                end
            end
        end
    end)
end
function SendVehicleSync(veh, x, y, z)
    local _, myId = sampGetPlayerIdByCharHandle(PLAYER_PED)
    local data = allocateMemory(62)
    sampStorePlayerIncarData(myId, data)
    setStructElement(data, 0, 2, veh, false)
    setStructFloatElement(data, 24, x, false)
    setStructFloatElement(data, 28, y, false)
    setStructFloatElement(data, 32, z, false)
    setStructFloatElement(data, 8, math.random(-1,1), false)
    setStructFloatElement(data, 12, math.random(-1,1), false)  
    setStructFloatElement(data, 16, math.random(-1,1), false)
    setStructFloatElement(data, 20, math.random(-1,1), false)
   setStructFloatElement(data, 36, -0.5, false)
   setStructFloatElement(data, 40, -0.5, false)
    setStructFloatElement(data, 44, -0.5, false)
    sampSendIncarData(data)
    freeMemory(data)
end
function nopHook(name, bool)
    local samp = require 'samp.events'
    samp[name] = function()
        if bool then
            return false
        end
    end
end
а не можешь подсказать какие там циферки подкрутить нужно что бы сильнее пидорасило? а то я не очень разобрался пока что))
 

Gachi Men

Участник
57
15
Эту рванку давно никто не юзает,хотя вроде протестил и все работает. Бывают кики при большом пинге а так пока что робило
 

PresentAim

Новичок
9
0
можно сразу вопрос, тут у тебя 3 файла, их надо всех качать? и его надо в КЛЕО?