Jump to content

[HELP] Auto repair DayZ veh


steadyfi

Recommended Posts

Hello.

I'm trying to make a script for a DayZ server to instantly repair the vehicle (fill in Engine, Tires, Parts, Fuel) but it doesn't seem to fetch the ID correctly and it just jumps to else return end. Anyone knows how I can get the ID of the car correctly ?

Code (Server-Side):

--Make vehicle functional 
function vehicleInstantRepair(thePlayer) 
    local playerVehicle = getPedOccupiedVehicle(thePlayer) 
    local vehID = getElementModel(playerVehicle) 
    if playerVehicle and vehID then 
        if vehID == 422 then vehFuel = 80 engine = 1 tires = 4 parts = 1 
        elseif vehID == 470 then vehFuel = 100 engine = 1 tires = 4 parts = 1 
        elseif vehID == 468 then vehFuel = 30 engine = 1 tires = 2 parts = 1 
        elseif vehID == 433 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
        elseif vehID == 437 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
        elseif vehID == 453 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
        elseif vehID == 509 then vehFuel = 0 engine = 0 tires = 0 parts = 0 
        elseif vehID == 487 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
        elseif vehID == 497 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
        else return end 
        do 
            setElementData(playerVehicle, "Tire_inVehicle", tires) 
            setElementData(playerVehicle, "Engine_inVehicle", engine) 
            setElementData(playerVehicle, "Parts_inVehicle", parts) 
            setElementData(playerVehicle, "fuel", vehFuel) 
        end 
    end 
end 
addCommandHandler("fill", vehicleInstantRepair) 

Note:

No error given as it is jumping to return

Command is unique, it's not a problem from it

Thanks. :)

Link to comment

You need to setElementData to "parent" of vehicle.

function vehicleInstantRepair(thePlayer) 
    local playerVehicle = getPedOccupiedVehicle(thePlayer) 
    local vehID = getElementModel(playerVehicle) 
    if playerVehicle then 
        if vehID == 422 then vehFuel = 80 engine = 1 tires = 4 parts = 1 
            elseif vehID == 470 then vehFuel = 100 engine = 1 tires = 4 parts = 1 
            elseif vehID == 468 then vehFuel = 30 engine = 1 tires = 2 parts = 1 
            elseif vehID == 433 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
            elseif vehID == 437 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
            elseif vehID == 453 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
            elseif vehID == 509 then vehFuel = 0 engine = 0 tires = 0 parts = 0 
            elseif vehID == 487 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
            elseif vehID == 497 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
        else return end 
        do 
        setElementData((getElementData(playerVehicle, "parent")), "Tire_inVehicle", tonumber(tires)) 
        setElementData((getElementData(playerVehicle, "parent")), "Engine_inVehicle", tonumber(engine)) 
        setElementData((getElementData(playerVehicle, "parent")), "Parts_inVehicle", tonumber(parts)) 
        setElementData((getElementData(playerVehicle, "parent")), "fuel", tonumber(vehFuel)) 
        end 
    end 
end 
addCommandHandler("fill", vehicleInstantRepair) 

Link to comment
You need to setElementData to "parent" of vehicle.
function vehicleInstantRepair(thePlayer) 
    local playerVehicle = getPedOccupiedVehicle(thePlayer) 
    local vehID = getElementModel(playerVehicle) 
    if playerVehicle then 
        if vehID == 422 then vehFuel = 80 engine = 1 tires = 4 parts = 1 
            elseif vehID == 470 then vehFuel = 100 engine = 1 tires = 4 parts = 1 
            elseif vehID == 468 then vehFuel = 30 engine = 1 tires = 2 parts = 1 
            elseif vehID == 433 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
            elseif vehID == 437 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
            elseif vehID == 453 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
            elseif vehID == 509 then vehFuel = 0 engine = 0 tires = 0 parts = 0 
            elseif vehID == 487 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
            elseif vehID == 497 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
        else return end 
        do 
        setElementData((getElementData(playerVehicle, "parent")), "Tire_inVehicle", tonumber(tires)) 
        setElementData((getElementData(playerVehicle, "parent")), "Engine_inVehicle", tonumber(engine)) 
        setElementData((getElementData(playerVehicle, "parent")), "Parts_inVehicle", tonumber(parts)) 
        setElementData((getElementData(playerVehicle, "parent")), "fuel", tonumber(vehFuel)) 
        end 
    end 
end 
addCommandHandler("fill", vehicleInstantRepair) 

Thank you it worked !

#SOLVED

Link to comment
You need to setElementData to "parent" of vehicle.
function vehicleInstantRepair(thePlayer) 
    local playerVehicle = getPedOccupiedVehicle(thePlayer) 
    local vehID = getElementModel(playerVehicle) 
    if playerVehicle then 
        if vehID == 422 then vehFuel = 80 engine = 1 tires = 4 parts = 1 
            elseif vehID == 470 then vehFuel = 100 engine = 1 tires = 4 parts = 1 
            elseif vehID == 468 then vehFuel = 30 engine = 1 tires = 2 parts = 1 
            elseif vehID == 433 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
            elseif vehID == 437 then vehFuel = 140 engine = 1 tires = 6 parts = 1 
            elseif vehID == 453 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
            elseif vehID == 509 then vehFuel = 0 engine = 0 tires = 0 parts = 0 
            elseif vehID == 487 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
            elseif vehID == 497 then vehFuel = 60 engine = 1 tires = 0 parts = 1 
        else return end 
        do 
        setElementData((getElementData(playerVehicle, "parent")), "Tire_inVehicle", tonumber(tires)) 
        setElementData((getElementData(playerVehicle, "parent")), "Engine_inVehicle", tonumber(engine)) 
        setElementData((getElementData(playerVehicle, "parent")), "Parts_inVehicle", tonumber(parts)) 
        setElementData((getElementData(playerVehicle, "parent")), "fuel", tonumber(vehFuel)) 
        end 
    end 
end 
addCommandHandler("fill", vehicleInstantRepair) 

Thank you it worked !

#SOLVED

Your welcome!

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...