Config

This is the default configuration file for nyx_licenses

ZIP Archive of images:

Default configuration file:

QBCore = exports['qb-core']:GetCoreObject()

config = {}

config.debug = true

config.prefix = 'nyx2_licenses'

config.fiveManageToken = 'YOUR_TOKEN_HERE'

config.showDistance = 5.0
config.displayTime = 6000

config.mugshot = {
    ['coords'] = vector4(402.89, -996.47, -99.0, 178.96),
    ['camOffset'] = vector3(0.0, 4.0, -1.0),
    ['camFov'] = 40.0,
}

config.licenses = {
    ['id'] = {
        ['initial_cost'] = 500, -- price to purchase the card
        ['renewal_cost'] = 500, -- keep this the same for id cards
        ['item'] = 'nyx_id_card',
        ['title'] = 'I.D. Card',
        ['cash_or_bank'] = 'bank',
        ['has_license_client'] = function()
            return true -- don't need to check if the player has this license
        end,
        ['has_license_server'] = function(source) -- don't need to check if this player has this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['can_purchase_server'] = function(source) -- don't need to check if the player can purchase this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['on_purchase_server'] = function(source) -- don't need to do anything when the player purchases this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
        end,
    },
    ['driving'] = {
        ['initial_cost'] = 1500,
        ['renewal_cost'] = 500,
        ['item'] = 'nyx_drivers_card',
        ['title'] = 'Driving License',
        ['cash_or_bank'] = 'bank',
        ['has_license_client'] = function()
            local PlayerData = QBCore.Functions.GetPlayerData()
            if not PlayerData then return false end
            if PlayerData.metadata.licenses and PlayerData.metadata.licenses.driver and PlayerData.metadata.licenses.driver == true then
                return false
            end
            return true
        end,
        ['has_license_server'] = function(source) -- check if the player has this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            if Player.PlayerData.metadata.licenses and Player.PlayerData.metadata.licenses.driver and Player.PlayerData.metadata.licenses.driver == true then
                return true
            end
            return false
        end,
        ['can_purchase_server'] = function(source) -- check if the player can purchase this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['on_purchase_server'] = function(source) -- what to do when the player purchases this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end

            local licenses = Player.PlayerData.metadata.licenses
            if not licenses then
                licenses = {}
            end

            licenses.driver = true

            Player.Functions.SetMetaData('licenses', licenses)
        end,
    },
    ['pilot'] = {
        ['initial_cost'] = 1500,
        ['renewal_cost'] = 500,
        ['item'] = 'nyx_pilot_card',
        ['title'] = 'Pilots License',
        ['cash_or_bank'] = 'bank',
        ['has_license_client'] = function()
            local PlayerData = QBCore.Functions.GetPlayerData()
            if not PlayerData then return false end
            if PlayerData.metadata.licenses and PlayerData.metadata.licenses.pilot and PlayerData.metadata.licenses.pilot == true then
                return false
            end
            return true
        end,
        ['has_license_server'] = function(source) -- check if the player has this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            if Player.PlayerData.metadata.licenses and Player.PlayerData.metadata.licenses.pilot and Player.PlayerData.metadata.licenses.pilot == true then
                return true
            end
            return false
        end,
        ['can_purchase_server'] = function(source) -- check if the player can purchase this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['on_purchase_server'] = function(source) -- what to do when the player purchases this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end

            local licenses = Player.PlayerData.metadata.licenses
            if not licenses then
                licenses = {}
            end

            licenses.pilot = true

            Player.Functions.SetMetaData('licenses', licenses)
        end,
    },
    ['weapons'] = {
        ['initial_cost'] = 1500,
        ['renewal_cost'] = 500,
        ['item'] = 'nyx_weapons_card',
        ['title'] = 'Weapons License',
        ['cash_or_bank'] = 'bank',
        ['has_license_client'] = function()
            local PlayerData = QBCore.Functions.GetPlayerData()
            if not PlayerData then return false end
            if PlayerData.metadata.licenses and PlayerData.metadata.licenses.weapon and PlayerData.metadata.licenses.weapon == true then
                return false
            end
            return true
        end,
        ['has_license_server'] = function(source) -- check if the player has this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            if Player.PlayerData.metadata.licenses and Player.PlayerData.metadata.licenses.weapon and Player.PlayerData.metadata.licenses.weapon == true then
                return true
            end
            return false
        end,
        ['can_purchase_server'] = function(source) -- check if the player can purchase this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['on_purchase_server'] = function(source) -- what to do when the player purchases this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end

            local licenses = Player.PlayerData.metadata.licenses
            if not licenses then
                licenses = {}
            end

            licenses.weapon = true

            Player.Functions.SetMetaData('licenses', licenses)
        end,
    },
    ['hunting'] = {
        ['initial_cost'] = 1500,
        ['renewal_cost'] = 500,
        ['item'] = 'nyx_hunting_card',
        ['title'] = 'Hunting License',
        ['cash_or_bank'] = 'bank',
        ['has_license_client'] = function()
            local PlayerData = QBCore.Functions.GetPlayerData()
            if not PlayerData then return false end
            if PlayerData.metadata.licenses and PlayerData.metadata.licenses.hunting and PlayerData.metadata.licenses.hunting == true then
                return false
            end
            return true
        end,
        ['has_license_server'] = function(source) -- check if the player has this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            if Player.PlayerData.metadata.licenses and Player.PlayerData.metadata.licenses.hunting and Player.PlayerData.metadata.licenses.hunting == true then
                return true
            end
            return false
        end,
        ['can_purchase_server'] = function(source) -- check if the player can purchase this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['on_purchase_server'] = function(source) -- what to do when the player purchases this license
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end

            local licenses = Player.PlayerData.metadata.licenses
            if not licenses then
                licenses = {}
            end

            licenses.hunting = true

            Player.Functions.SetMetaData('licenses', licenses)
        end,
    },
    ['weed'] = {
        ['initial_cost'] = 1500,
        ['renewal_cost'] = 500,
        ['item'] = 'nyx_weed_card',
        ['title'] = 'Medical Marijuana License',
        ['cash_or_bank'] = 'bank',
        ['has_license_client'] = function()
            local PlayerData = QBCore.Functions.GetPlayerData()
            if not PlayerData then return false end
            if PlayerData.metadata.licenses and PlayerData.metadata.licenses.weed and PlayerData.metadata.licenses.weed == true then
                return false
            end
            return true
        end,
        ['has_license_server'] = function(source)
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            if Player.PlayerData.metadata.licenses and Player.PlayerData.metadata.licenses.weed and Player.PlayerData.metadata.licenses.weed == true then
                return false
            end
            return true
        end,
        ['can_purchase_server'] = function(source)
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end
            return true
        end,
        ['on_purchase_server'] = function(source)
            local Player = QBCore.Functions.GetPlayer(source)
            if not Player then return false end

            local licenses = Player.PlayerData.metadata.licenses
            if not licenses then
                licenses = {}
            end

            licenses.weed = true

            Player.Functions.SetMetaData('licenses', licenses)
        end,
    }
}

