Jump to content

help me improve a police lights script


meh

Recommended Posts

hello. today's resource is: https://community.multitheftauto.com/index.php?p= ... ls&id=3475

basically, what it does it makes a vehicle headlights look like this:

well, this is not actually how this mod makes a vehicle headlights look like, but i hope you got the idea. :wink:

and now let's talk about what i want to (with your help) improve in this script. as for now, it only works with some police vehicles, but after some experiments i found out that it's possible to make this script work with all other vehicles, but to do so, u gotta give urself a police vehicle, type /lights 1-2 and after that u can give urself any other vehicle (like infernus) and the script will still work. as you understand that's the really hard way to make this script do what i want. so, i wanna improve it.

if i got it right, then this line's responsible for the vehicles with which this script works:

local id = getElementModel(veh) 
    if (id == 598) or (id == 596) or (id == 597) or (id == 599) then 

but, when i add another vehicle's id (like (id == 411) nothin really happens. why? :?:

here's the script's code itself:

-- Simple Police-Lights by MuLTi! 
  
p_lights = {} 
p_timer = {} 
p_lvar = {} 
p_pvar = {} 
p_lvar2 = {} 
p_lvar3 = {} 
p_lvar4 = {} 
  
  
  
function toggleLights(thePlayer, cmd, level) 
    local level = tonumber(level) 
    if not(level) then outputChatBox("#FF0000 Please select a level![1-2]", thePlayer, 255, 255, 255, true) return end 
    if(level < 1) or (level > 2) then outputChatBox("#FF0000 Please select a level between 1-2!", thePlayer, 255, 255, 255, true) return end 
    local veh = getPedOccupiedVehicle(thePlayer) 
    local id = getElementModel(veh) 
    if (id == 598) or (id == 596) or (id == 597) or (id == 599) then 
        if(level == 1) then 
            if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                p_pvar[veh] = 1 
                p_lights[veh] = 1 
                outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                setVehicleOverrideLights ( veh, 2 ) 
                p_timer[veh] = setTimer( 
                function() 
                    if(p_lvar[veh] == 0) or (p_lvar[veh] == nil) then 
                        p_lvar[veh] = 1 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 0, 1) 
                        setVehicleLightState ( veh, 3, 1) 
                        setVehicleHeadLightColor(veh, 0, 0, 255) 
                    else 
                        setVehicleLightState ( veh, 3, 0) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 1) 
                        setVehicleLightState ( veh, 2, 1)    
                        setVehicleHeadLightColor(veh, 255, 0, 0) 
                        p_lvar[veh] = 0 
                    end 
                end, 500, 0) 
                else 
                    p_lights[veh] = 0 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                    killTimer(p_timer[veh]) 
                    setVehicleLightState ( veh, 0, 0) 
                    setVehicleLightState ( veh, 1, 0) 
                    setVehicleLightState ( veh, 2, 0) 
                    setVehicleLightState ( veh, 3, 0)    
                    setVehicleHeadLightColor(veh, 255, 255, 255) 
                    setVehicleOverrideLights ( veh, 1 ) 
                end 
            elseif(level == 2) then 
                if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                p_lights[veh] = 1 
                outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                setVehicleOverrideLights ( veh, 2 ) 
                p_timer[veh] = setTimer( 
                function() 
                    if(p_lvar3[veh] == 4) then 
                        setTimer(function() p_lvar3[veh] = 0 end, 1000, 1) 
                        setTimer( 
                        function() 
                            if(p_lvar4[veh] == 1)then 
                                p_lvar4[veh] = 0 
                                -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                                setVehicleLightState ( veh, 1, 0) 
                                setVehicleLightState ( veh, 2, 0) 
                                setVehicleLightState ( veh, 0, 1) 
                                setVehicleLightState ( veh, 3, 1) 
                                setVehicleHeadLightColor(veh, 77, 77, 255) 
                            else 
                                setVehicleLightState ( veh, 3, 0) 
                        ш      setVehicleLightState ( veh, 0, 0) 
                                setVehicleLightState ( veh, 1, 1) 
                                setVehicleLightState ( veh, 2, 1)    
                                setVehicleHeadLightColor(veh, 255, 77, 77) 
                                p_lvar4[veh] = 1 
                            end 
                        end, 50, 5) 
                    return end 
                    if(p_lvar2[veh] == 0) or (p_lvar2[veh] == nil) then 
                        p_lvar2[veh] = 1 
                        -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 0, 1) 
                        setVehicleLightState ( veh, 3, 1) 
                        setVehicleHeadLightColor(veh, 0, 0, 255) 
                    else 
                        setVehicleLightState ( veh, 3, 0) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 1) 
                        setVehicleLightState ( veh, 2, 1)    
                        setVehicleHeadLightColor(veh, 255, 0, 0) 
                        p_lvar2[veh] = 0 
                    end 
                    if(p_lvar3[veh] == nil) then p_lvar3[veh] = 0  end 
                    p_lvar3[veh] = (p_lvar3[veh]+1) 
                end, 500, 0) 
                else 
                    p_lights[veh] = 0 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                    killTimer(p_timer[veh]) 
                    setVehicleLightState ( veh, 0, 0) 
                    setVehicleLightState ( veh, 1, 0) 
                    setVehicleLightState ( veh, 2, 0) 
                    setVehicleLightState ( veh, 3, 0)    
                    setVehicleHeadLightColor(veh, 255, 255, 255) 
                    setVehicleOverrideLights ( veh, 1 ) 
                end 
                end 
            end 
