2026-04-14 17:41:39 +02:00

175 lines
6.7 KiB
Lua

Config = {}
Locales = Locales or {}
Config.Framework = "esx"
--[[
qb, qbox, esx, standalone | The framework you're using (QBCore, Qbox, ESX, or standalone)
]]
Config.VersionChecker = true -- Enable version checker (checks for updates on resource start)
Config.Debug = true -- Debug mode (prints messages to console for troubleshooting)
Config.SyncFlash = true -- Flash sync (camera flash and Phone flashlights visible to other players)
Config.DefaultPhoto = 'https://aiakos.net/codem/api.php?script=codem-phone&file=defaultavatar3.png'
--[[
Default profile photo URL
]]
Config.DefaultLanguage = 'de'
--[[
en, tr | Default language (English or Turkish)
]]
Config.UniquePhone = true -- Unique phone per character? (true = each character gets a different number)
Config.AutoSql = true -- Auto SQL table creation (automatically creates tables on first setup)
Config.Inventory = 'codem-inventory'
--[[
qb-inventory
ox_inventory
tgiann-inventory
codem-inventory
s-inventory
qs-inventory
]]
Config.ItemRequired = true -- Is an item required in inventory to open the phone?
Config.ItemName = 'phone' -- Name of the required item
Config.HouseScript = ''
--[[
qb-houses, bcs-housing, ps-housing
]]
Config.BatterySystem = {
enable = false,
drainRate = 1, -- Battery drain rate (the higher the number, the faster it drains)
drainInterval = 5, -- minutes between each drain
powerBankItemName = 'powerbank', -- Name of the power bank item
powerBankCharge = 80, -- Amount of battery charge restored by using a power bank
powerBankChargeRate = 1, -- How much battery to add per interval when using power bank
powerBankChargeInterval = 10, -- Seconds between each charge when using power bank
}
Config.VoiceSettings = {
VoiceScript = 'salty',
--[[
PLEASE DO NOT WRITE THE FULL NAME USING THE ABBREVIATED NAMES HERE
pma : pma-voice
salty : saltychat
toko : TokoVoip
mumble : Mumble-Voip
]]
}
Config.FacePassMaskRequired = true -- Is a face mask required when using FacePass?
Config.Commands = {
['changenumber'] = 'changenumber',
}
Config.PhoneNumberPrefix = {
"555",
"444",
"222",
"333",
"111"
}
Config.PhoneFormatType = "american"
Config.PhoneNumberFormats = {
{
type = "standard",
pattern = "{prefix}-{digits}",
digitGroups = { 3, 4 }, -- 555-4545
separator = "-"
},
{
type = "extended",
pattern = "{prefix}-{digits}-{digits}",
digitGroups = { 3, 3, 4 }, -- 555-444-5887
separator = "-"
},
{
type = "double",
pattern = "{prefix}-{digits}-{digits}",
digitGroups = { 3, 2, 4 }, -- 555-00-4486
separator = "-"
},
{
type = "turkish",
pattern = "{prefix} {digits} {digits} {digits}",
digitGroups = { 3, 3, 2, 2 }, -- 555 444 22 33
separator = " "
},
{
type = "american",
pattern = "({prefix}) {digits}-{digits}",
digitGroups = { 3, 3, 4 }, -- (555) 444-5887
separator = "-"
},
}
Config.AdminPermissions = {
['admin'] = true,
['superadmin'] = true,
['god'] = true,
}
Config.DefaultApps = {
{ name = 'photos', label = 'apps.photos', icon = 'photos.webp', path = '/photos', },
{ name = 'camera', label = 'apps.camera', icon = 'camera.webp', path = '/camera', },
{ name = 'wallet', label = 'apps.wallet', icon = 'wallet.webp', path = '/bank', },
{ name = 'map', label = 'apps.map', icon = 'map.webp', path = '/maps', },
{ name = 'calculator', label = 'apps.calculator', icon = 'calculator.webp', path = '/calculator', },
{ name = 'notes', label = 'apps.notes', icon = 'notes.webp', path = '/notes', },
{ name = 'services', label = 'apps.services', icon = 'services.webp', path = '/service', },
{ name = 'appstore', label = 'apps.appstore', icon = 'apps.webp', path = '/appstore', },
{ name = 'voice', label = 'apps.voice', icon = 'voice.webp', path = '/voice', },
{ name = 'mail', label = 'apps.mail', icon = 'mail.webp', path = '/mail', },
{ name = 'billing', label = 'apps.billing', icon = 'billing.webp', path = '/billing', },
{ name = 'home', label = 'apps.home', icon = 'home.webp', path = '/home', },
{ name = 'call', label = 'apps.call', icon = 'call.webp', path = '/calls', },
{ name = 'message', label = 'apps.message', icon = 'message.webp', path = '/messages', },
{ name = 'settings', label = 'apps.settings', icon = 'settings.webp', path = '/settings', },
{ name = 'music', label = 'apps.music', icon = 'music.webp', path = '/music', },
}
Config.Notification = function(message, type, isServer, src) -- You can change here events for notifications
if isServer then
if Config.Framework == "esx" then
TriggerClientEvent("esx:showNotification", src, message)
else
TriggerClientEvent('QBCore:Notify', src, message, type, 1500)
end
else
if Config.Framework == "esx" then
TriggerEvent("esx:showNotification", message)
else
TriggerEvent('QBCore:Notify', message, type, 1500)
end
end
end
Config.GiveVehicleKey = function(vehicle, plate) -- You can change here events for giving vehicle keys
if GetResourceState("cd_garage") == "started" then
TriggerEvent('cd_garage:AddKeys', exports['cd_garage']:GetPlate(vehicle))
elseif GetResourceState("qs-vehiclekeys") == "started" then
model = GetDisplayNameFromVehicleModel(GetEntityModel(vehicle))
exports['qs-vehiclekeys']:GiveKeys(plate, model, true)
elseif GetResourceState("wasabi_carlock") == "started" then
exports.wasabi_carlock:GiveKey(plate)
elseif GetResourceState("qb-vehiclekeys") == "started" then
TriggerServerEvent('qb-vehiclekeys:server:AcquireVehicleKeys', plate)
elseif GetResourceState("qbx-vehiclekeys") == "started" then
TriggerServerEvent('qb-vehiclekeys:server:AcquireVehicleKeys', plate)
elseif GetResourceState("Renewed-Vehiclekeys") == "started" then
exports['Renewed-Vehiclekeys']:addKey(plate)
else
if Config.Framework == "esx" then
local p = plate or (vehicle and ESX.Math.Trim(GetVehicleNumberPlateText(vehicle)))
if p then
TriggerEvent("vehiclekeys:client:SetOwner", p)
end
else
TriggerEvent("vehiclekeys:client:SetOwner", plate)
end
end
end