You can invoke a lot of "getVehicle..." natives that control the state of the vehicle, including dirt, door statuses, headlights etc - and there's even a native to copy the complete visual damage from one vehicle to another. Use these natives to store the state of the vehicle in more detail, and apply that when the vehicle is spawned again. Examples of all the natives are here (https://cdn.rage.mp/public/natives/#native_0x8F17BC8BA08DA62B)