WS_Menu - A Modern Menu Framework for FiveM
FEATURES
- Standalone Resource
- Replaces
esx_menu_default
with a sleek custom menu - Minimal idle performance impact:
0.00ms
world idle - Supports
3 menu styles
with custom logos and positioning - Fully configurable button visibility, controls, and more
- Compatible with all ESX resources by easy hook integration
- Easy to use in your own scripts via exports
MENU EXAMPLE
Example Code
local menu = Menu.CreateMenu('test', 'Titel 1', function()
print('close menu')
end)
menu:Set('menuStyle', 2)
local menu2 = Menu.CreateMenu('test', 'Titel 2', function()
print('close menu 2')
end)
local menu3 = Menu.CreateMenu('test2', 'Titel 3', function()
print('close menu 3')
end)
menu2:AddButton('Test-Sheat', 'Wer?', function(button, onHover, click)
end, menu3)
local button2 = menu:AddButton('Test-Button', 'Some descriptions... 1', function(button, onHover, click)
if click then
print('Click', 'Click')
button:Set('title', 'Set title on Click')
end
end, menu2)
menu:AddCheckBox('Checkbox', 'Some descriptions... 2', true, function(button, onHover, click, Checked)
if click then
print('Check-Box', tostring(Checked))
elseif onHover then
print('onHover', 'Hover on Checkbox')
end
end)
local slider = menu:AddSlider('Slider', nil, 0, 10, 5, function(button, onHover, onListChange, Click, Value)
if onListChange then
button:Set('title', 'Value: '..tostring(Value))
end
end)
slider:Set('title', 'Value: '..tostring(slider:Get().value))
local list = {
"Was?",
"Wer?",
"Wo?",
"Warum?",
"Wie?",
}
menu:AddList('List', nil, list, 1, function(button, onHover, onListChange, Click, Index)
if onListChange then
if Index ~= nil then
button:Set('index', Index)
end
button:Set('title', 'Index: '..tostring(list[Index]))
end
end)
local invb = menu:AddButton('Invis-Button', nil, function(button, onHover, click)
end)
invb:Set('rightLabel', 'Right-Label')
menu:Open()
Config-File
WS_Menu = {
delay = 20, -- Menu button press delay
menuStyle = 2, -- 1 = logo in the middle, 2 logo in background with title in the middle, 3 = title in the middle
visibleButtons = 4, -- Number of visible buttons
menuPos = {
top = "3%",
left = "2.9%",
}
}
VIDEO
Code is accessible | No |
Subscription-based | No |
Lines (approximately) | ~1000 |
Requirements | - |
Support | No |