TGIANN
YoutubeDiscordTebexFivem
  • Main
    • Welcome
    • How to Find My Transaction ID
    • How can i download my script
    • How can i transfer my script
    • Whats escrow system?
    • Switching from MySQL Async to oxmysql
    • Basic Aces & Principals overview/guide
    • Using QB scripts in QBOX
    • How can i use Fivemanage
  • Common errors
    • SCRIPT ERROR: ?:-1: attempt to call a nil value
    • TGIANN-Core script is not in my keymaster account
    • You lack the required entitlement to use tgiann-*
    • Error parsing script / Failed to load script
    • Error: syntax error near '<\1>'
    • When I buy something, the money goes negative
    • Failed to verify protected resource
  • Sounds in the script are not working
  • Crashes related to clothing
  • Map
    • lumi-delperropier
      • Setup
      • Conflicts
      • Disable NPC
      • Rcore Funfair Cords
      • CS-Hall Config
  • Scripts
    • tgiann-animpos-photo-cam
      • Editable Files
      • Config File
      • Exports
    • tgiann-self-storage-v2
      • Editable Files
        • Language File
        • Client Editable
        • Server Editable
      • Config File
    • tgiann-radio-v2
      • Guides
        • Recommended settings for PMA Voice
        • How to change the animation
      • Installation
      • Config file
      • Editable Files
        • Language File
        • Client Editable
        • Server Editable
      • Exports
    • tgiann-core
      • Config file
      • Exports
      • Integration
        • QB
          • DrawText
    • tgiann-lumihud
      • Events / Exports
      • Editable Files
        • Language File
        • Client
          • playerStatus.lua
          • qbclient.lua
          • editable.lua
          • moneyEditable.lua
          • harnessBeltEditable.lua
        • Server
          • qbserver.lua
          • editable.lua
      • Config Files
        • config.lua
        • configHudSettings
        • configWeaponList.lua
        • qbStressConfig
      • Integration
        • Notify
        • Progressbar
    • tgiann-realparking
      • Events / Exports
      • Editable Files
        • Language File
        • Client
          • editable.lua
        • Server
          • editable.lua
      • Config Files
        • blipsConfig.lua
        • config.lua
        • impoundConfig.lua
        • insuranceConfig.lua
    • tgiann-vehicleshop
      • Exports
      • Editable Files
        • Language File
        • Client
          • editable.lua
        • Server
          • editable.lua
          • commands.lua
      • Config Files
    • tgiann-gps
      • Client Exports
      • Editable Files
        • config.lua
        • client/editable.lua
        • Language File
    • tgiann-clothing
      • Guides
        • Installation
          • ESX
          • QB
          • QBX
          • tgiann-inventory clothe items
        • Migration
        • How to take clothes images
      • Comman Proplems
      • Events / Exports
      • Admin Commands
      • Editable Files
        • client/editable.lua
        • server/editable.lua
      • Configs
        • blacklist
          • famale.lua
          • male.lua
        • clotheList
          • global
            • female.lua
            • male.lua
        • clothingPrice
          • female.lua
          • male.lua
        • tattoo
          • customTattoo.lua
          • tattoo.lua
        • clothingRoomsOutfits.lua
        • config.lua
        • hairOverlays.lua
        • pedList.lua
    • tgiann-inventory
      • Guides
        • Installation
          • ESX
          • QB
          • QBOX
        • How to adapt your script
        • How do money as item
          • QB
          • QBOX
          • ESX
            • ESX V11
            • ESX V12
        • Creating Items
        • Item İmages
        • Item Metadata
        • Migration
      • Common Problems
      • Exports
        • Server
        • Client
      • Hooks
      • Events
        • Server
        • Client
      • Admin Commands
      • Editable Files
        • client/editable.lua
        • client/topheader.lua
        • server/editable.lua
        • server/commands.lua
        • server/convert.lua
      • Configs
        • config.lua
        • configAmmo.lua
        • configAntiSwimingItems
        • configAttachment.lua
        • configAttachmentName.lua
        • configBlockItems.lua
        • configCarryItems.lua
        • configClotheBackpack.lua
        • configCommands.lua
        • configCraft.lua
        • configDecayableItems.lua
        • configDrop.lua
        • configEditableItems.lua
        • configFilter.lua
        • configItemStash.lua
        • configMaxStack.lua
        • configMaxUseAmount.lua
        • configMetadata.lua
        • configMetadataAdvance.js
        • configRealisticArmor.lua
        • configShop.lua
        • configStashes.lua
        • configThrowableItems.lua
        • configVendingMachine.lua
        • configWeapon.lua
    • lumi-delperropier-texonstone
      • Setup
    • tgiann-antirpf
      • Editable files
    • tgiann-secondhand
      • Editable files
      • config.lua
    • tgiann-multicharacter + spawn selector
      • Guides
        • Installation
        • Discord Permmission integration
        • Tebex integration
      • Common Problems
      • Configs
        • config.lua
        • multicharConfig.lua
        • photocamConfig.lua
        • spawnSelectorConfig.lua
      • Editable Files
        • Language File
        • client/editable.lua
        • server/editable.lua
        • server/commands.lua
    • tgiann-attachment
      • Config file
      • Event List
    • tgiann-bank
      • Migration
      • Exports
      • Config files
        • config.lua
        • configGangAccounts.lua
        • configHacking.lua
        • configJob.lua
        • configJobAccounts.lua
      • Editable Files
    • tgiann-bettercombat
      • Config file
      • Event List
    • tgiann-bobcat
      • Config file
    • tgiann-boombox
      • Config file
    • tgiann-vehiclecontrol
      • Exports
      • Config file
      • Editable Files
    • tgiann-card
      • Config file
      • QB Core Item
      • Ox Inventory Item
      • Sql File
    • tgiann-carhud
      • Config file
    • tgiann-carmod
      • Config file
      • Sql File
    • tgiann-chair
      • Config file
      • QB Core Item
    • tgiann-chopshop
      • Config file
      • QB Core Item
    • tgiann-damage-indicator
      • Config file
      • Editable files
    • tgiann-dna
      • Sql File
    • tgiann-document
      • Config file
      • QB Core Item
      • Ox Inventory Item
      • Sql File
    • tgiann-doorlock-v2
      • How can i find door model and other details
      • Config file
    • tgiann-dropweaponwhendie
      • Config file
    • tgiann-drugsell
      • Config file
    • tgiann-erpv2
      • Config file
    • tgiann-fallouthacker
      • Usage
    • tgiann-garage
      • Config file
      • Event List
      • Exports List
      • QB Sql File
      • ESX Sql File
    • tgiann-hotwire
      • Item List
      • Editable Files
        • Language File
        • Client/editable.lua
        • Client/migrate.lua
        • Server/commands.lua
      • Config file
      • Exports
    • tgiann-house
      • Stash Function
      • Common errors
      • Config file
      • Event List
      • Sql File
      • Editable Files
    • tgiann-hud
      • Config file
    • tgiann-hudv2
      • Config file
      • Event List
    • tgiann-job
      • Config file
      • Sql File
    • tgiann-market
      • Editable Files
      • Config file
      • Sql File
    • tgiann-mdt
      • Config file
      • ESX Sql File
      • QB Sql File
    • tgiann-megaphone
      • Setup
        • QB Core Item
        • Ox Inventory Item
      • Language File
      • Config file
      • Event List
      • Exports List
      • Recommended PMA Voice Settings
      • Common Problems
    • tgiann-moder-hud
      • Config file
      • Editable files
      • Event list
    • tgiann-naked
      • Config file
      • Editable Files
      • Sql File
      • Wrong Clothes
    • tgiann-platechanger
      • Config file
    • tgiann-policealert
      • Config file
      • Exports
      • Editable Files
        • Client Editable
        • Server Editable
    • tgiann-postcard
      • Editable Files
      • Config file
      • QB Core Item
      • Ox Inventory Item
    • tgiann-radio (Old)
      • Common errors
      • Config file
      • Event List
      • Exports List
      • Recommended settings for PMA Voice
    • tgiann-rentscooter
      • Config file
    • tgiann-sblauncher
      • Config file
      • QB Core Item
    • tgiann-self-storage
      • Config file
      • Editable files
      • Sql File
    • tgiann-exit-log
      • Config file
      • Editable files
    • tgiann-weapons-on-back
      • Config file
      • Editable files
    • tgiann-sellnpc
      • Config file
    • tgiann-smokegrenade
      • Config file
    • tgiann-sounds
      • Example Usage
    • tgiann-stashhouse
      • Config file
      • Sql File
    • tgiann-statushud
    • tgiann-vehicleoutfit
      • Config file
      • Sql File
    • tgiann-vehicleradio
      • Config file
      • Event list
    • tgiann-vehicleshop
      • Config file
      • Sql File
    • tgiann-trade
      • Config file
      • Server editable.lua
      • Client editable.lua
    • tgiann-zombie
      • Config file
      • Client editable.lua
      • Server editable.lua
      • Common errors
    • tgiann-planting
      • Config file
      • Editable Files
    • tgiann-realistic-car-crash
      • Config file
      • Editable Files
    • tgiann-graphic-menu
      • Config file
      • Editable Files
    • tgiann-firefighterjob
      • Installation
      • Config file
      • Editable Files
    • tgiann-coinshop
      • Config file
      • Editable Files
    • tgiann-vehiclepaint
      • Config file
      • Setup
    • tgiann-drone
      • Config file
      • Editable Files
    • tgiann-musical-chairs
      • Config file
      • Editable Files
    • tgiann-pursuitmode
      • Config file
      • Editable Files
    • tgiann-food-jobs
      • Config file
      • Editable Files
      • Example Location Config
