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
|