HexscriptsClassicAdmin Menu
Configurations
Here you will get all configurations & open source files that are included within this script.
Config Files
Config = {}
Config.Debug = true -- Set to true to enable debug messages in the console
Config.Locale = 'en' -- automatic, en, de, es, fr, it, nl, pl, pt, tr, ar
Config.Framework = 'esx' -- automatic, esx, qbcore, standalone
Config.MenuHeader = {
['main_menu'] = 'https://cdn.resync.me/attachments/scripts/hex_ui_header.png',
['self_menu'] = 'https://cdn.resync.me/attachments/scripts/hex_ui_header.png',
['self_ped_menu'] = 'https://cdn.resync.me/attachments/scripts/hex_ui_header.png',
['self_special_menu'] = 'https://cdn.resync.me/attachments/scripts/hex_ui_header.png',
['vehicle_menu'] = 'https://cdn.resync.me/attachments/scripts/hex_ui_header.png',
['framework_menu'] = 'https://cdn.resync.me/attachments/scripts/hex_ui_header.png'
}
Config.MenuAlligment = {
premade = 'left'
}
Config.AdminDutyStyle = 'FiveM' -- (FiveM) Classic with Premade Outfits, (Rage) for Grand Style System.
Config.AdminDutyDrawDistanceRage = 25.0 -- The distance at which the nametags will be drawn when using the Rage style. This is only used if AdminDutyStyle is set to 'Rage'.
Config.AdminDutyRageLabels = {
['owner'] = '~r~Owner\n%s\nID: %s',
['superadmin'] = '~r~Superadmin\n%s\nID: %s',
['admin'] = '~r~Administrator\n%s\nID: %s',
['mod'] = '~g~Moderator\n%s\nID: %s',
['support'] = '~b~Supporter\n%s\nID: %s'
}
Config.AdminDutyDefaultKey = 'F9' -- The default key to toggle admin duty. This can be changed in the settings menu in-game, but this is the default keybind.
Config.NoClipDefaultKey = 'F10' -- The default key to toggle noclip. This can be changed in the settings menu in-game, but this is the default keybind.
Config.AntiAbuse = true -- If this is enabled, Godmode, Noclip and Nametags will only work when the Staff is in Admin Duty.
Config.AntiAbuseBypass = { 'owner' } -- This is the permission that will bypass the anti-abuse check.
Config.SelfNametags = true -- only works when AdminDutyStyle is set to 'FiveM'.
Config.AdutyToggle = {
['nametags'] = true, -- Toggles nametags when going in the admin duty
['godmode'] = true -- Toggles godmode when going in admin duty
}
Config.Permissions = {
['self_menu'] = {
['godmode'] = { 'support', 'admin', 'owner' },
['nametags'] = { 'support', 'admin', 'owner' },
['noclip'] = { 'admin', 'owner' }
},
['ped_menu'] = {
['clean_ped'] = { 'support', 'admin', 'owner' },
['add_health'] = { 'admin', 'owner' },
['add_armour'] = { 'admin', 'owner' },
['ped_changer'] = { 'admin', 'owner' }
},
['special_menu'] = {
['superjump'] = { 'admin', 'owner' },
['noragdoll'] = { 'admin', 'owner' },
['superspeed'] = { 'admin', 'owner' },
['superpunch'] = { 'admin', 'owner' },
['supersize'] = { 'admin', 'owner' }
},
['vehicle_menu'] = {
['spawn_vehicle'] = { 'support', 'admin', 'owner' },
['delete_vehicle'] = { 'admin', 'owner' },
['repair_vehicle'] = { 'admin', 'owner' },
['flip_vehicle'] = { 'admin', 'owner' }
},
['framework_menu'] = {
['giveitem'] = { 'admin', 'owner' },
['giveweapon'] = { 'admin', 'owner' },
['givemoney'] = { 'admin', 'owner' },
['givevehicle'] = { 'admin', 'owner' },
['clear_peds'] = { 'admin', 'owner' },
['clear_vehicles'] = { 'admin', 'owner' },
['clear_objects'] = { 'admin', 'owner' }
}
}
Config.AdminDutyOutfits = {
['owner'] = {
['male'] = {
sex = 0,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 15, tshirt_2 = 13,
torso_1 = 287, torso_2 = 0,
arms = 3,
pants_1 = 114, pants_2 = 0,
shoes_1 = 78, shoes_2 = 0,
mask_1 = 135, mask_2 = 0,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
helmet_1 = -1, helmet_2 = 0,
chain_1 = 0, chain_2 = 0,
glasses_1 = 0, glasses_2 = 0
},
['female'] = { -- todo
sex = 1,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 14, tshirt_2 = 0,
torso_1 = 300, torso_2 = 0,
arms = 10,
pants_1 = 121, pants_2 = 0,
shoes_1 = 82, shoes_2 = 0,
mask_1 = 135, mask_2 = 0,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
helmet_1 = -1, helmet_2 = 0,
chain_1 = 0, chain_2 = 0,
glasses_1 = 0, glasses_2 = 0
}
},
['superadmin'] = {
['male'] = {
sex = 0,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 15, tshirt_2 = 13,
torso_1 = 287, torso_2 = 1,
arms = 3,
pants_1 = 114, pants_2 = 1,
shoes_1 = 78, shoes_2 = 1,
mask_1 = 135, mask_2 = 1,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
chain_1 = 0, chain_2 = 0,
helmet_1 = -1, helmet_2 = 0,
glasses_1 = 0, glasses_2 = 0
},
['female'] = {
sex = 1,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 14, tshirt_2 = 0,
torso_1 = 300, torso_2 = 1,
arms = 10,
pants_1 = 121, pants_2 = 1,
shoes_1 = 82, shoes_2 = 1,
mask_1 = 135, mask_2 = 1,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
helmet_1 = -1, helmet_2 = 0,
chain_1 = 0, chain_2 = 0,
glasses_1 = 0, glasses_2 = 0
}
},
['admin'] = {
['male'] = {
sex = 0,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 15, tshirt_2 = 0,
torso_1 = 287, torso_2 = 2,
arms = 3,
pants_1 = 114, pants_2 = 2,
shoes_1 = 78, shoes_2 = 2,
mask_1 = 135, mask_2 = 2,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
chain_1 = 0, chain_2 = 0,
helmet_1 = -1, helmet_2 = 0,
glasses_1 = 0, glasses_2 = 0
},
['female'] = {
sex = 1,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 14, tshirt_2 = 0,
torso_1 = 300, torso_2 = 2,
arms = 10,
pants_1 = 121, pants_2 = 2,
shoes_1 = 82, shoes_2 = 2,
mask_1 = 135, mask_2 = 2,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
helmet_1 = -1, helmet_2 = 0,
chain_1 = 0, chain_2 = 0,
glasses_1 = 0, glasses_2 = 0
}
},
['mod'] = {
['male'] = {
sex = 0,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 15, tshirt_2 = 13,
torso_1 = 287, torso_2 = 4,
arms = 3,
pants_1 = 114, pants_2 = 4,
shoes_1 = 78, shoes_2 = 4,
mask_1 = 135, mask_2 = 4,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
chain_1 = 0, chain_2 = 0,
helmet_1 = -1, helmet_2 = 0,
glasses_1 = 0, glasses_2 = 0
},
['female'] = {
sex = 1,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 14, tshirt_2 = 0,
torso_1 = 300, torso_2 = 4,
arms = 10,
pants_1 = 121, pants_2 = 4,
shoes_1 = 82, shoes_2 = 4,
mask_1 = 135, mask_2 = 4,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
helmet_1 = -1, helmet_2 = 0,
chain_1 = 0, chain_2 = 0,
glasses_1 = 0, glasses_2 = 0
}
},
['support'] = {
['male'] = {
sex = 0,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 15, tshirt_2 = 13,
torso_1 = 287, torso_2 = 5,
arms = 3,
pants_1 = 114, pants_2 = 5,
shoes_1 = 78, shoes_2 = 5,
mask_1 = 135, mask_2 = 5,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
chain_1 = 0, chain_2 = 0,
helmet_1 = -1, helmet_2 = 0,
glasses_1 = 0, glasses_2 = 0
},
['female'] = {
sex = 1,
face = 0,
skin = 0,
hair_1 = 0, hair_2 = 0,
hair_color_1 = 0, hair_color_2 = 0,
decals_1 = 0, decals_2 = 0,
tshirt_1 = 14, tshirt_2 = 0,
torso_1 = 300, torso_2 = 5,
arms = 10,
pants_1 = 121, pants_2 = 5,
shoes_1 = 82, shoes_2 = 5,
mask_1 = 135, mask_2 = 5,
bproof_1 = 0, bproof_2 = 0,
bags_1 = 0, bags_2 = 0,
beard_1 = 0, beard_2 = 0, beard_3 = 0, beard_4 = 0,
helmet_1 = -1, helmet_2 = 0,
chain_1 = 0, chain_2 = 0,
glasses_1 = 0, glasses_2 = 0
}
}
}Opensource Files
if Config.Framework ~= 'esx' then return end
local ESX = nil
function loadFramework()
local status, ESXLOAD = pcall(function()
return exports['es_extended']:getSharedObject()
end)
ESX = ESXLOAD
if not status then
while not ESX do
TriggerEvent("esx:getSharedObject", function(object) ESX = object end)
Citizen.Wait(50)
end
end
while ESX.GetPlayerData().job == nil do
Citizen.Wait(50)
end
while not ESX.IsPlayerLoaded() do
Citizen.Wait(50)
end
ESX.PlayerData = ESX.GetPlayerData()
local name = GetPlayerName(PlayerId())
if ESX.PlayerData.firstName ~= '' then
name = ESX.PlayerData.firstName .. ' ' .. ESX.PlayerData.lastName
end
Player(GetPlayerServerId(PlayerId())).state:set('rpName', name, true)
end
function GetItemLabel(itemName)
for k, v in ipairs(ESX.PlayerData.inventory) do
if v.name == itemName then
return v.label
end
end
return itemName
end
function GetWeaponLabel(weaponName)
return ESX.GetWeaponLabel(weaponName)
end
function TriggerServerCallback(name, cb, ...)
ESX.TriggerServerCallback(name, function(result)
cb(result)
end, ...)
end
function GetAllItems()
if GetResourceState('ox_inventory') == 'started' then
local inventory = {}
local items = exports.ox_inventory:Items()
for itemName, itemData in pairs(items) do
inventory[#inventory + 1] = {
name = itemName,
label = itemData.label
}
end
return inventory
elseif GetResourceState('jaksam_inventory') == 'started' then
local inventory = {}
local items = exports.jaksam_inventory:getStaticItemsList()
for itemName, itemData in pairs(items) do
inventory[#inventory + 1] = {
name = itemName,
label = itemData.label
}
end
return inventory
end
return ESX.PlayerData.inventory
end
function GetAllWeapons()
return ESX.GetWeaponList()
end
function ResetSkin()
TriggerServerCallback('esx_skin:getPlayerSkin', function(skin)
TriggerEvent('skinchanger:loadSkin', skin)
end)
end
function GetAdutySex()
local p = promise.new()
TriggerEvent('skinchanger:getSkin', function(skin)
p:resolve(skin.sex == 0 and 'male' or 'female')
end)
return Citizen.Await(p)
end
function LoadAdutySkin(skin)
TriggerEvent('skinchanger:loadSkin', skin)
end
function GetPlayerIdentifier()
return ESX.PlayerData.identifier
end
function GetPlayerGroup()
return ESX.PlayerData.group
end
RegisterNetEvent('esx:setGroup', function(group)
if source == '' then return end
ESX.PlayerData.group = group
end)
RegisterNetEvent('esx:updatePlayerData', function(variables)
if source == '' then return end
if variables.firstName and variables.lastName then
ESX.PlayerData.firstName = variables.firstName
ESX.PlayerData.lastName = variables.lastName
local name = ESX.PlayerData.firstName .. ' ' .. ESX.PlayerData.lastName
Player(GetPlayerServerId(PlayerId())).state:set('rpName', name, true)
end
end)
AddEventHandler('esx:setPlayerData', function(key, value)
if key == 'firstName' or key == 'lastName' then
ESX.PlayerData[key] = value
local name = ESX.PlayerData.firstName .. ' ' .. ESX.PlayerData.lastName
Player(GetPlayerServerId(PlayerId())).state:set('rpName', name, true)
end
end)