end 
addCommandHandler("lights", toggleLights) 
  
  
  
addEventHandler ( "onVehicleExplode", getRootElement(),  
function() 
    if(p_lights[source] == 1) then 
        killTimer(p_timer[source])   
    end 
end ) 
  
addEventHandler ( "onVehicleRespawn", getRootElement(),  
function() 
    if(p_lights[source] == 1) then 
        killTimer(p_timer[source])   
    end 
end ) 
  
addEventHandler("onElementDestroy", getRootElement(),  
function () 
    if getElementType(source) == "vehicle" then 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source]) 
        end 
    end 
end) 

Link to comment

A tip, use the lua tags.

and, /lights 1 to enable and /lights 2 to disable.

read the comment at line: 19

-- Simple Police-Lights by MuLTi! 
  
p_lights = {} 
p_timer = {} 
p_lvar = {} 
p_pvar = {} 
p_lvar2 = {} 
p_lvar3 = {} 
p_lvar4 = {} 
  
  
  
function toggleLights(thePlayer, cmd, level) 
    local level = tonumber(level) 
    if not(level) then outputChatBox("#FF0000 Please select a level![1-2]", thePlayer, 255, 255, 255, true) return end 
    if(level < 1) or (level > 2) then outputChatBox("#FF0000 Please select a level between 1-2!", thePlayer, 255, 255, 255, true) return end 
    local veh = getPedOccupiedVehicle(thePlayer) 
    local id = getElementModel(veh) 
    if (id == 598) or (id == 596) or (id == 597) or (id == 411) then -- here, you see I changed the id '599' to '411' and it worked for me. 
        if(level == 1) then 
            if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                p_pvar[veh] = 1 
                p_lights[veh] = 1 
                outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                setVehicleOverrideLights ( veh, 2 ) 
                p_timer[veh] = setTimer( 
                function() 
                    if(p_lvar[veh] == 0) or (p_lvar[veh] == nil) then 
                        p_lvar[veh] = 1 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 0, 1) 
                        setVehicleLightState ( veh, 3, 1) 
                        setVehicleHeadLightColor(veh, 0, 0, 255) 
                    else 
                        setVehicleLightState ( veh, 3, 0) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 1) 
                        setVehicleLightState ( veh, 2, 1)    
                        setVehicleHeadLightColor(veh, 255, 0, 0) 
                        p_lvar[veh] = 0 
                    end 
                end, 500, 0) 
                else 
                    p_lights[veh] = 0 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                    killTimer(p_timer[veh]) 
                    setVehicleLightState ( veh, 0, 0) 
                    setVehicleLightState ( veh, 1, 0) 
                    setVehicleLightState ( veh, 2, 0) 
                    setVehicleLightState ( veh, 3, 0)    
                    setVehicleHeadLightColor(veh, 255, 255, 255) 
                    setVehicleOverrideLights ( veh, 1 ) 
                end 
            elseif(level == 2) then 
                if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                p_lights[veh] = 1 
                outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                setVehicleOverrideLights ( veh, 2 ) 
                p_timer[veh] = setTimer( 
                function() 
                    if(p_lvar3[veh] == 4) then 
                        setTimer(function() p_lvar3[veh] = 0 end, 1000, 1) 
                        setTimer( 
                        function() 
                            if(p_lvar4[veh] == 1)then 
                                p_lvar4[veh] = 0 
                                -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                                setVehicleLightState ( veh, 1, 0) 
                                setVehicleLightState ( veh, 2, 0) 
                                setVehicleLightState ( veh, 0, 1) 
                                setVehicleLightState ( veh, 3, 1) 
                                setVehicleHeadLightColor(veh, 77, 77, 255) 
                            else 
                                setVehicleLightState ( veh, 3, 0) 
                                setVehicleLightState ( veh, 0, 0) 
                                setVehicleLightState ( veh, 1, 1) 
                                setVehicleLightState ( veh, 2, 1)    
                                setVehicleHeadLightColor(veh, 255, 77, 77) 
                                p_lvar4[veh] = 1 
                            end 
                        end, 50, 5) 
                    return end 
                    if(p_lvar2[veh] == 0) or (p_lvar2[veh] == nil) then 
                        p_lvar2[veh] = 1 
                        -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 0, 1) 
                        setVehicleLightState ( veh, 3, 1) 
                        setVehicleHeadLightColor(veh, 0, 0, 255) 
                    else 
                        setVehicleLightState ( veh, 3, 0) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 1) 
                        setVehicleLightState ( veh, 2, 1)    
                        setVehicleHeadLightColor(veh, 255, 0, 0) 
                        p_lvar2[veh] = 0 
                    end 
                    if(p_lvar3[veh] == nil) then p_lvar3[veh] = 0  end 
                    p_lvar3[veh] = (p_lvar3[veh]+1) 
                end, 500, 0) 
                else 
                    p_lights[veh] = 0 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                    killTimer(p_timer[veh]) 
                    setVehicleLightState ( veh, 0, 0) 
                    setVehicleLightState ( veh, 1, 0) 
                    setVehicleLightState ( veh, 2, 0) 
                    setVehicleLightState ( veh, 3, 0)    
                    setVehicleHeadLightColor(veh, 255, 255, 255) 
                    setVehicleOverrideLights ( veh, 1 ) 
                end 
                end 
            end 
