Exports (server)#
DeleteVehicle#
Deletes a vehicle from the world and the internal table so that it doesn't respawn.
Parameters:
vehicle - int - The vehicle to delete.
keepInWorld? - bool - If the vehicle should stay in the world.
Returns:
boolean - If deleting was successful.
GetVehiclePosition#
Returns the position of a single vehicle. If vehicle is present on server side will get the
position using GetEntityCoords. If not present, it will check AdvancedParking's data for the last
saved position.
Parameters:
plate - string - The license plate text of a vehicle (not case sensitive) (checks full plate
and trimmed plate).
Returns:
vector3? - The position of the vehicle or nil.
GetVehiclePositions#
Returns the positions of several given vehicles. If vehicle is present on server side will get the
position using GetEntityCoords. If not present, it will check AdvancedParking's data for the last
saved position.
Parameters:
plates - table<string> - Table containing license plates (not case sensitive) (checks full
plate and trimmed plate).
Returns:
dictionary<string, vector3> - The positions of the vehicles. Can be empty if none was found.
local plateList = { plate1, plate2, plate3 }
local positions = exports["AdvancedParking"]:GetVehiclePositions(plateList)
for plate, position in pairs(positions) do
print(plate, tostring(position))
end
DeleteVehicleUsingData#
Delete a vehicle without having access to the entity directly. At least one of the first three parameters must be provided.
Parameters:
identifier? - string - The unique identifier provided by AdvancedParking.
networkId? - int - The vehicle entity's network id.
plate? - string - The vehicles license plate text.
keepInWorld? - bool - If the vehicle should stay in the world.
Returns:
boolean - If deleting was successful.
local identifier = Entity(vehicle).state.ap_id
local networkId = NetworkGetNetworkIdFromEntity(vehicle)
local plate = GetVehicleNumberPlateText(vehicle)
local success = exports["AdvancedParking"]:DeleteVehicleUsingData(identifier, networkId, plate, true)
GetVehicleFromStateBagValue#
Tries to find a vehicle that has a specific state bag value attached.
Parameters:
bagName - string - The key to search for.
bagValue - any - The value to search for.
Returns:
int? - The vehicle handle if a match was found or nil.
GetStateBagsFromVehicle#
Gets all state bags from a vehicle that has been saved by AdvancedParking.
Parameters:
vehicle - int - The vehicle handle.
Returns:
dictionary<bagName, bagValue>? - A table containing all found state bag keys and values or nil if
vehicle was not found.
local stateBags = exports["AdvancedParking"]:GetStateBagsFromVehicle(vehicle)
if (stateBags) then
for bagName, bagValue in pairs(stateBags) do
print(bagName, type(bagValue) == "table" and bagValue or json.encode(bagValue))
end
end
GetStateBagsFromPlate#
Gets all state bags from a vehicle that has been saved by AdvancedParking given its plate.
Parameters:
plate - string - The vehicle's license plate text.
Returns:
dictionary<bagName, bagValue>? - A table containing all found state bag keys and values or nil if
vehicle was not found.
local stateBags = exports["AdvancedParking"]:GetStateBagsFromPlate("KIMINAZE")
if (stateBags) then
for bagName, bagValue in pairs(stateBags) do
print(bagName, type(bagValue) == "table" and bagValue or json.encode(bagValue))
end
end
ForceVehicleUpdateInDB#
Forces an update of all currently set values of the specified vehicle to the database. Does nothing if identifier was not found.
Parameters:
identifier - string - AdvancedParking's internal identifier of the vehicle.
local identifier = Entity(vehicle)?.state?.ap_id
exports["AdvancedParking"]:ForceVehicleUpdateInDB(identifier)
GetVehicleData#
Gets all of AdvancedParking's data from a specified vehicle.
Parameters:
vehicle - int - The vehicle handle.
Returns:
dictionary<key, value>? - A table containing all data from the vehicle or nil if vehicle was
not found.
GetVehicleTuningFromData#
Gets all tuning data of AdvancedParking's data from a specified vehicle.
Parameters:
vehicle - int - The vehicle handle.
Returns:
table? - A table containing all tuning data from the vehicle or nil if vehicle was not found.
UpdatePlate#
Updates a plate in AdvancedParking's data. This is necessary when changing a saved vehicle's plate so that it doesn't get caught by one of the error protection systems.
Parameters:
networkId - int - The vehicle's network id.
newPlate - string - The new plate to set.
FreezeVehicle#
Freezes (or unfreezes) a vehicle. This is intended to be used from the fixFreezeEntity.lua but
can be used when the file cannot be used. Can only be executed when using the
forceUnfreezeVehicles config option.
Parameters:
vehicle - int - The vehicle handle.
freeze - boolean - true for freezing, false for unfreezing.