Powered by GitBook
On this page
  1. Scripts
  2. tgiann-policealert
  3. Editable Files

Server Editable

tgiCore.VersionCheck('tgiann-core', '4.20.0')

local lb_phone = GetResourceState("lb-phone") ~= "missing"
local adminPerm = config.tgiannServer and { "tgi" } or config.framework == "qb" and "god" or "admin"
GlobalState.tgiPoliceGradeList = GlobalState.tgiPoliceGradeList or {}

---@param src number
---@param webhook "alert" | "personalUpdatePlayer" | "emergencyCommands"
---@param msg string
function log(src, webhook, msg)
    TriggerEvent("tgiann-core:discordLog", webhooks[webhook], msg, src)
end

function isPrimeTime()
    local date = os.date("*t")
    return date.hour >= config.primeTime.start or date.hour < config.primeTime.finish
end

function playerOnDuty(xPlayer)
    if not config.needOnDutyJob then return true end
    if config.framework == "esx" then
        return true
    elseif config.framework == "qb" then
        return xPlayer.PlayerData.job and xPlayer.PlayerData.job.onduty
    end
end

function getNumber(src, xPlayer)
    if lb_phone then
        local numStr = exports["lb-phone"]:GetEquippedPhoneNumber(src)
        local area = numStr:sub(1, 3)
        local prefix = numStr:sub(4, 6)
        local line = numStr:sub(7, 10)
        return string.format("(%s) %s-%s", area, prefix, line)
    elseif config.framework == "esx" then
        local result = MySQL.query.await('SELECT phone_number FROM users WHERE identifier = ?', {
            xPlayer.identifier
        })
        if result?.phone_number then return result.phone_number end
    elseif config.framework == "qb" then
        return xPlayer.PlayerData.charinfo.phone or LANG.UNKNOWN
    end
    return LANG.UNKNOWN