end 
addCommandHandler("lights", toggleLights)  
  
  
  
addEventHandler ( "onVehicleExplode", getRootElement(),  
function() 
    if(p_lights[source] == 1) then 
        killTimer(p_timer[source])   
    end 
end ) 
  
addEventHandler ( "onVehicleRespawn", getRootElement(),  
function() 
    if(p_lights[source] == 1) then 
        killTimer(p_timer[source])   
    end 
end ) 
  
addEventHandler("onElementDestroy", getRootElement(),  
function () 
    if getElementType(source) == "vehicle" then 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source]) 
        end 
    end 
end) 

Link to comment

The code seems to work.

Also, use:

local tVehicles = 
{ 
    [ 598 ] = true; 
    [ 596 ] = true; 
    [ 597 ] = true; 
    [ 411 ] = true; 
    [ 599 ] = true; 
} 

instead.

Example:

local tVehicles = 
{ 
    [ 598 ] = true; 
    [ 596 ] = true; 
    [ 597 ] = true; 
    [ 411 ] = true; 
    [ 599 ] = true; 
} 
  
if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then 
    -- something here 
end 

Link to comment

ye, when i copypasted seb's code it worked, really wierd. also:

    local tVehicles = 
    { 
        [ 598 ] = true; 
        [ 596 ] = true; 
        [ 597 ] = true; 
        [ 411 ] = true; 
        [ 599 ] = true; 
    } 
  
  