config.peds = {
    {
        ['coords'] = vector4(244.29, -1092.38, 29.29, 359.52),
        ['model'] = 's_m_m_doctor_01',
        ['type'] = 'id',
        ['scenario'] = 'WORLD_HUMAN_CLIPBOARD',
    },
    {
        ['coords'] = vector4(243.03, -1092.38, 29.29, 11.03),
        ['model'] = 's_m_m_doctor_01',
        ['type'] = 'driving',
        ['scenario'] = 'WORLD_HUMAN_CLIPBOARD',
    },
    {
        ['coords'] = vector4(17.46, -1108.6, 29.8, 244.99),
        ['model'] = 's_m_m_doctor_01',
        ['type'] = 'weapons',
        ['scenario'] = 'WORLD_HUMAN_CLIPBOARD',
    },
    {
        ['coords'] = vector4(258.62, -1077.01, 29.29, 90.13),
        ['model'] = 's_m_m_doctor_01',
        ['type'] = 'hunting',
        ['scenario'] = 'WORLD_HUMAN_CLIPBOARD',
    },
    {
        ['coords'] = vector4(203.34, -242.4, 53.96, 291.23),
        ['model'] = 's_m_m_doctor_01',
        ['type'] = 'weed',
        ['scenario'] = 'WORLD_HUMAN_CLIPBOARD',
    },
    {
        ['coords'] = vector4(237.15, -1076.29, 29.29, 181.15),
        ['model'] = 's_m_m_doctor_01',
        ['type'] = 'pilot',
        ['scenario'] = 'WORLD_HUMAN_CLIPBOARD',
    }
}

config.lang = {
    ['purchase'] = 'Purchase a %s (%s%s)',
    ['renew'] = 'Get a new %s card (%s%s)',
    ['currency'] = '$',
    ['cash'] = 'Cash',
    ['bank'] = 'Bank',
    ['cannot_purchase'] = 'You cannot purchase this license!',
    ['no_cash'] = 'You do not have enough cash',
    ['no_bank'] = 'You do not have enough money in your bank',
    ['purchased'] = 'You have purchased a %s license!',
    ['statement'] = 'license-purchase',
    ['invalid_license'] = 'This license is invalid, get a new one!',
}

Last updated