Ya esta arreglado!
Os cuento: No conseguía que los vehículos respawneasen, con mi función de respawn, pero se que funciona ya que los vehículos explotados si respawnean con esa función.
Lo que hice fue que tras un timer explotaran y respawneasen a traves de la otra función, pero no todos los vehiculos explotaban, y no me valía, seguí dándole vueltas toda la tarde hasta que se me ocurrió que en una de las variables del código estaban las coordenadas de respawn, asi que lo que hice es tras un timer, el vehiculo (que no sea un barco) se teletransporta a su respawn y se repara y en el caso de que algo saliese mal, el solo explotara y respawneara con la otra función.
Os dejo el código, para que le echéis un vistazo.
Gracias por la ayuda!
function agua()
for i,veh in ipairs(getElementsByType("vehicle")) do
if isElementInWater(veh) then
local col = getElementData(veh,"parent")
local id = getElementData(col,"spawn")[1]
local x = getElementData(col,"spawn")[2]
local y = getElementData(col,"spawn")[3]
local z = getElementData(col,"spawn")[4]
local xveh,yveh,zveh = getElementPosition(veh)
if isNotABoat(id) then
setElementPosition(veh,x,y,z+1)
setElementRotation(veh,0,0,0)
local tires,engine,bateria,part,rotor = getVehicleAddonInfos (getElementModel(veh))
setElementData(col,"Rueda_inVehicle",math.random(0,tires))
setElementData(col,"Motor_inVehicle",math.random(0,engine))
setElementData(col,"Bateria_inVehicle",math.random(0,bateria))
setElementData(col,"Deposito_inVehicle",math.random(0,part))
setElementData(col,"Rotor_inVehicle",math.random(0,rotor))
fixVehicle(veh)
end
end
end
end
function isNotABoat(id)
local boats={472,473,493,595,484,430,453,452,446,454}
for _,boat in ipairs(boats) do
if id == boat then
return false
end
end
return true
end
setTimer(agua,60*1000,0)