i gotta paste to line 18-19, i guess?

Link to comment

like this? it doesn't work. :cry:

    -- Simple Police-Lights by MuLTi! 
      
    p_lights = {} 
    p_timer = {} 
    p_lvar = {} 
    p_pvar = {} 
    p_lvar2 = {} 
    p_lvar3 = {} 
    p_lvar4 = {} 
      
      
      
    function toggleLights(thePlayer, cmd, level) 
        local level = tonumber(level) 
        if not(level) then outputChatBox("#FF0000 Please select a level![1-2]", thePlayer, 255, 255, 255, true) return end 
        if(level < 1) or (level > 2) then outputChatBox("#FF0000 Please select a level between 1-2!", thePlayer, 255, 255, 255, true) return end 
        local veh = getPedOccupiedVehicle(thePlayer) 
        local id = getElementModel(veh) 
    local tVehicles = 
    { 
        [ 598 ] = true; 
        [ 596 ] = true; 
        [ 597 ] = true; 
        [ 411 ] = true; 
        [ 599 ] = true; 
    } 
      
    if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then 
        -- something here 
    end 
         if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then 
            if(level == 1) then 
                if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                    p_pvar[veh] = 1 
                    p_lights[veh] = 1 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                    setVehicleOverrideLights ( veh, 2 ) 
                    p_timer[veh] = setTimer( 
                    function() 
                        if(p_lvar[veh] == 0) or (p_lvar[veh] == nil) then 
                            p_lvar[veh] = 1 
                            setVehicleLightState ( veh, 1, 0) 
                            setVehicleLightState ( veh, 2, 0) 
                            setVehicleLightState ( veh, 0, 1) 
                            setVehicleLightState ( veh, 3, 1) 
                            setVehicleHeadLightColor(veh, 0, 0, 255) 
                        else 
                            setVehicleLightState ( veh, 3, 0) 
                            setVehicleLightState ( veh, 0, 0) 
                            setVehicleLightState ( veh, 1, 1) 
                            setVehicleLightState ( veh, 2, 1)    
                            setVehicleHeadLightColor(veh, 255, 0, 0) 
                            p_lvar[veh] = 0 
                        end 
                    end, 500, 0) 
                    else 
                        p_lights[veh] = 0 
                        outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                        killTimer(p_timer[veh]) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 3, 0)    
                        setVehicleHeadLightColor(veh, 255, 255, 255) 
                        setVehicleOverrideLights ( veh, 1 ) 
                    end 
                elseif(level == 2) then 
                    if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                    p_lights[veh] = 1 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                    setVehicleOverrideLights ( veh, 2 ) 
                    p_timer[veh] = setTimer( 
                    function() 
                        if(p_lvar3[veh] == 4) then 
                            setTimer(function() p_lvar3[veh] = 0 end, 1000, 1) 
                            setTimer( 
                            function() 
                                if(p_lvar4[veh] == 1)then 
                                    p_lvar4[veh] = 0 
                                    -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                                    setVehicleLightState ( veh, 1, 0) 
                                    setVehicleLightState ( veh, 2, 0) 
                                    setVehicleLightState ( veh, 0, 1) 
                                    setVehicleLightState ( veh, 3, 1) 
                                    setVehicleHeadLightColor(veh, 77, 77, 255) 
                                else 
                                    setVehicleLightState ( veh, 3, 0) 
                            ш      setVehicleLightState ( veh, 0, 0) 
                                    setVehicleLightState ( veh, 1, 1) 
                                    setVehicleLightState ( veh, 2, 1)    
                                    setVehicleHeadLightColor(veh, 255, 77, 77) 
                                    p_lvar4[veh] = 1 
                                end 
                            end, 50, 5) 
                        return end 
                        if(p_lvar2[veh] == 0) or (p_lvar2[veh] == nil) then 
                            p_lvar2[veh] = 1 
                            -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                            setVehicleLightState ( veh, 1, 0) 
                            setVehicleLightState ( veh, 2, 0) 
                            setVehicleLightState ( veh, 0, 1) 
                            setVehicleLightState ( veh, 3, 1) 
                            setVehicleHeadLightColor(veh, 0, 0, 255) 
                        else 
                            setVehicleLightState ( veh, 3, 0) 
                            setVehicleLightState ( veh, 0, 0) 
                            setVehicleLightState ( veh, 1, 1) 
                            setVehicleLightState ( veh, 2, 1)    
                            setVehicleHeadLightColor(veh, 255, 0, 0) 
                            p_lvar2[veh] = 0 
                        end 
                        if(p_lvar3[veh] == nil) then p_lvar3[veh] = 0  end 
                        p_lvar3[veh] = (p_lvar3[veh]+1) 
                    end, 500, 0) 
                    else 
                        p_lights[veh] = 0 
                        outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                        killTimer(p_timer[veh]) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 3, 0)    
                        setVehicleHeadLightColor(veh, 255, 255, 255) 
                        setVehicleOverrideLights ( veh, 1 ) 
                    end 
                    end 
                end 
    end 
    addCommandHandler("lights", toggleLights) 
      
      
      
    addEventHandler ( "onVehicleExplode", getRootElement(), 
    function() 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source])  
        end 
    end ) 
      
    addEventHandler ( "onVehicleRespawn", getRootElement(), 
    function() 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source])  
        end 
    end ) 
      
    addEventHandler("onElementDestroy", getRootElement(), 
    function () 
        if getElementType(source) == "vehicle" then 
            if(p_lights[source] == 1) then 
                killTimer(p_timer[source]) 
            end 
        end 
    end) 

