Tutorials

Export for garage:

Add wheelclamp after spawn car export:

Server side:

--- @param vehicle number
--- @param plate string
exports.baspel_wheelclamp:checkWheelClamp(vehicle, plate)

Add wheelclamp after spawn car export - EXAMPLE:

Script used for this demonstraton: https://github.com/esx-framework/esx_garage

RegisterServerEvent('esx_garage:updateOwnedVehicle')
AddEventHandler('esx_garage:updateOwnedVehicle', function(stored, parking, Impound, data, spawn)
	local source = source
	local xPlayer  = ESX.GetPlayerFromId(source)
		MySQL.update('UPDATE owned_vehicles SET `stored` = @stored, `parking` = @parking, `pound` = @Impound, `vehicle` = @vehicle WHERE `plate` = @plate AND `owner` = @identifier',
		{
			['@identifier'] = xPlayer.identifier,
			['@vehicle'] 	= json.encode(data.vehicleProps),
			['@plate'] 		= data.vehicleProps.plate,
			['@stored']     = stored,
			['@parking']    = parking,
			['@Impound']    = Impound
		})

		if stored then
			xPlayer.showNotification(TranslateCap('veh_stored'))
		else 
			ESX.OneSync.SpawnVehicle(data.vehicleProps.model, spawn, data.spawnPoint.heading,data.vehicleProps, function(vehicle)
				local vehicle = NetworkGetEntityFromNetworkId(vehicle)
				Wait(300)
				
				TaskWarpPedIntoVehicle(GetPlayerPed(source), vehicle, -1)
			end)
		end
end)

Export for vehicle shop:

Create vin for car after you bought car:

Server side:

--- @param vehicle number
--- @param plate string
exports.baspel_wheelclamp:createVin(vehicle, plate)

Create vin for car after you bought car - EXAMPLE:

Script used for this demonstration: https://github.com/esx-framework/esx_vehicleshop

ESX.RegisterServerCallback('esx_vehicleshop:buyVehicle', function(source, cb, model, plate)
	local xPlayer = ESX.GetPlayerFromId(source)
	local modelPrice = getVehicleFromModel(model).price

	if modelPrice and xPlayer.getMoney() >= modelPrice then
		xPlayer.removeMoney(modelPrice, "Vehicle Purchase")

		MySQL.insert('INSERT INTO owned_vehicles (owner, plate, vehicle) VALUES (?, ?, ?)', {xPlayer.identifier, plate, json.encode({model = joaat(model), plate = plate})
		}, function(rowsChanged)
			xPlayer.showNotification(TranslateCap('vehicle_belongs', plate))
			ESX.OneSync.SpawnVehicle(joaat(model), Config.Zones.ShopOutside.Pos, Config.Zones.ShopOutside.Heading,{plate = plate}, function(vehicle)
				Wait(100)
				local vehicle = NetworkGetEntityFromNetworkId(vehicle)
				Wait(300)
				TaskWarpPedIntoVehicle(GetPlayerPed(source), vehicle, -1)
				
			end)
			cb(true)
		end)
	else
		cb(false)
	end
end)

Export for addClamp:

Add wheelclamp from your external script:

Server side:

--- @param src number
--- @param netId number
exports.baspel_wheelclamp:addClamp(src, netId)

Export for removeClamp:

Remove wheelclamp from your external script:

Server side:

--- @param src number
--- @param netId number
exports.baspel_wheelclamp:removeClamp(src, netId)

Export for removeClampByVIN:

Special type for remove wheelclamp from your exrernal script, using VIN:

Server side:

---@param plate string
exports.baspel_wheelclamp:removeClampByVIN(plate)

Last updated