From da81a0a23a3704dd2de3ab2249496c1ad1912d1c Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Mon, 9 Oct 2017 16:20:46 -0400 Subject: Updated internal representation of inventories --- gamemode/client/qpanels/inventory.lua | 194 ---------------------------------- 1 file changed, 194 deletions(-) delete mode 100644 gamemode/client/qpanels/inventory.lua (limited to 'gamemode/client/qpanels/inventory.lua') diff --git a/gamemode/client/qpanels/inventory.lua b/gamemode/client/qpanels/inventory.lua deleted file mode 100644 index 4dc5075..0000000 --- a/gamemode/client/qpanels/inventory.lua +++ /dev/null @@ -1,194 +0,0 @@ --- do return end --- local invfuncs --- invfuncs = ART.invfuncs --- --invfuncs = include("../gamemodes/artery/gamemode/shared/inventory_common.lua") --- --invfuncs = include("../shared/inventory_common.lua") --- assert(invfuncs ~= nil, "Dependency failed") --- --- local function createMenuFor(menu, tbl) --- for k,v in pairs(tbl) do --- if isfunction(v) then --This is a dead-end, add the menu --- local thisoption = menu:AddOption(k,v) --- else --Otherwise it should be a table, recursively call to create --- local submenu = menu:AddSubMenu(k) --- createMenuFor(submenu,v) --- end --- end --- end --- --- local function DrawBackpackOnDPanel(dp, backpack, backpacknum, tent) --- local width = ScrW() --- local height = ScrH() --- local slotsize = math.Round(width / 32) --- local backgrid = vgui.Create( "DGrid", dp ) --- backgrid:SetPos( 10, 30 ) --- backgrid:SetCols( backpack[2][1] ) --- backgrid:SetColWide( backpack[2][2] ) --- backgrid:Dock(FILL) --- for i = 1,#(backpack[1]) do --- for j = 1,#(backpack[1][i]) do --- local item = backpack[1][j][i] --- if type(backpack[1][j][i]) == "table" then --- local itemwidth = 0 --- for _,l in pairs(item.Shape) do --- itemwidth = math.Max(itemwidth,#l) --- end --- local itemheight = #item.Shape --- local invicon = vgui.Create( "DImageButton", dp ) --- invicon:SetSize(slotsize * itemwidth, slotsize * itemheight) --- invicon:SetPos(slotsize * (i - 1), slotsize * (j - 1)) --- invicon:SetText(item.Name) --- if item.Tooltip then --- invicon:SetTooltip(item.Tooltip) --- end --- if item.Paint then --- invicon.Paint = item.Paint --- end --- if item.DoOnPanel then --- item.DoOnPanel(invicon) --- end --- --invicon.Paint = function(self, w, h) draw.RoundedBox(4, 0,0,w,h,Color(0,100,0)) end --- invicon.DoClick = function() --- if not item.GetOptions then return end --- local menu = vgui.Create("DMenu") --- createMenuFor(menu,item:GetOptions()) --- menu:Open() --- end --- invicon.Item = item --- invicon.invpos = {j,i} --- invicon.ent = tent --- invicon.backpacknum = backpacknum --- invicon:Droppable("Inventory") --- elseif not backpack[1][j][i] then --- local emptyslot = vgui.Create("DPanel", dp) --- emptyslot:SetSize(slotsize,slotsize) --- emptyslot:SetPos(slotsize * (i - 1), slotsize * (j - 1)) --- --emptyslot.Paint = function(self, w, h) draw.RoundedBox(4, 0,0,w,h,Color(0,0,100)) end --- emptyslot:Receiver( "Inventory", function( receiver, tableOfDroppedPanels, isDropped, menuIndex, mouseX, mouseY ) --- if not isDropped then return end --- local icon = tableOfDroppedPanels[1] --- local item = icon.Item --- local curpos = icon.invpos --- --Set the shape it was at to false --- if not icon.wasequiped and icon.ent == tent then --- assert(curpos ~= nil, "print curpos was nil when not equiped") --- for k = 1,#item.Shape do --- for l = 1,#(item.Shape[k]) do --- if k == 1 and l == 1 then continue end --- backpack[1][curpos[1] + k - 1][curpos[2] + l - 1] = false --- end --- end --- backpack[1][curpos[1]][curpos[2]] = false --- end --- if invfuncs.CanFitInBackpack(backpack,j,i,item) then --- local fromtbl = icon.invpos --- local wasequiped = icon.wasequiped --- local ondropped = icon.ondropped --- if ondropped then --- ondropped(backpacknum,j,i,item) --- elseif wasequiped then --- net.Start("unequipitem") --- net.WriteString(wasequiped) --- net.WriteUInt(backpacknum,16) --- net.WriteUInt(i,16) --- net.WriteUInt(j,16) --- net.SendToServer() --- else --- net.Start("moveitem") --- net.WriteEntity(icon.ent) -- from ent --- net.WriteEntity(tent) -- to ent --- net.WriteUInt(icon.backpacknum,16) -- from backpack number --- net.WriteUInt(backpacknum,16) -- to backpack number --- net.WriteUInt(fromtbl[1],16) -- From position --- net.WriteUInt(fromtbl[2],16) --- net.WriteUInt(j,16) -- To position --- net.WriteUInt(i,16) --- net.SendToServer() --- if item.onEquip ~= nil then --- item:onEquip(LocalPlayer()) --- end --- end --- end --- end, {} ) --- end --- end --- end --- end --- --- local invsheetfunc = function() --- local width = ScrW() --- local height = ScrH() --- --- --- local invsheet = vgui.Create( "DPanel" ) --- --- invsheet.Paint = function( self, w, h ) end --- --- --Display gear --- local slotsize = math.Round(width / 32) --- local displaypos = { --- ["Head"] = {(width / 8) - slotsize, 25}, --- ["Body"] = {(width / 8) - slotsize, slotsize + 26}, --- ["Legs"] = {(width / 8) - slotsize, (slotsize * 2) + 27}, --- ["Boots"] = {(width / 8) - slotsize, (slotsize * 3) + 28}, --- ["Gloves"] = {(width / 8) + (slotsize), (slotsize * 2) + 27}, --- ["Left"] = {(width / 8) - (1.5 * slotsize), (slotsize * 4) + 29}, --- ["Right"] = {(width / 8) - (0.5 * slotsize), (slotsize * 4) + 29} --- } --- for k,v in pairs (LocalPlayer().Inventory.Equiped) do --- if v == false then --- local eqslot = vgui.Create( "DPanel", invsheet ) --- eqslot:SetSize( slotsize, slotsize ) --- eqslot:SetPos(displaypos[k][1],displaypos[k][2]) --- eqslot:Receiver( "Inventory", function( receiver, tableOfDroppedPanels, isDropped, menuIndex, mouseX, mouseY ) --- if not isDropped then return end --- print("Attempting to equip") --- local icon = tableOfDroppedPanels[1] --- local item = icon.Item --- if item.Equipable == k then --- net.Start("equipitem") --- net.WriteUInt(icon.backpacknum,16) -- Backpack number --- local fromtbl = icon.invpos --- net.WriteUInt(fromtbl[1],16) -- From position --- net.WriteUInt(fromtbl[2],16) --- net.WriteString(k) --- net.SendToServer() --- end --- end, {} ) --- else --- local eqslot = vgui.Create("DImageButton",invsheet) --- eqslot:SetSize(slotsize,slotsize) --- eqslot:SetPos(displaypos[k][1],displaypos[k][2]) --- if v.PaintEquiped then --- eqslot.Paint = v.PaintEquiped --- end --- if v.DoOnEquipPanel then --- v.DoOnEquipPanel(eqslot) --- end --- eqslot:Droppable("Inventory") --- eqslot.Item = v --- eqslot.wasequiped = k --- end --- end --- local moneylabel = vgui.Create("DLabel",invsheet) --- moneylabel:SetPos(0,0) --- moneylabel:SetSize(width/5,18) --- moneylabel:SetText(string.format("Credits:%7d", ART.Credits or 0)) --- print("Displaying credits:" .. string.format("Credits:%7d", ART.Credits or 0)) --- --- local backpacksheet = vgui.Create( "DPropertySheet", invsheet ) --- backpacksheet:SetPos(0,slotsize * 6) --- backpacksheet:SetSize((width / 4) - 26, height - (slotsize * 6) - 70) --- for k,v in pairs(LocalPlayer().Inventory.Backpacks) do --- local tbacksheet = vgui.Create( "DPanel", backpacksheet ) --- tbacksheet.Paint = function( self, w, h ) draw.RoundedBox( 4, 0, 0, w, h, Color( 157, 160, 167 ) ) end --- backpacksheet:AddSheet( v[3], tbacksheet, "icon16/cross.png" ) --- --- DrawBackpackOnDPanel(tbacksheet,v,k,LocalPlayer()) --- end --- --- return "Inventory", invsheet, "icon16/cross.png" --- end --- --- --- ART.RegisterInventorySheet(invsheetfunc) -- cgit v1.2.3-70-g09d2