Edited by Guest
Link to comment

Also, please use: http://netrac-mta.com/luabttn.PNG

      local tVehicles = -- what draken was saying is, its alot easier to find and edit it now, the code looks more organized too. 
    { 
        [ 598 ] = true; 
        [ 596 ] = true; 
        [ 597 ] = true; 
        [ 411 ] = true; 
        [ 599 ] = true; 
    } 
  
 -- Simple Police-Lights by MuLTi! 
      
    p_lights = {} 
    p_timer = {} 
    p_lvar = {} 
    p_pvar = {} 
    p_lvar2 = {} 
    p_lvar3 = {} 
    p_lvar4 = {} 
      
      
      
    function toggleLights(thePlayer, cmd, level) 
        local level = tonumber(level) 
        if not(level) then outputChatBox("#FF0000 Please select a level![1-2]", thePlayer, 255, 255, 255, true) return end 
        if(level < 1) or (level > 2) then outputChatBox("#FF0000 Please select a level between 1-2!", thePlayer, 255, 255, 255, true) return end 
        local veh = getPedOccupiedVehicle(thePlayer) 
        local id = getElementModel(veh) 
    
         if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then 
            if(level == 1) then 
                if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                    p_pvar[veh] = 1 
                    p_lights[veh] = 1 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                    setVehicleOverrideLights ( veh, 2 ) 
                    p_timer[veh] = setTimer( 
                    function() 
                        if(p_lvar[veh] == 0) or (p_lvar[veh] == nil) then 
                            p_lvar[veh] = 1 
                            setVehicleLightState ( veh, 1, 0) 
                            setVehicleLightState ( veh, 2, 0) 
                            setVehicleLightState ( veh, 0, 1) 
                            setVehicleLightState ( veh, 3, 1) 
                            setVehicleHeadLightColor(veh, 0, 0, 255) 
                        else 
                            setVehicleLightState ( veh, 3, 0) 
                            setVehicleLightState ( veh, 0, 0) 
                            setVehicleLightState ( veh, 1, 1) 
                            setVehicleLightState ( veh, 2, 1)   
                            setVehicleHeadLightColor(veh, 255, 0, 0) 
                            p_lvar[veh] = 0 
                        end 
                    end, 500, 0) 
                    else 
                        p_lights[veh] = 0 
                        outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                        killTimer(p_timer[veh]) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 3, 0)   
                        setVehicleHeadLightColor(veh, 255, 255, 255) 
                        setVehicleOverrideLights ( veh, 1 ) 
                    end 
                elseif(level == 2) then 
                    if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                    p_lights[veh] = 1 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                    setVehicleOverrideLights ( veh, 2 ) 
                    p_timer[veh] = setTimer( 
                    function() 
                        if(p_lvar3[veh] == 4) then 
                            setTimer(function() p_lvar3[veh] = 0 end, 1000, 1) 
                            setTimer( 
                            function() 
                                if(p_lvar4[veh] == 1)then 
                                    p_lvar4[veh] = 0 
                                    -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                                    setVehicleLightState ( veh, 1, 0) 
                                    setVehicleLightState ( veh, 2, 0) 
                                    setVehicleLightState ( veh, 0, 1) 
                                    setVehicleLightState ( veh, 3, 1) 
                                    setVehicleHeadLightColor(veh, 77, 77, 255) 
                                else 
                                    setVehicleLightState ( veh, 3, 0) 
                            ш      setVehicleLightState ( veh, 0, 0) 
                                    setVehicleLightState ( veh, 1, 1) 
                                    setVehicleLightState ( veh, 2, 1)   
                                    setVehicleHeadLightColor(veh, 255, 77, 77) 
                                    p_lvar4[veh] = 1 
                                end 
                            end, 50, 5) 
                        return end 
                        if(p_lvar2[veh] == 0) or (p_lvar2[veh] == nil) then 
                            p_lvar2[veh] = 1 
                            -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                            setVehicleLightState ( veh, 1, 0) 
                            setVehicleLightState ( veh, 2, 0) 
                            setVehicleLightState ( veh, 0, 1) 
                            setVehicleLightState ( veh, 3, 1) 
                            setVehicleHeadLightColor(veh, 0, 0, 255) 
                        else 
                            setVehicleLightState ( veh, 3, 0) 
                            setVehicleLightState ( veh, 0, 0) 
                            setVehicleLightState ( veh, 1, 1) 
                            setVehicleLightState ( veh, 2, 1)   
                            setVehicleHeadLightColor(veh, 255, 0, 0) 
                            p_lvar2[veh] = 0 
                        end 
                        if(p_lvar3[veh] == nil) then p_lvar3[veh] = 0  end 
                        p_lvar3[veh] = (p_lvar3[veh]+1) 
                    end, 500, 0) 
                    else 
                        p_lights[veh] = 0 
                        outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                        killTimer(p_timer[veh]) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 3, 0)   
                        setVehicleHeadLightColor(veh, 255, 255, 255) 
                        setVehicleOverrideLights ( veh, 1 ) 
                    end 
                    end 
                end 
    end 
    addCommandHandler("lights", toggleLights) 
      
      
      
    addEventHandler ( "onVehicleExplode", getRootElement(), 
    function() 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source]) 
        end 
    end ) 
      
    addEventHandler ( "onVehicleRespawn", getRootElement(), 
    function() 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source]) 
        end 
    end ) 
      
    addEventHandler("onElementDestroy", getRootElement(), 
    function () 
        if getElementType(source) == "vehicle" then 
            if(p_lights[source] == 1) then 
                killTimer(p_timer[source]) 
            end 
        end 
    end) 

