Server Exports
MDT Management
MdtTriggerEvent
This will trigger an event for everyone in the MDT, usually used to update states
---@param eventname string
---@param data string | table
exports['pure_mdt']:MdtTriggerEvent(eventname, data)
Open MDT
This will open the MDT
---@param src number
---@return boolean
local success = exports['pure_mdt']:OpenMDT(src)
Get Total Charges
Within the MDT, it works of a 3 tier charge system 'Infraction', 'Misdemeanor' and 'Felony', this export will search for all the charges a player has in which are not a 'Infraction'
---@param uniqueId string
---@return amount number
local amount = exports['pure_mdt']:GetTotalCharges(uniqueId)
Change Callsign
This will change their callsign, ensure they already have a callsign on the MDT
---@param src number
---@param callsign string
---@return boolean
local success = exports['pure_mdt']:NewCallsign(src, callsign)
Dispatch
Add Dispatch Call
This will add a disptach call, it is essential you add this to your dispatch script in order to sync them, this returns the dispatch id
-- data: {
-- code: string;
-- title: string;
-- id: number;
-- colour: string;
-- coords: number[];
-- jobs: string[];
-- createCall: boolean;
-- timestamp: number;
-- location: string;
-- callArray: {
-- timestamp: number;
-- location: string;
-- name: string;
-- message: string;
-- car: string;
-- plate: string;
-- colour: string;
-- number: string;
-- weapon: string;
-- }
-- }
local id = exports['pure_mdt']:AddDispatchCall(data)
Or use the event
TriggerServerEvent('mdt:dispatch:AddCall', data)
Remove Dispatch Call
This removes the dispatch call from the MDT
---@param id number
exports['pure_mdt']:RemoveDispatchCall(id)
Weapons
Register Weapon
This is used say in ox_inventory as per example below to add a police weapon as a registered weapon If using ox_inventory the hook will already detect a weapons purchase from the gunstore
---@param serial string
---@param registered boolean
---@param weaponName string
exports['pure_mdt']:RegisterWeapon(serial, registered, weaponName)
---@line 182
REPLACE:
if metadata.registered ~= false and (metadata.ammo or item.name == 'WEAPON_STUNGUN') then
local registered = type(metadata.registered) == 'string' and metadata.registered or inv?.player?.name
metadata.registered = registered
metadata.serial = GenerateSerial(metadata.serial)
end
WITH:
if metadata.registered ~= false and (metadata.ammo or item.name == 'WEAPON_TASER') then
local registered = type(metadata.registered) == 'string' and metadata.registered or inv?.player?.name
metadata.registered = registered
metadata.serial = GenerateSerial(metadata.serial)
exports['pure_mdt']:RegisterWeapon(metadata.serial, metadata.registered, string.gsub(item.name, 'WEAPON_', ''))
end