The vehicles will teleport to the first vehicle spawn point when you restart it, so you have to do object_create_anew to make them spawn in their proper place again. I suggest you make a trigger volume, big enough so that your vehicle will fit inside. Place the trigger volume on the first vehicle spawn point. Then, use these scripts:
(script continuous vehiclerespawn1
(if (= (volume_test_object <triggervolumehere> tallstep1a) true)
(object_create_anew tallstep1a)
)
)
(script continuous vehiclerespawn2
(if (= (volume_test_object <triggervolumehere> tallstep2a) true)
(object_create_anew tallstep2a)
)
)
This will create the vehicles in their proper spawn points when they go in the trigger volume (like when you restart the map). Also, a good thing about object_create_anew is that it will never create a new object when the current object has a player in it. However, if AI are in the vehicle and drive into the trigger volume, it will create a new one and the AI will be erased.