Edited by Guest
Link to comment
     local tVehicles = -- what draken was saying is, its alot easier to find and edit it now, the code looks more organized too. 
    { 
        [ 598 ] = true; 
        [ 596 ] = true; 
        [ 597 ] = true; 
        [ 411 ] = true; 
        [ 599 ] = true; 
    } 
  
 -- Simple Police-Lights by MuLTi! 
      
    p_lights = {} 
    p_timer = {} 
    p_lvar = {} 
    p_pvar = {} 
    p_lvar2 = {} 
    p_lvar3 = {} 
    p_lvar4 = {} 
      
      
      
    function toggleLights(thePlayer, cmd, level) 
        local level = tonumber(level) 
        if not(level) then outputChatBox("#FF0000 Please select a level![1-2]", thePlayer, 255, 255, 255, true) return end 
        if(level < 1) or (level > 2) then outputChatBox("#FF0000 Please select a level between 1-2!", thePlayer, 255, 255, 255, true) return end 
        local veh = getPedOccupiedVehicle(thePlayer) 
        local id = getElementModel(veh) 
     
         if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then 
            if(level == 1) then 
                if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                    p_pvar[veh] = 1 
                    p_lights[veh] = 1 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                    setVehicleOverrideLights ( veh, 2 ) 
                    p_timer[veh] = setTimer( 
                    function() 
                        if(p_lvar[veh] == 0) or (p_lvar[veh] == nil) then 
                            p_lvar[veh] = 1 
                            setVehicleLightState ( veh, 1, 0) 
                            setVehicleLightState ( veh, 2, 0) 
                            setVehicleLightState ( veh, 0, 1) 
                            setVehicleLightState ( veh, 3, 1) 
                            setVehicleHeadLightColor(veh, 0, 0, 255) 
                        else 
                            setVehicleLightState ( veh, 3, 0) 
                            setVehicleLightState ( veh, 0, 0) 
                            setVehicleLightState ( veh, 1, 1) 
                            setVehicleLightState ( veh, 2, 1)   
                            setVehicleHeadLightColor(veh, 255, 0, 0) 
                            p_lvar[veh] = 0 
                        end 
                    end, 500, 0) 
                    else 
                        p_lights[veh] = 0 
                        outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                        killTimer(p_timer[veh]) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 3, 0)   
                        setVehicleHeadLightColor(veh, 255, 255, 255) 
                        setVehicleOverrideLights ( veh, 1 ) 
                    end 
                elseif(level == 2) then 
                    if(p_lights[veh] == 0) or(p_lights[veh] == nil) then 
                    p_lights[veh] = 1 
                    outputChatBox("#FFFFFFYour Police-lights has been #00FF00enabled.", thePlayer, 0, 200, 100, true) 
                    setVehicleOverrideLights ( veh, 2 ) 
                    p_timer[veh] = setTimer( 
                    function() 
                        if(p_lvar3[veh] == 4) then 
                            setTimer(function() p_lvar3[veh] = 0 end, 1000, 1) 
                            setTimer( 
                            function() 
                                if(p_lvar4[veh] == 1)then 
                                    p_lvar4[veh] = 0 
                                    -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                                    setVehicleLightState ( veh, 1, 0) 
                                    setVehicleLightState ( veh, 2, 0) 
                                    setVehicleLightState ( veh, 0, 1) 
                                    setVehicleLightState ( veh, 3, 1) 
                                    setVehicleHeadLightColor(veh, 77, 77, 255) 
                                else 
                                    setVehicleLightState ( veh, 3, 0) 
                            ш      setVehicleLightState ( veh, 0, 0) 
                                    setVehicleLightState ( veh, 1, 1) 
                                    setVehicleLightState ( veh, 2, 1)   
                                    setVehicleHeadLightColor(veh, 255, 77, 77) 
                                    p_lvar4[veh] = 1 
                                end 
                            end, 50, 5) 
                        return end 
                        if(p_lvar2[veh] == 0) or (p_lvar2[veh] == nil) then 
                            p_lvar2[veh] = 1 
                            -- 0 = vorne links 1 = vorne rechts 2 = hinten links 3 = hinten rechts 
                            setVehicleLightState ( veh, 1, 0) 
                            setVehicleLightState ( veh, 2, 0) 
                            setVehicleLightState ( veh, 0, 1) 
                            setVehicleLightState ( veh, 3, 1) 
                            setVehicleHeadLightColor(veh, 0, 0, 255) 
                        else 
                            setVehicleLightState ( veh, 3, 0) 
                            setVehicleLightState ( veh, 0, 0) 
                            setVehicleLightState ( veh, 1, 1) 
                            setVehicleLightState ( veh, 2, 1)   
                            setVehicleHeadLightColor(veh, 255, 0, 0) 
                            p_lvar2[veh] = 0 
                        end 
                        if(p_lvar3[veh] == nil) then p_lvar3[veh] = 0  end 
                        p_lvar3[veh] = (p_lvar3[veh]+1) 
                    end, 500, 0) 
                    else 
                        p_lights[veh] = 0 
                        outputChatBox("#FFFFFFYour Police-lights has been #00FF00disabled.", thePlayer, 0, 200, 100, true) 
                        killTimer(p_timer[veh]) 
                        setVehicleLightState ( veh, 0, 0) 
                        setVehicleLightState ( veh, 1, 0) 
                        setVehicleLightState ( veh, 2, 0) 
                        setVehicleLightState ( veh, 3, 0)   
                        setVehicleHeadLightColor(veh, 255, 255, 255) 
                        setVehicleOverrideLights ( veh, 1 ) 
                    end 
                    end 
                end 
    end 
    addCommandHandler("lights", toggleLights) 
      
      
      
    addEventHandler ( "onVehicleExplode", getRootElement(), 
    function() 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source]) 
        end 
    end ) 
      
    addEventHandler ( "onVehicleRespawn", getRootElement(), 
    function() 
        if(p_lights[source] == 1) then 
            killTimer(p_timer[source]) 
        end 
    end ) 
      
    addEventHandler("onElementDestroy", getRootElement(), 
    function () 
        if getElementType(source) == "vehicle" then 
            if(p_lights[source] == 1) then 
                killTimer(p_timer[source]) 
            end 
        end 
    end) 

