addEventHandler( "onVehicleEnter", resourceRoot, 
    function( player ) 
        if isVehicleLocked( source ) then 
            cancelEvent( ) 
            removePedFromVehicle( player ) 
            --outputChatBox( "(( Este " .. getVehicleName( source ) .. " esta cerrado. ))", player, 255, 0, 0 ) 
            triggerClientEvent ( player, "gui:hint", player, "Vehiculo", "(( Este " .. getVehicleName( source ) .. " pertenece a " .. name .. ". ))", 3 ) 
        else 
            local data = vehicles[ source ] 
            if data then 
                if data.characterID > 0 then 
                    local name = exports.players:getCharacterName( data.characterID ) 
                    if name then 
                        triggerClientEvent ( player, "gui:hint", player, "Vehiculo", "(( Este " .. getVehicleName( source ) .. " pertenece a " .. name .. ". ))", 3 ) 
                    else 
                        outputDebugString( "Vehicle " .. data.vehicleID .. " (" .. getVehicleName( source ) .. ") has an invalid owner.", 2 ) 
                    end 
                elseif data.characterID < 0 then 
                    outputChatBox( "(( Este " .. getVehicleName( source ) .. " pertenece a " .. tostring( exports.factions:getFactionName( -data.characterID ) ) .. ". ))", player, 255, 204, 0 ) 
                end 
                
                if not p[ player ] then 
                    p[ player ] = { } 
                end 
                p[ player ].vehicle = source 
                
                setVehicleEngineState( source, not doesVehicleHaveEngine( source ) or data.engineState ) 
                
                if hasTintedWindows( source ) then 
                    exports.players:updateNametag( player ) 
                end 
            end 
        end 
    end 
)