Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2018-04-01, 18:25


PenkY

Mapper






Wiek: 23
Na forum: 3465 dni
Posty: 223
Nick w MP: penky

Piwa: 2210

Respekt: 472
Respekt: 472

Witam.
Ot?? mam skrypt na ogranicznik lecz gdy wybieram 20km/h to na liczniku jest napisane 30km/h o co chodzi? mo?e kto? pom?c? Stawiam R* :piwo:
za pomoc.

Licznik:


local screenXscreenY guiGetScreenSize() 
local Czcionka dxCreateFont "Czcionka/czcionka.ttf",20 )
local rotacjaBiegow 0


stanSwiatel 0
localPlayer getLocalPlayer ()

addEventHandler("onClientVehicleEnter"getRootElement(),
    function(thePlayerseat)
        if thePlayer == getLocalPlayer() then
            if seat == 0 then
                bindKey "i""down"interakcjaSwiatel )
                stanSwiatel getVehicleOverrideLights source ) or 0
            end
        end
    end
)

addEventHandler("onClientVehicleExit"getRootElement(),
    function(thePlayerseat)
        if thePlayer == getLocalPlayer() then
            if seat == 0 then
                unbindKey "i""down" )
               
end
        end
    end
)



function drawNeedlevehicleseat)
    if not getPedOccupiedVehicle localPlayer then
        unbindKey "3""down" )
        stanSwiatel 0
        return true
    end
        if isPedInVehicle(getLocalPlayer())then 
            local pojazd getElementSpeed(getPedOccupiedVehicle(getLocalPlayer()), "kmh")
            local stanSilnika = (getPedOccupiedVehicle(getLocalPlayer()))
            if not pojazd then return end
            local pojazdPredkosc getVehicleSpeed()
            local rotacja math.floor(((220/12800)* getVehicleRPM(getPedOccupiedVehicle(getLocalPlayer()))) + 0.5)
            local paliwo getElementData(getPedOccupiedVehicle localPlayer ), "vehicle:fuel" ) or 0
        if (rotacjaBiegow rotacjathen
            rotacjaBiegow rotacjaBiegow 1.5
        end
        if (rotacjaBiegow rotacjathen
            rotacjaBiegow rotacjaBiegow 1.5
        end
            
        if pojazdPredkosc 252 then
            pojazdPredkosc 252
        end
        if pojazdPredkosc < -252 then
            pojazdPredkosc = -252
        end
            dxDrawImage(screenX-320screenY-220,314,220,"Grafika/licznik.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawImage(screenX-216screenY-209,200,200,"Grafika/iglaLicznika.png",pojazdPredkosc-0,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawImage(screenX-313screenY-188,158,158,"Grafika/iglaBiegow.png",rotacjaBiegow,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawText(""..tostring getFormatSpeed pojazd ) )..""screenX-142screenY-128170300,tocolor 255,255,255 ),1,Czcionka)
            dxDrawText(""..tostring getFormatFuel(math.round  (paliwo)))..""screenX-131screenY-100170300,tocolor 255,255,255 ),0.6,Czcionka)
            dxDrawImage(screenX-180screenY-53,23,26,"Grafika/lewoOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawImage(screenX-73screenY-53,23,26,"Grafika/prawoOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            
        if ( pojazdPredkosc == then
            dxDrawText(getFormatNeutral()..""screenX-246screenY-128170300,tocolor 255,255,255 ),1,Czcionka)
        else
            dxDrawText(getFormatGear()..""screenX-246screenY-128170300,tocolor 255,255,255 ),1,Czcionka)
        end
    
        if ( getVehicleEngineState (stanSilnika) == true then
            dxDrawImage(screenX-125screenY-33,23,26,"Grafika/silnikON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        else
            dxDrawImage(screenX-125screenY-33,23,26,"Grafika/silnikOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        end
    
        if stanSwiatel == or stanSwiatel == 1 then
            dxDrawImage(screenX-154screenY-40,23,26,"Grafika/swiatlaOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        else
            dxDrawImage(screenX-154screenY-40,23,26,"Grafika/swiatlaON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        end
            
        if getElementData(getPedOccupiedVehicle localPlayer ), "kierunkowskaz:lewo" then
            if ( getTickCount () % 1400 >= 400 then
                dxDrawImage(screenX-180screenY-53,23,26,"Grafika/lewoON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            end
        end
            
        if getElementData(getPedOccupiedVehicle localPlayer ), "kierunkowskaz:prawo" then
            if ( getTickCount () % 1400 >= 400 then
                dxDrawImage(screenX-73screenY-53,23,26,"Grafika/prawoON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            end
        end
            
        local theVehicle getPedOccupiedVehicle localPlayer )
        if ( theVehicle then
            if ( enablelock ) and ( isVehicleLockedtheVehicle ) ) or ( getElementDatatheVehicle"drzwi:zamkniete" ) ) then
                dxDrawImage(screenX-95screenY-35,13,15,"Grafika/zamkniety.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            else
                dxDrawImage(screenX-95screenY-35,13,15,"Grafika/otwarty.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            end
        end
    end
end
addEventHandler("onClientRender"getRootElement(), drawNeedle)

function interakcjaSwiatel ()
    if stanSwiatel == or stanSwiatel == 1 then
        stanSwiatel 2
        setVehicleOverrideLightsgetPedOccupiedVehicle localPlayer ), )
    else
        setVehicleOverrideLightsgetPedOccupiedVehicle localPlayer ), )
        stanSwiatel 0
    end
end


function getVehicleSpeed()
    if isPedInVehicle(getLocalPlayer()) then
        local theVehicle getPedOccupiedVehicle (getLocalPlayer())
        local vxvyvz getElementVelocity (theVehicle)
        return math.sqrt(vx^vy^vz^2) * 225
    end
    return 0
end

function getElementSpeed(element,unit)
    if (unit == nilthen unit 0 end
    if (isElement(element)) then
        local x,y,getElementVelocity(element)
        if (unit=="mph" or unit==or unit =='1'then
            return math.floor((x^y^z^2) ^ 0.5 100)
        else
            return math.floor((x^y^z^2) ^ 0.5 100 1.609344)
        end
    else
        return false
    end
end

function math.round(numberdecimalsmethod)
    decimals decimals or 0
    local factor 10 decimals
    if (method == "ceil" or method == "floor"then return math[method](number factor) / factor
    else return tonumber(("%."..decimals.."f"):format(number)) end
end

function math.round(numberdecimalsmethod)
    decimals decimals or 0
    local factor 10 decimals
    if (method == "ceil" or method == "floor"then return math[method](number factor) / factor
    else return tonumber(("%."..decimals.."f"):format(number)) end
end


function getFormatSpeed(unit)
    if unit 10 then
        unit "00" .. unit
    elseif unit 100 then
        unit "0" .. unit
    elseif unit >= 1000 then
        unit "5000"
    end
    return unit
end

function getFormatFuel(unit)
    if unit 10 then
        unit "00" .. unit
    elseif unit 100 then
        unit "0" .. unit
    elseif unit >= 1000 then
        unit "999"
    end
    return unit
end

function getFormatGear()
    local gear getVehicleCurrentGear(getPedOccupiedVehicle(getLocalPlayer()))
    local rear "R"
    local neutral "N"
    if (gear 0then 
        return gear
    else
        return rear
    end
end

function getFormatNeutral()
    local neutral "N"
    return neutral
end

function getVehicleRPM(vehicle)
local vehicleRPM 0
    if (vehiclethen  
        if (getVehicleEngineState(vehicle) == truethen
            if getVehicleCurrentGear(vehicle) > 0 then             
                vehicleRPM math.floor(((getElementSpeed(vehicle"kmh")/getVehicleCurrentGear(vehicle))*180) + 0.5) 
                if (vehicleRPM 650then
                    vehicleRPM math.random(650750)
                elseif (vehicleRPM >= 9800then
                    vehicleRPM math.random(98009900)
                end
            else
                vehicleRPM math.floor((getElementSpeed(vehicle"kmh")*180) + 0.5)
                if (vehicleRPM 650then
                    vehicleRPM math.random(650750)
                elseif (vehicleRPM >= 9800then
                    vehicleRPM math.random(98009900)
                end
            end
        else
            vehicleRPM 0
        end
        return tonumber(vehicleRPM)
    else
        return 0
    end
end


Ogranicznik:

local typyograniczen = {nil120906020}
local selected 1

local blocked = {
    [481] = 60,
    [510] = 60,
}

local function ogranicznik()
    local ograniczenie typyograniczen[selected]
    local vehicle getPedOccupiedVehicle(localPlayer)
    local typVehicle getElementModel(vehicle)
    if not vehicle then return end
    
    if getVehicleController(vehicle) ~= localPlayer then return end
    if not isVehicleOnGround(vehiclethen return end
    
    local vx,vy,vz getElementVelocity(vehicle)
    
    if not getVehicleEngineState(vehiclethen
        if getDistanceBetweenPoints2D(00vxvy)<0.1 then
            vx,vy 0,0
            setElementVelocity(vehiclevx,vy,vz)
            return
        end
    end
    
    if getVehicleType(vehicle) ~= "Automobile" and not blocked[typVehiclethen return end
    if blocked[typVehiclethen
        ograniczenie blocked[typVehicle]
    end
    
    if not ograniczenie then return end
    
    local speed = (vx^vy^vz^2)^(0.5) *0.6*180
    if speed ograniczenie then
        setElementVelocity(vehiclevx*0.9,vy*0.9,vz*0.9)
    end
end

setTimer(ogranicznik500)
addCommandHandler("ogranicznikzmniejsz", function()
    if isCursorShowing() or isPedDoingGangDriveby(localPlayerthen return end
    local vehicle getPedOccupiedVehicle(localPlayer)
    if not vehicle then return end
    if getVehicleController(vehicle) ~= localPlayer then return end
    if not isVehicleOnGround(vehiclethen return end
    if getVehicleType(vehicle) ~= "Automobile" then return end
    
    selected selected-1
    if selected 1 then selected #typyograniczen end
    if typyograniczen[selectedthen
        exports["lr_noti"]:addNotification("Ustawiono ogranicznik pr?dkosci na: "..typyograniczen[selected].." km/h!"localPlayer)
    else
        exports["lr_noti"]:addNotification("Wy??czono ogranicznik"localPlayer)
    end
end)
bindKey("mouse1""down""ogranicznikzmniejsz")

addCommandHandler("ogranicznikzwieksz", function()
    if isCursorShowing() or isPedDoingGangDriveby(localPlayerthen return end
    local vehicle getPedOccupiedVehicle(localPlayer)
    if not vehicle then return end
    if getVehicleController(vehicle) ~= localPlayer then return end
    if not isVehicleOnGround(vehiclethen return end
    
    selected selected+1
    if selected #typyograniczen then selected = 1 end
    if typyograniczen[selectedthen
        exports["lr_noti"]:addNotification("Ustawiono ogranicznik pr?dkosci na: "..typyograniczen[selected].." km/h!"localPlayer)
    else
        exports["lr_noti"]:addNotification("Wy??czono ogranicznik"localPlayer)
    end
end)
bindKey("mouse2""down""ogranicznikzwieksz")


Podpis
Discord: p3nky.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-04-01, 18:36


Kalizman







Wiek: 23
Na forum: 3651 dni
Posty: 1394

Piwa: 4619

Respekt: 358,8
Respekt: 358,8Respekt: 358,8Respekt: 358,8Respekt: 358,8

Sprawd? teraz.

local screenXscreenY guiGetScreenSize() 
local Czcionka dxCreateFont "Czcionka/czcionka.ttf",20 )
local rotacjaBiegow 0


stanSwiatel 0
localPlayer getLocalPlayer ()

addEventHandler("onClientVehicleEnter"getRootElement(),
    function(thePlayerseat)
        if thePlayer == getLocalPlayer() then
            if seat == 0 then
                bindKey "i""down"interakcjaSwiatel )
                stanSwiatel getVehicleOverrideLights source ) or 0
            end
        end
    end
)

addEventHandler("onClientVehicleExit"getRootElement(),
    function(thePlayerseat)
        if thePlayer == getLocalPlayer() then
            if seat == 0 then
                unbindKey "i""down" )
               
end
        end
    end
)



function drawNeedlevehicleseat)
    if not getPedOccupiedVehicle localPlayer then
        unbindKey "3""down" )
        stanSwiatel 0
        return true
    end
        if isPedInVehicle(getLocalPlayer())then 
            local pojazd getElementSpeed(getPedOccupiedVehicle(getLocalPlayer()), "kmh")
            local stanSilnika = (getPedOccupiedVehicle(getLocalPlayer()))
            if not pojazd then return end
            local pojazdPredkosc getVehicleSpeed()
            local rotacja math.floor(((220/12800)* getVehicleRPM(getPedOccupiedVehicle(getLocalPlayer()))) + 0.5)
            local paliwo getElementData(getPedOccupiedVehicle localPlayer ), "vehicle:fuel" ) or 0
        if (rotacjaBiegow rotacjathen
            rotacjaBiegow rotacjaBiegow 1.5
        end
        if (rotacjaBiegow rotacjathen
            rotacjaBiegow rotacjaBiegow 1.5
        end
            
        if pojazdPredkosc 252 then
            pojazdPredkosc 252
        end
        if pojazdPredkosc < -252 then
            pojazdPredkosc = -252
        end
            dxDrawImage(screenX-320screenY-220,314,220,"Grafika/licznik.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawImage(screenX-216screenY-209,200,200,"Grafika/iglaLicznika.png",pojazdPredkosc-0,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawImage(screenX-313screenY-188,158,158,"Grafika/iglaBiegow.png",rotacjaBiegow,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawText(""..tostring getFormatSpeed pojazd ) )..""screenX-142screenY-128170300,tocolor 255,255,255 ),1,Czcionka)
            dxDrawText(""..tostring getFormatFuel(math.round  (paliwo)))..""screenX-131screenY-100170300,tocolor 255,255,255 ),0.6,Czcionka)
            dxDrawImage(screenX-180screenY-53,23,26,"Grafika/lewoOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            dxDrawImage(screenX-73screenY-53,23,26,"Grafika/prawoOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            
        if ( pojazdPredkosc == then
            dxDrawText(getFormatNeutral()..""screenX-246screenY-128170300,tocolor 255,255,255 ),1,Czcionka)
        else
            dxDrawText(getFormatGear()..""screenX-246screenY-128170300,tocolor 255,255,255 ),1,Czcionka)
        end
    
        if ( getVehicleEngineState (stanSilnika) == true then
            dxDrawImage(screenX-125screenY-33,23,26,"Grafika/silnikON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        else
            dxDrawImage(screenX-125screenY-33,23,26,"Grafika/silnikOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        end
    
        if stanSwiatel == or stanSwiatel == 1 then
            dxDrawImage(screenX-154screenY-40,23,26,"Grafika/swiatlaOFF.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        else
            dxDrawImage(screenX-154screenY-40,23,26,"Grafika/swiatlaON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
        end
            
        if getElementData(getPedOccupiedVehicle localPlayer ), "kierunkowskaz:lewo" then
            if ( getTickCount () % 1400 >= 400 then
                dxDrawImage(screenX-180screenY-53,23,26,"Grafika/lewoON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            end
        end
            
        if getElementData(getPedOccupiedVehicle localPlayer ), "kierunkowskaz:prawo" then
            if ( getTickCount () % 1400 >= 400 then
                dxDrawImage(screenX-73screenY-53,23,26,"Grafika/prawoON.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            end
        end
            
        local theVehicle getPedOccupiedVehicle localPlayer )
        if ( theVehicle then
            if ( enablelock ) and ( isVehicleLockedtheVehicle ) ) or ( getElementDatatheVehicle"drzwi:zamkniete" ) ) then
                dxDrawImage(screenX-95screenY-35,13,15,"Grafika/zamkniety.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            else
                dxDrawImage(screenX-95screenY-35,13,15,"Grafika/otwarty.png",0.0,0.0,0.0,tocolor(255,255,255,255),false)
            end
        end
    end
end
addEventHandler("onClientRender"getRootElement(), drawNeedle)

function interakcjaSwiatel ()
    if stanSwiatel == or stanSwiatel == 1 then
        stanSwiatel 2
        setVehicleOverrideLightsgetPedOccupiedVehicle localPlayer ), )
    else
        setVehicleOverrideLightsgetPedOccupiedVehicle localPlayer ), )
        stanSwiatel 0
    end
end


function getVehicleSpeed()
    if isPedInVehicle(getLocalPlayer()) then
        local theVehicle getPedOccupiedVehicle (getLocalPlayer())
        local vxvyvz getElementVelocity (theVehicle)
        return math.sqrt(vx^vy^vz^2) * 180
    end
    return 0
end

function getElementSpeed(element,unit)
    if (unit == nilthen unit 0 end
    if (isElement(element)) then
        local x,y,getElementVelocity(element)
        if (unit=="mph" or unit==or unit =='1'then
            return math.floor((x^y^z^2) ^ 0.5 100)
        else
            return math.floor((x^y^z^2) ^ 0.5 100 1.609344)
        end
    else
        return false
    end
end

function math.round(numberdecimalsmethod)
    decimals decimals or 0
    local factor 10 decimals
    if (method == "ceil" or method == "floor"then return math[method](number factor) / factor
    else return tonumber(("%."..decimals.."f"):format(number)) end
end

function math.round(numberdecimalsmethod)
    decimals decimals or 0
    local factor 10 decimals
    if (method == "ceil" or method == "floor"then return math[method](number factor) / factor
    else return tonumber(("%."..decimals.."f"):format(number)) end
end


function getFormatSpeed(unit)
    if unit 10 then
        unit "00" .. unit
    elseif unit 100 then
        unit "0" .. unit
    elseif unit >= 1000 then
        unit "5000"
    end
    return unit
end

function getFormatFuel(unit)
    if unit 10 then
        unit "00" .. unit
    elseif unit 100 then
        unit "0" .. unit
    elseif unit >= 1000 then
        unit "999"
    end
    return unit
end

function getFormatGear()
    local gear getVehicleCurrentGear(getPedOccupiedVehicle(getLocalPlayer()))
    local rear "R"
    local neutral "N"
    if (gear 0then 
        return gear
    else
        return rear
    end
end

function getFormatNeutral()
    local neutral "N"
    return neutral
end

function getVehicleRPM(vehicle)
local vehicleRPM 0
    if (vehiclethen  
        if (getVehicleEngineState(vehicle) == truethen
            if getVehicleCurrentGear(vehicle) > 0 then             
                vehicleRPM math.floor(((getElementSpeed(vehicle"kmh")/getVehicleCurrentGear(vehicle))*180) + 0.5) 
                if (vehicleRPM 650then
                    vehicleRPM math.random(650750)
                elseif (vehicleRPM >= 9800then
                    vehicleRPM math.random(98009900)
                end
            else
                vehicleRPM math.floor((getElementSpeed(vehicle"kmh")*180) + 0.5)
                if (vehicleRPM 650then
                    vehicleRPM math.random(650750)
                elseif (vehicleRPM >= 9800then
                    vehicleRPM math.random(98009900)
                end
            end
        else
            vehicleRPM 0
        end
        return tonumber(vehicleRPM)
    else
        return 0
    end
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-04-01, 18:50


PenkY

Mapper






Wiek: 23
Na forum: 3465 dni
Posty: 223
Nick w MP: penky

Piwa: 2210

Respekt: 472
Respekt: 472

Kalizman, Dalej to samo nie poprawi?o si?

Podpis
Discord: p3nky.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-04-01, 19:24


Ciastuuś

Truck soon...






Wiek: 26
Na forum: 3071 dni
Posty: 799
Nick w MP: Ciastuuś

Piwa: 4297

Respekt: 640
Respekt: 640Respekt: 640

Potrzeba troch? oblicze?. Musisz dor?wna? tempomat z ig??(wskaz?wk?) mierz?c? pr?dko??. Je?eli chcesz to osi?gn?? musisz u?y? matematyki :)

Podpis
Truck soon...
Postaw piwo autorowi tego posta
 

 
Tagi: licznik :: ogranicznik
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Licznik, ogranicznik Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku