forked from Simnation/Main
868 lines
25 KiB
Lua
868 lines
25 KiB
Lua
local function CustomAlert(data)
|
|
local coords = data.coords or vec3(0.0, 0.0, 0.0)
|
|
local gender = GetPlayerGender()
|
|
if not data.gender then gender = nil end
|
|
|
|
|
|
local dispatchData = {
|
|
message = data.message or "", -- Title of the alert
|
|
codeName = data.dispatchCode or "NONE", -- Unique name for each alert
|
|
code = data.code or '10-80', -- Code that is displayed before the title
|
|
icon = data.icon or 'fas fa-question', -- Icon that is displaed after the title
|
|
priority = data.priority or 2, -- Changes color of the alert ( 1 = red, 2 = default )
|
|
coords = coords, -- Coords of the player
|
|
gender = gender, -- Gender of the player
|
|
street = GetStreetAndZone(coords), -- Street of the player
|
|
camId = data.camId or nil, -- Cam ID ( for heists )
|
|
color = data.firstColor or nil, -- Color of the vehicle
|
|
callsign = data.callsign or nil, -- Callsigns
|
|
name = data.name or nil, -- Name of either officer/ems or a player
|
|
vehicle = data.model or nil, -- Vehicle name
|
|
plate = data.plate or nil, -- Vehicle plate
|
|
alertTime = data.alertTime or nil, -- How long it stays on the screen in seconds
|
|
doorCount = data.doorCount or nil, -- How many doors on vehicle
|
|
automaticGunfire = data.automaticGunfire or false, -- Automatic Gun or not
|
|
alert = {
|
|
radius = data.radius or 0, -- Radius around the blip
|
|
sprite = data.sprite or 1, -- Sprite of the blip
|
|
color = data.color or 1, -- Color of the blip
|
|
scale = data.scale or 0.5, -- Scale of the blip
|
|
length = data.length or 2, -- How long it stays on the map
|
|
sound = data.sound or "Lose_1st", -- Alert sound
|
|
sound2 = data.sound2 or "GTAO_FM_Events_Soundset", -- Alert sound
|
|
offset = data.offset or false, -- Blip / radius offset
|
|
flash = data.flash or false -- Blip flash
|
|
},
|
|
jobs = data.jobs or { 'police' },
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('CustomAlert', CustomAlert)
|
|
|
|
local function VehicleTheft()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
local vehicle = GetVehicleData(cache.vehicle)
|
|
|
|
local dispatchData = {
|
|
message = locale('vehicletheft'),
|
|
codeName = 'vehicletheft',
|
|
code = '10-35',
|
|
icon = 'fas fa-car-burst',
|
|
priority = 2,
|
|
coords = coords,
|
|
street = GetStreetAndZone(coords),
|
|
heading = GetPlayerHeading(),
|
|
vehicle = vehicle.name,
|
|
plate = vehicle.plate,
|
|
color = vehicle.color,
|
|
class = vehicle.class,
|
|
doors = vehicle.doors,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('VehicleTheft', VehicleTheft)
|
|
|
|
local function Shooting()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('shooting'),
|
|
codeName = 'shooting',
|
|
code = '10-11',
|
|
icon = 'fas fa-gun',
|
|
priority = 2,
|
|
coords = coords,
|
|
street = GetStreetAndZone(coords),
|
|
gender = GetPlayerGender(),
|
|
weapon = GetWeaponName(),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('Shooting', Shooting)
|
|
|
|
local function Hunting()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('hunting'),
|
|
codeName = 'hunting',
|
|
code = '10-13',
|
|
icon = 'fas fa-gun',
|
|
priority = 2,
|
|
weapon = GetWeaponName(),
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('Hunting', Hunting)
|
|
|
|
local function VehicleShooting()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
local vehicle = GetVehicleData(cache.vehicle)
|
|
|
|
local dispatchData = {
|
|
message = locale('vehicleshots'),
|
|
codeName = 'vehicleshots',
|
|
code = '10-60',
|
|
icon = 'fas fa-gun',
|
|
priority = 2,
|
|
coords = coords,
|
|
weapon = GetWeaponName(),
|
|
street = GetStreetAndZone(coords),
|
|
heading = GetPlayerHeading(),
|
|
vehicle = vehicle.name,
|
|
plate = vehicle.plate,
|
|
color = vehicle.color,
|
|
class = vehicle.class,
|
|
doors = vehicle.doors,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('VehicleShooting', VehicleShooting)
|
|
|
|
local function SpeedingVehicle()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
local vehicle = GetVehicleData(cache.vehicle)
|
|
|
|
local dispatchData = {
|
|
message = locale('speeding'),
|
|
codeName = 'speeding',
|
|
code = '10-11',
|
|
icon = 'fas fa-car',
|
|
priority = 2,
|
|
coords = coords,
|
|
street = GetStreetAndZone(coords),
|
|
heading = GetPlayerHeading(),
|
|
vehicle = vehicle.name,
|
|
plate = vehicle.plate,
|
|
color = vehicle.color,
|
|
class = vehicle.class,
|
|
doors = vehicle.doors,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('SpeedingVehicle', SpeedingVehicle)
|
|
|
|
local function Fight()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('melee'),
|
|
codeName = 'fight',
|
|
code = '10-10',
|
|
icon = 'fas fa-hand-fist',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('Fight', Fight)
|
|
|
|
local function PrisonBreak()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('prisonbreak'),
|
|
codeName = 'prisonbreak',
|
|
code = '10-90',
|
|
icon = 'fas fa-vault',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('PrisonBreak', PrisonBreak)
|
|
|
|
local function StoreRobbery(camId)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('storerobbery'),
|
|
codeName = 'storerobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-store',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
camId = camId,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('StoreRobbery', StoreRobbery)
|
|
|
|
local function FleecaBankRobbery(camId)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('fleecabank'),
|
|
codeName = 'bankrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-vault',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
camId = camId,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('FleecaBankRobbery', FleecaBankRobbery)
|
|
|
|
local function PaletoBankRobbery(camId)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('paletobank'),
|
|
codeName = 'paletobankrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-vault',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
camId = camId,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('PaletoBankRobbery', PaletoBankRobbery)
|
|
|
|
local function PacificBankRobbery(camId)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('pacificbank'),
|
|
codeName = 'pacificbankrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-vault',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
camId = camId,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('PacificBankRobbery', PacificBankRobbery)
|
|
|
|
local function VangelicoRobbery(camId)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('vangelico'),
|
|
codeName = 'vangelicorobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-gem',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
camId = camId,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('VangelicoRobbery', VangelicoRobbery)
|
|
|
|
local function HouseRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('houserobbery'),
|
|
codeName = 'houserobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-house',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('HouseRobbery', HouseRobbery)
|
|
|
|
local function YachtHeist()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('yachtheist'),
|
|
codeName = 'yachtheist',
|
|
code = '10-65',
|
|
icon = 'fas fa-house',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('YachtHeist', YachtHeist)
|
|
|
|
local function DrugSale()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('drugsell'),
|
|
codeName = 'suspicioushandoff',
|
|
code = '10-13',
|
|
icon = 'fas fa-tablets',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('DrugSale', DrugSale)
|
|
|
|
local function SuspiciousActivity()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('susactivity'),
|
|
codeName = 'susactivity',
|
|
code = '10-66',
|
|
icon = 'fas fa-tablets',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('SuspiciousActivity', SuspiciousActivity)
|
|
|
|
local function CarJacking(vehicle)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
local vehicle = GetVehicleData(vehicle)
|
|
|
|
local dispatchData = {
|
|
message = locale('carjacking'),
|
|
codeName = 'carjack',
|
|
code = '10-35',
|
|
icon = 'fas fa-car',
|
|
priority = 2,
|
|
coords = coords,
|
|
street = GetStreetAndZone(coords),
|
|
heading = GetPlayerHeading(),
|
|
vehicle = vehicle.name,
|
|
plate = vehicle.plate,
|
|
color = vehicle.color,
|
|
class = vehicle.class,
|
|
doors = vehicle.doors,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('CarJacking', CarJacking)
|
|
|
|
local function InjuriedPerson()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('persondown'),
|
|
codeName = 'civdown',
|
|
code = '10-69',
|
|
icon = 'fas fa-face-dizzy',
|
|
priority = 1,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = 10,
|
|
jobs = { 'ems' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('InjuriedPerson', InjuriedPerson)
|
|
|
|
local function DeceasedPerson()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('civbled'),
|
|
codeName = 'civdead',
|
|
code = '10-69',
|
|
icon = 'fas fa-skull',
|
|
priority = 1,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = 10,
|
|
jobs = { 'ems' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('DeceasedPerson', DeceasedPerson)
|
|
|
|
local function OfficerDown()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('officerdown'),
|
|
codeName = 'officerdown',
|
|
code = '10-99',
|
|
icon = 'fas fa-skull',
|
|
priority = 1,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
name = PlayerData.charinfo.firstname .. " " .. PlayerData.charinfo.lastname,
|
|
callsign = PlayerData.metadata["callsign"],
|
|
alertTime = 10,
|
|
jobs = { 'ems', 'leo' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('OfficerDown', OfficerDown)
|
|
|
|
RegisterNetEvent("ps-dispatch:client:officerdown", function() OfficerDown() end)
|
|
|
|
local function OfficerBackup()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('officerbackup'),
|
|
codeName = 'officerbackup',
|
|
code = '10-32',
|
|
icon = 'fas fa-skull',
|
|
priority = 1,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
name = PlayerData.charinfo.firstname .. " " .. PlayerData.charinfo.lastname,
|
|
callsign = PlayerData.metadata["callsign"],
|
|
alertTime = 10,
|
|
jobs = { 'ems', 'leo' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('OfficerBackup', OfficerBackup)
|
|
|
|
RegisterNetEvent("ps-dispatch:client:officerbackup", function() OfficerBackup() end)
|
|
|
|
local function OfficerInDistress()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('officerdistress'),
|
|
codeName = 'officerdistress',
|
|
code = '10-99',
|
|
icon = 'fas fa-skull',
|
|
priority = 1,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
name = PlayerData.charinfo.firstname .. " " .. PlayerData.charinfo.lastname,
|
|
callsign = PlayerData.metadata["callsign"],
|
|
alertTime = 10,
|
|
jobs = { 'ems', 'leo' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('OfficerInDistress', OfficerInDistress)
|
|
|
|
local function EmsDown()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('emsdown'),
|
|
codeName = 'emsdown',
|
|
code = '10-99',
|
|
icon = 'fas fa-skull',
|
|
priority = 1,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
name = PlayerData.charinfo.firstname .. " " .. PlayerData.charinfo.lastname,
|
|
callsign = PlayerData.metadata["callsign"],
|
|
alertTime = 10,
|
|
jobs = { 'ems', 'leo' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('EmsDown', EmsDown)
|
|
|
|
RegisterNetEvent("ps-dispatch:client:emsdown", function() EmsDown() end)
|
|
|
|
local function Explosion()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('explosion'),
|
|
codeName = 'explosion',
|
|
code = '10-80',
|
|
icon = 'fas fa-fire',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('Explosion', Explosion)
|
|
|
|
local function PhoneCall(message, anonymous, job, type)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
if IsCallAllowed(message) then
|
|
PhoneAnimation()
|
|
|
|
local dispatchData = {
|
|
message = anonymous and locale('anon_call') or locale('call'),
|
|
codeName = type == '311' and '311call' or '911call',
|
|
code = type,
|
|
icon = 'fas fa-phone',
|
|
priority = 2,
|
|
coords = coords,
|
|
name = anonymous and locale('anon') or (PlayerData.charinfo.firstname .. " " .. PlayerData.charinfo.lastname),
|
|
number = anonymous and locale('hidden_number') or PlayerData.charinfo.phone,
|
|
information = message,
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = job
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
end
|
|
|
|
--- @param data string -- Message
|
|
--- @param type string -- What type of emergency
|
|
--- @param anonymous boolean -- Is the call anonymous
|
|
local pslastaction = 0
|
|
RegisterNetEvent('ps-dispatch:client:sendEmergencyMsg', function(data, type, anonymous)
|
|
local year, month , day , hour, minute, second = GetUtcTime()
|
|
local idtrack = tonumber(hour..minute..second)
|
|
local spamdetek = idtrack - pslastaction
|
|
if spamdetek < 0 then spamdetek = Config.AlertCommandCooldown end
|
|
if spamdetek <= Config.AlertCommandCooldown and pslastaction > 0 then
|
|
pslastaction = idtrack
|
|
QBCore.Functions.Notify("Command on cooldown", "error")
|
|
else
|
|
pslastaction = idtrack
|
|
local jobs = { ['911'] = { 'police' }, ['311'] = { 'ems' } }
|
|
PhoneCall(data, anonymous, jobs[type], type)
|
|
end
|
|
end)
|
|
|
|
|
|
local function ArtGalleryRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('artgalleryrobbery'),
|
|
codeName = 'artgalleryrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-brush',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('ArtGalleryRobbery', ArtGalleryRobbery)
|
|
|
|
local function HumaneRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('humanelabsrobbery'),
|
|
codeName = 'humanelabsrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-flask-vial',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
|
|
end
|
|
exports('HumaneRobbery', HumaneRobbery)
|
|
|
|
local function TrainRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('trainrobbery'),
|
|
codeName = 'trainrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-train',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
|
|
end
|
|
exports('TrainRobbery', TrainRobbery)
|
|
|
|
local function VanRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('vanrobbery'),
|
|
codeName = 'vanrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-van-shuttle',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
|
|
end
|
|
exports('VanRobbery', VanRobbery)
|
|
|
|
local function UndergroundRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('undergroundrobbery'),
|
|
codeName = 'undergroundrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-person-rays',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('UndergroundRobbery', UndergroundRobbery)
|
|
|
|
local function DrugBoatRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('drugboatrobbery'),
|
|
codeName = 'drugboatrobbery',
|
|
code = '10-65',
|
|
icon = 'fas fa-ship',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('DrugBoatRobbery', DrugBoatRobbery)
|
|
|
|
local function UnionRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('unionrobbery'),
|
|
codeName = 'unionrobbery',
|
|
code = '10-90',
|
|
icon = 'fas fa-truck-field',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('UnionRobbery', UnionRobbery)
|
|
|
|
local function CarBoosting(vehicle)
|
|
local coords = GetEntityCoords(cache.ped)
|
|
local vehicle = GetVehicleData(vehicle or cache.vehicle)
|
|
|
|
local dispatchData = {
|
|
message = locale('carboosting'),
|
|
codeName = 'carboosting',
|
|
code = '10-50',
|
|
icon = 'fas fa-car',
|
|
priority = 2,
|
|
coords = coords,
|
|
street = GetStreetAndZone(coords),
|
|
heading = GetPlayerHeading(),
|
|
vehicle = vehicle.name,
|
|
plate = vehicle.plate,
|
|
color = vehicle.color,
|
|
class = vehicle.class,
|
|
doors = vehicle.doors,
|
|
alertTime = nil,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('CarBoosting', CarBoosting)
|
|
|
|
local function SignRobbery()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('signrobbery'),
|
|
codeName = 'signrobbery',
|
|
code = '10-10',
|
|
icon = 'fab fa-artstation',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'leo'}
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('SignRobbery', SignRobbery)
|
|
|
|
local function BobcatSecurityHeist()
|
|
local coords = GetEntityCoords(cache.ped)
|
|
|
|
local dispatchData = {
|
|
message = locale('bobcatsecurity'),
|
|
codeName = 'bobcatsecurityheist',
|
|
code = '10-90',
|
|
icon = 'fa-solid fa-building-shield',
|
|
priority = 2,
|
|
coords = coords,
|
|
gender = GetPlayerGender(),
|
|
street = GetStreetAndZone(coords),
|
|
alertTime = nil,
|
|
jobs = { 'leo'}
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('BobcatSecurityHeist', BobcatSecurityHeist)
|
|
|
|
local function MagnetFishing(data)
|
|
local coords = data.coords
|
|
local gender = data.gender or GetPlayerGender()
|
|
local streetName = data.streetName or GetStreetAndZone(coords)
|
|
local itemName = data.itemName
|
|
|
|
local message = "^3Verdächtige Aktivität^7: Person beim Magnetfischen"
|
|
local description = "Eine " .. gender .. " Person wurde beim Magnetfischen gesehen."
|
|
local priority = 2
|
|
local blipSprite = 68
|
|
local blipColour = 5
|
|
local icon = 'fas fa-magnet'
|
|
|
|
-- Spezifische Beschreibungen für bestimmte Items
|
|
if itemName == "old_gun" then
|
|
description = "Eine " .. gender .. " Person wurde beim Magnetfischen gesehen und hat möglicherweise eine Waffe gefunden!"
|
|
priority = 3
|
|
blipColour = 1
|
|
elseif itemName == "safe" then
|
|
description = "Eine " .. gender .. " Person wurde beim Magnetfischen gesehen und hat einen Tresor geborgen. Könnte gestohlen sein!"
|
|
priority = 3
|
|
blipColour = 1
|
|
elseif itemName == "old_ammunition" then
|
|
description = "Eine " .. gender .. " Person wurde beim Magnetfischen gesehen und hat Munition gefunden!"
|
|
priority = 2
|
|
blipColour = 1
|
|
end
|
|
|
|
local dispatchData = {
|
|
message = message,
|
|
codeName = 'magnetfishing',
|
|
code = '10-66',
|
|
icon = icon,
|
|
priority = priority,
|
|
coords = coords,
|
|
gender = gender,
|
|
street = streetName,
|
|
alertTime = 5000,
|
|
blipSprite = blipSprite,
|
|
blipColour = blipColour,
|
|
blipScale = 1.0,
|
|
blipLength = 2 * 60000, -- 2 Minuten
|
|
sound = 'Lose',
|
|
soundName = 'GTAO_FM_Events_Soundset',
|
|
infoM = description,
|
|
jobs = { 'police' }
|
|
}
|
|
|
|
TriggerServerEvent('ps-dispatch:server:notify', dispatchData)
|
|
end
|
|
exports('MagnetFishing', MagnetFishing)
|