mirror of
https://github.com/qbcore-fivem/qb-core.git
synced 2026-08-29 10:01:33 +00:00
86 lines
3.3 KiB
Lua
86 lines
3.3 KiB
Lua
QBShared = {}
|
|
|
|
local StringCharset = {}
|
|
local NumberCharset = {}
|
|
|
|
for i = 48, 57 do NumberCharset[#NumberCharset+1] = string.char(i) end
|
|
for i = 65, 90 do StringCharset[#StringCharset+1] = string.char(i) end
|
|
for i = 97, 122 do StringCharset[#StringCharset+1] = string.char(i) end
|
|
|
|
QBShared.RandomStr = function(length)
|
|
if length <= 0 then return '' end
|
|
return QBShared.RandomStr(length - 1) .. StringCharset[math.random(1, #StringCharset)]
|
|
end
|
|
|
|
QBShared.RandomInt = function(length)
|
|
if length <= 0 then return '' end
|
|
return QBShared.RandomInt(length - 1) .. NumberCharset[math.random(1, #NumberCharset)]
|
|
end
|
|
|
|
QBShared.SplitStr = function(str, delimiter)
|
|
local result = { }
|
|
local from = 1
|
|
local delim_from, delim_to = string.find(str, delimiter, from)
|
|
while delim_from do
|
|
result[#result+1] = string.sub(str, from, delim_from - 1)
|
|
from = delim_to + 1
|
|
delim_from, delim_to = string.find(str, delimiter, from)
|
|
end
|
|
result[#result+1] = string.sub(str, from)
|
|
return result
|
|
end
|
|
|
|
QBShared.Trim = function(value)
|
|
if not value then return nil end
|
|
return (string.gsub(value, '^%s*(.-)%s*$', '%1'))
|
|
end
|
|
|
|
QBShared.Round = function(value, numDecimalPlaces)
|
|
if not numDecimalPlaces then return math.floor(value + 0.5) end
|
|
local power = 10 ^ numDecimalPlaces
|
|
return math.floor((value * power) + 0.5) / (power)
|
|
end
|
|
|
|
QBShared.ChangeVehicleExtra = function (vehicle, extra, enable)
|
|
if DoesExtraExist(vehicle, extra) then
|
|
if enable then
|
|
SetVehicleExtra(vehicle, extra, false)
|
|
if not IsVehicleExtraTurnedOn(vehicle, extra) then
|
|
QBShared.ChangeVehicleExtra(vehicle, extra, enable)
|
|
end
|
|
else
|
|
SetVehicleExtra(vehicle, extra, true)
|
|
if IsVehicleExtraTurnedOn(vehicle, extra) then
|
|
QBShared.ChangeVehicleExtra(vehicle, extra, enable)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
QBShared.SetDefaultVehicleExtras = function (vehicle, config)
|
|
-- Clear Extras
|
|
for i=1,20 do
|
|
if DoesExtraExist(vehicle, i) then
|
|
SetVehicleExtra(vehicle, i, 1)
|
|
end
|
|
end
|
|
|
|
for id, enabled in pairs(config) do
|
|
QBShared.ChangeVehicleExtra(vehicle, tonumber(id), true)
|
|
end
|
|
end
|
|
|
|
QBShared.StarterItems = {
|
|
['phone'] = { amount = 1, item = 'phone' },
|
|
['id_card'] = { amount = 1, item = 'id_card' },
|
|
['driver_license'] = { amount = 1, item = 'driver_license' },
|
|
}
|
|
|
|
QBShared.MaleNoGloves = {
|
|
[0] = true, [1] = true, [2] = true, [3] = true, [4] = true, [5] = true, [6] = true, [7] = true, [8] = true, [9] = true, [10] = true, [11] = true, [12] = true, [13] = true, [14] = true, [15] = true, [18] = true, [26] = true, [52] = true, [53] = true, [54] = true, [55] = true, [56] = true, [57] = true, [58] = true, [59] = true, [60] = true, [61] = true, [62] = true, [112] = true, [113] = true, [114] = true, [118] = true, [125] = true, [132] = true
|
|
}
|
|
|
|
QBShared.FemaleNoGloves = {
|
|
[0] = true, [1] = true, [2] = true, [3] = true, [4] = true, [5] = true, [6] = true, [7] = true, [8] = true, [9] = true, [10] = true, [11] = true, [12] = true, [13] = true, [14] = true, [15] = true, [19] = true, [59] = true, [60] = true, [61] = true, [62] = true, [63] = true, [64] = true, [65] = true, [66] = true, [67] = true, [68] = true, [69] = true, [70] = true, [71] = true, [129] = true, [130] = true, [131] = true, [135] = true, [142] = true, [149] = true, [153] = true, [157] = true, [161] = true, [165] = true
|
|
}
|