Asi deberia de funcionar:
addEvent("onPlayerHitToxicWater", true)
local function toxicWaterDeath()
if client ~= source then return end
if not isPedDead(source) then
if isPedInVehicle(source) then
blowVehicle(getPedOccupiedVehicle(source), true)
else
setTimer(setElementHealth,10000,1,source,0) --Tenias mal el orden de los argumentos...
end
end
end
addEventHandler("onPlayerHitToxicWater", root, toxicWaterDeath)
PD: Tambien seria bueno hacer que el vehiculo explote en 20 segundos, por que podria pasar que se caiga un poco por una mala frenada, y el usuario quiera tiempo para moverlo a la orilla..