Like this health:
--====================================================================================
-- Dommage Véhicule restart depanneur
--====================================================================================
local function CustomVehicleDommage()
local myPed = GetPlayerPed(-1)
local vehicle = GetVehiclePedIsIn(myPed, 0)
if vehicle ~= 0 then
local engineHealth = GetVehicleEngineHealth(vehicle)
local vehicleHealth = GetEntityHealth(vehicle)
local petrolTankeHealth = GetVehiclePetrolTankHealth(vehicle)
local vehicleHealth2 = GetVehicleBodyHealth_2(vehicle)
-- local t2 = (2100 - engineHealth - petrolTankeHealth - vehicleHealth2)
-- ClearPrints()
-- SetTextEntry_2("STRING")
-- AddTextComponentString('~r~' .. math.floor(engineHealth) .. ' ~g~ ' .. vehicleHealth .. ' ~b~ ' .. math.floor(petrolTankeHealth) .. '\n~y~' .. vehicleHealth2 .. '\n~o~' .. t2)
-- DrawSubtitleTimed(200, 1)
if vehicleHealth <= 875 then
SetVehicleEngineTorqueMultiplier(vehicle,0.09)
end
if vehicleHealth <= 840 then
SetVehicleEngineHealth(vehicle, -1.0)
end
-- if vehicleHealth <= 0 or
-- (engineHealth <= 900 and engineHealth > 151) or
-- petrolTankeHealth <= 900 or
-- vehicleHealth - 2000 + engineHealth + petrolTankeHealth <= 0 then
-- SetVehicleEngineHealth(vehicle, -1.0)
-- SetVehicleBodyHealth(0.0)
-- SetVehicleUndriveable(vehicle, true)
-- elseif (2100 - engineHealth - petrolTankeHealth - vehicleHealth2) >= 65 and engineHealth > 150 then
-- SetVehicleDoorOpen(vehicle, 4, 0, 0)
-- SetVehicleBodyHealth(vehicle, vehicleHealth + 2000 - engineHealth - petrolTankeHealth)
-- SetVehicleEngineHealth(vehicle, 150.0)
-- end
-- local total = engineHealth + vehicleHealth + petrolTankeHealth
-- if engineHealth >= 998 and petrolTankeHealth >= 998 then
-- SetEntityHealth(vehicle, 1000)
-- vehicleHealth = 1000
-- end
-- local bodyHealth = vehicleHealth
-- local t = (2000-engineHealth-petrolTankeHealth) + ((1000-vehicleHealth)/25)
-- local t = GetVehicleDeformationAtPos(vehicle,1.21, 6.15, 0.3)
-- t = (t.x * t.x + t.y * t.y + t.z * t.z) * 1000
-- local t = GetVehicleBodyHealth_2(vehicle)
-- if total <= 2850 then
-- SetVehicleDoorOpen(vehicle, 4, 0, 0)
-- end
-- if total < 2800 and engineHealth >= 1 then
-- if vehicleHealth + petrolTankeHealth < 1800 or vehicleHealth < 750 then
-- SetVehicleEngineHealth(vehicle, -1.0)
-- SetVehicleEngineOn(vehicle, 0, 0, 0)
-- SetVehicleBodyHealth(vehicle, vehicleHealth * 0.1 )
-- SetVehicleUndriveable(vehicle, true)
-- else
-- SetVehicleEngineHealth(vehicle, 0.0)
-- SetVehicleEngineOn(vehicle, 0, 0, 0)
-- SetVehicleUndriveable(vehicle, true)
-- end
-- end
--Debug Show Dommage
-- local t = math.floor(GetVehicleBodyHealth_2(vehicle))
-- local t2 = 2100 - engineHealth - petrolTankeHealth - t
-- ClearPrints()
-- SetTextEntry_2("STRING")
-- AddTextComponentString('~r~' .. math.floor(engineHealth) .. ' ~g~ ' .. vehicleHealth .. ' ~b~ ' .. math.floor(petrolTankeHealth) .. '\n~y~' .. t .. '\n~o~' .. t2)
-- DrawSubtitleTimed(200, 1)
end
end
and
function getStatusVehicle()
local myPed = GetPlayerPed(-1)
local vehicle = GetVehicleLookByPlayer(myPed, 3.0)
local p = GetEntityCoords(vehicle, 0)
local h = GetEntityHeading(vehicle)
-- Citizen.Trace('Pos: ' .. p.x .. ' ' .. p.y .. ' ' .. p.z .. ' ' .. h)
if vehicle ~= 0 then
-- local capotOpen = GetVehicleDoorAngleRatio(vehicle, 4) > 0.5
-- if not capotOpen then
-- showMessageInformation(TEXT.CapotFerme)
-- else
local scenario = 'PROP_HUMAN_BUM_SHOPPING_CART'
local pos = GetOffsetFromEntityInWorldCoords(myPed, 0.0, 0.2, 0.0)
--TaskStartScenarioAtPosition(myPed, scenario, pos.x, pos.y, pos.z, 0.0, 8000, 1, 0)
TaskStartScenarioInPlace(myPed, scenario, 8000, 1)
Citizen.Wait(8000)
ClearPedTasks(myPed)
local vehicleHealth = GetVehicleEngineHealth(vehicle)
if vehicleHealth > 900 then
showMessageInformation(TEXT.VehiculeOK,8000)
elseif vehicleHealth >= 150 then
showMessageInformation(TEXT.VehiculeReparable,8000)
else
showMessageInformation(TEXT.VehiculeKO,8000)
end
-- end
else
showMessageInformation(TEXT.PasVehicule)
end
end