i saw you were using player[1] for the message that displays the maximum health.
with the corresponding lines changed and trying it on multiplayer i didn't notice any issues.
local function update_armor_equipment(playerid)
if entity_to_armor ~= nil then
-- debug("equipment : "..serpent.line(equipment.name))
debug("armoring entity : "..serpent.line(entity_to_armor.name))
local player = game.players[playerid]
armor_entity(entity_to_armor, player)
end
end
(maybe then you should change the line 116: armor_entity(vehicule, vehicule.last_user) to armor_entity(vehicule, 1) to be save // edit: nvm i just noticed the function is never called)