end

lib.callback.register("tgiann-policealert:getGradeList", function(_, jobName)
    local esxJobList = tgiCore.core.GetJobs()
    local jobData = esxJobList[jobName]
    assert(jobData, ("Job data not found for job: %s"):format(jobName))

    ---@type {name: string, label:string, salary: number, grade:number}[]
    local gradeList = jobData.grades
    local jobGradeList = {}
    for _, grade in pairs(gradeList) do
        jobGradeList[#jobGradeList + 1] = {
            label = grade.label or LANG.UNKNOWN,
            value = grade.grade
        }
    end

    table.sort(jobGradeList, function(a, b)
        return a.value > b.value
    end)

    local oldValue = GlobalState.tgiPoliceGradeList
    oldValue[jobName] = jobGradeList
    GlobalState.tgiPoliceGradeList = oldValue

    return jobGradeList
end)

tgiCore.CommandsAdd("testAlert", "Send a test alert", { { name = "label", help = "Alert Label" }, { name = "job", help = "Alert Job" } }, false, function(source, args)
    local label = args[1] or "Test Alert"
    local jobs = args[2] and { arg[2] } or config.jobNames

    local randomFunction = function(change)
        return math.random(0, 100) <= (change or 50)
    end

    local randomCoord = function()
        return {
            x = math.random(-2500, 2500),
            y = math.random(-2500, 2500),
            z = math.random(1, 100)
        }
    end

    local alertData = {
        jobs = jobs,
        label = label,
        duration = randomFunction() and 5 or nil,
        coords = randomFunction() and randomCoord() or nil,
        code = randomFunction() and "10-99" or nil,
        icon = randomFunction() and "dog" or nil,
        iconColor = randomFunction() and "#36FF9F" or nil,
        bgAnimate = randomFunction(10),
        vehicle = {
            label = randomFunction(),
            plate = randomFunction(),
            color = randomFunction()
        },
        gender = randomFunction()
    }

    exports["tgiann-policealert"]:Alert(source, alertData)
    -- SetTimeout(2000, function()
    --     exports["tgiann-policealert"]:Alert(source, { jobs = jobs, label = label .. " - 2" })
    -- end)
end, adminPerm)

function phoneControl(xPlayer)
    for i = 1, #config.phoneItems do
        if tgiCore.getItemByName(xPlayer, config.phoneItems[i]).amount > 0 then
            return true
        end
    end
    return false
end
PreviousClient EditableNexttgiann-postcard

Last updated 6 days ago