Link to comment
No, yours have two times "if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then".

A copy of my example and the changed code with "if ...".

Oh, lol my misstake I didn't do anything but changing the position of his code. and didn't notice any difference :oops:

Link to comment
No, yours have two times "if ( tVehicles [ getPedOccupiedVehicle ( thePlayer ) ] ) then".

A copy of my example and the changed code with "if ...".

this doesn't matter, since your code doesn't work too. we really should stick to look of the original code.

another question, is it possible to use some button instead of a command? i guees, the code for this should look like:

bindKey("F1", "up", 
    function() 
        carfade = (not carfade) 
        if(carfade)then 
            outputChatBox("#FFFFFF[HIDE]#FF5500Vehicles are now #FF0000hidden!", 255, 128, 0, true) 
        else 
            outputChatBox("#FFFFFF[sHOW]#FF5500Vehicles are now #00FF00visible, carfade has been #00FF00enabled!", 255, 128, 0, true) 
        end 

i copypasted it from a carfade script, so don't mind those carfade words.

Link to comment
Debug the script or you think we need do all for you? lol

you owe me nothing. please relax, we're trying to make this community as friendly as possible, take your part. take a deep breath in, now breath out, breath in and breath out, yea like that. hope, you're feeling better now.

Link to comment
May I ask what are you trying to achieve?

haha, that's a good question. as for now i'm trying to debug this script, since these 2 guys are saying that the script works just fine for them. it doesn't work me tho, so i wanna find out what could go wrong.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...