summaryrefslogtreecommitdiff
path: root/gamemode/client
diff options
context:
space:
mode:
authorAlexander Pickering <alexandermpickering@gmail.com>2016-05-07 23:18:46 -0400
committerAlexander Pickering <alexandermpickering@gmail.com>2016-05-07 23:18:46 -0400
commit755b58de20df6151a63d99c5baf6191c499f0b87 (patch)
tree76283856ccdadd0ccf5da9313302f36bac97319c /gamemode/client
parent0a134b81cc62e25cdf1e94f014b5c460e14c4dd1 (diff)
downloadgmstranded-755b58de20df6151a63d99c5baf6191c499f0b87.tar.gz
gmstranded-755b58de20df6151a63d99c5baf6191c499f0b87.tar.bz2
gmstranded-755b58de20df6151a63d99c5baf6191c499f0b87.zip
Fixed tools panel again, added materials
Diffstat (limited to 'gamemode/client')
-rw-r--r--gamemode/client/cl_inventory.lua77
1 files changed, 69 insertions, 8 deletions
diff --git a/gamemode/client/cl_inventory.lua b/gamemode/client/cl_inventory.lua
index c4e1134..9a19fa7 100644
--- a/gamemode/client/cl_inventory.lua
+++ b/gamemode/client/cl_inventory.lua
@@ -497,24 +497,49 @@ function PANEL:Init()
draw.RoundedBox( 4, 0, 0, self:GetWide(), self:GetTall(), Color( 75, 75, 75 ) )
end
- self.ControlPanel = vgui.Create("DForm",self)
- self.ControlPanel:SetSize((dPanelWidth*2)/3,dPanelWidth)
- self.ControlPanel:SetPos(dPanelWidth/3,0)
+ self.Encapsulate = vgui.Create("DScrollPanel",self)
+ self.Encapsulate:SetSize((dPanelWidth*2)/3,dPanelHeight)
+ self.Encapsulate:SetPos(dPanelWidth/3,0)
+
+ self.ControlPanel = vgui.Create("DForm",self.Encapsulate)
+ self.ControlPanel:SetSize((dPanelWidth*2)/3,dPanelHeight)
+ self.ControlPanel:SetPos(0,0)
self.PanelProxy = {}
self.PanelProxy.cp = self.ControlPanel
- self.PanelProxy.MatSelect = function(cmd,matlist,bool,x,y)
+ self.PanelProxy.MatSelect = function(self,cmd,matlist,bool,x,y)
print("MatSelect's cmd is:")
- PrintTable(cmd)
- local grid = vgui.Create( "DGrid", frame )
- grid:SetPos( 10, 30 )
+ print(cmd)
+ local grid = vgui.Create( "DGrid" )
+ grid:SetPos( 0, 0 )
grid:SetCols( 5 )
- grid:SetColWide( 36 )
+ grid:SetColWide( 64 )
+ grid:SetRowHeight( 64 )
local MatSelectPanel = {}
MatSelectPanel.AddMaterial = function(name, path)
print("Adding material:")
PrintTable(name)
end
+ if(matlist != nil) then
+ for k,v in pairs(matlist) do
+ local vitem = vgui.Create("DButton")
+ vitem:SetText("")
+ vitem:SetSize(64,64)
+ --print("Adding item for:" .. v)
+ vitem:SetImage(v)
+ vitem.DoClick = function()
+ print("Running " .. cmd .. " " .. v)
+ RunConsoleCommand(cmd, v)
+ end
+ vitem.Paint = function(self,w,h)
+ if(self:IsDown()) then
+ surface.DrawRect( 0, 0, w, h )
+ end
+ end
+ grid:AddItem(vitem)
+ end
+ end
+ self.cp:AddItem(grid)
return MatSelectPanel
end
self.PanelProxy.ClearControls = function()
@@ -559,6 +584,7 @@ function PANEL:Init()
print("Color convars are:")
PrintTable(colorvars)
color_cube:SetColor( curcolor )
+ color_cube:SetSize(200,200)
function color:OnChange(tocolor)
color_cube:SetColor( tocolor )
@@ -570,6 +596,41 @@ function PANEL:Init()
GetConVar(colorvars["Blue"]):SetInt(t.b)
end
self.cp:AddItem(color,color_cube)
+ elseif(type == "ComboBox") then
+ local DComboBox = vgui.Create( "DComboBox" )
+ for k,v in pairs(table.Options) do
+ DComboBox:AddChoice(k,v)
+ end
+ DComboBox.OnSelect = function( panel, index, value )
+ for k,v in pairs(table.Options[value]) do
+ print("Setting " .. k .. " to " .. v)
+ GetConVar(k):SetInt(v)
+ end
+ end
+ self.cp:AddItem(DComboBox)
+ elseif(type == "PropSelect") then
+ local grid = vgui.Create( "DGrid" )
+ grid:SetSize(256,64)
+ grid:SetPos( 0, 0 )
+ grid:SetCols( 3 )
+ grid:SetColWide( 128 )
+ grid:SetRowHeight(64)
+ grid:SetPos( 10, 30 )
+ grid:SetCols( 5 )
+ grid:SetColWide( 36 )
+ for k,v in pairs(table.Models) do
+ local icon = vgui.Create( "DModelPanel", Panel )
+ icon:SetSize( 64, 64 )
+ icon:SetSize( 32, 32 )
+ icon:SetModel( k )
+ icon:SetCamPos( Vector( 15,15,15 ) )
+ icon:SetLookAt( Vector( 0, 0, 1 ) )
+ icon.DoClick = function()
+ GetConVar(table.ConVar):SetString(k)
+ end
+ grid:AddItem(icon)
+ end
+ self.cp:AddItem(grid)
elseif(type == "Label") then
self.cp:AddItem(vgui.Create("DLabel"):SetText(table.Text))
elseif(type == "Button") then