Benny/gamemodes/benny/gamemode/modules/gui/cl_settings.lua

63 lines
1.4 KiB
Lua
Raw Normal View History

2023-11-29 18:00:22 -05:00
2023-12-04 18:20:18 -05:00
-- Settings panel
-- 0 = checkbox, 1 = slider, 2 = string
local conf = {
[1] = {
{ "benny_hud_enable_health", "Health", 0 },
{ "benny_hud_enable_active", "Active Weapon", 0 },
{ "benny_hud_enable_hints", "Hints", 0 },
{ "benny_hud_enable_hotbar", "Hotbar", 0 },
{ "benny_hud_scale", "Scale", 1, 1, 4, 0 },
},
}
function OpenSettingsMenu()
local Base = vgui.Create("DFrame")
Base:SetTitle("Settings")
Base:SetSize( 800, 600 )
Base:Center()
Base:MakePopup()
do -- Sect 1
local Sect = Base:Add("DCollapsibleCategory")
Sect:Dock(TOP)
Sect:SetLabel("Preferences")
local Scroll = Base:Add("DPanel")
Scroll:DockPadding( 10, 5, 10, 5 )
Scroll.Paint = function() end
Sect:SetContents( Scroll )
for i, v in ipairs( conf[1] ) do
if v[3] == 0 then
local Butt = Scroll:Add("DCheckBoxLabel")
Butt:Dock(TOP)
Butt:DockMargin( 0, 2, 0, 2 )
Butt:SetText( v[2] )
Butt:SetConVar( v[1] )
elseif v[3] == 1 then
local Butt = Scroll:Add("DNumSlider")
Butt:Dock(TOP)
Butt:DockMargin( 0, 2, 0, 2 )
Butt:SetText( v[2] )
Butt:SetConVar( v[1] )
Butt:SetMin( v[4] )
Butt:SetMax( v[5] )
Butt:SetDecimals( v[6] )
end
end
end
do -- Sect 2
local Sect = Base:Add("DCollapsibleCategory")
Sect:Dock(TOP)
Sect:SetLabel("Controls")
end
do -- Sect 3
local Sect = Base:Add("DCollapsibleCategory")
Sect:Dock(TOP)
Sect:SetLabel("HUD")
end
end