diff options
| author | Alexander Pickering <alexandermpickering@gmail.com> | 2017-08-24 20:32:34 -0400 |
|---|---|---|
| committer | Alexander Pickering <alexandermpickering@gmail.com> | 2017-08-24 20:32:34 -0400 |
| commit | 233e478e40d72a091f70f18dc6846066a4f52016 (patch) | |
| tree | cf34be714088889731736c81bd44e198c792625a /gamemode/shared/shop.lua | |
| parent | 61bc16dae5a1b61bcd237d9f0be36125829d95b1 (diff) | |
| download | artery-233e478e40d72a091f70f18dc6846066a4f52016.tar.gz artery-233e478e40d72a091f70f18dc6846066a4f52016.tar.bz2 artery-233e478e40d72a091f70f18dc6846066a4f52016.zip | |
Fix all linter warnings
Diffstat (limited to 'gamemode/shared/shop.lua')
| -rw-r--r-- | gamemode/shared/shop.lua | 350 |
1 files changed, 175 insertions, 175 deletions
diff --git a/gamemode/shared/shop.lua b/gamemode/shared/shop.lua index 679035f..ecb8e71 100644 --- a/gamemode/shared/shop.lua +++ b/gamemode/shared/shop.lua @@ -1,175 +1,175 @@ -do return end ---[[ - Displays shop npc's interfaces - - public functions: - (sv)ART.OpenShop(shoptbl, ply) :: nil - (sv)ART.CreateShop(npctbl) :: nil - net messages: - art_openshop -]] - -local ivf = include("inventory_common.lua") -ART = ART or {} - -if SERVER then - for k,v in pairs({ - "art_openshop", - "art_buyitem", - "art_sellitem", - }) do - util.AddNetworkString(v) - end - - function ART.OpenShop(tbl, ply) - print("Called openshop!") - print("tbl was") - PrintTable(tbl) - if CLIENT then return end - net.Start("art_openshop") - net.WriteTable(tbl) - net.Send(ply) - end - - function ART.CreateShop(npc) - print("Createing shop npc") - local npcent = ents.Create("npc_shop") - for k,v in pairs(npc) do - npcent[k] = v - end - npcent:Spawn() - print("Called spawn") - end - -end - -if SERVER then return end -local w,h = ScrW(),ScrH() -local function DrawShopItemOnDPanel(dp,itemtbl,cost) - --An item is a string, and int cost - - local shape = itemtbl.Shape - local twidth,theight = 0,#shape - for k=1,#shape do - twidth = math.max(twidth,#shape[k]) - end - - local slotsize = math.Round(w / 32) - local backgrid = vgui.Create( "DGrid", dp ) - backgrid:SetPos( 10, 30 ) - backgrid:SetCols( twidth ) - backgrid:SetColWide( theight ) - backgrid:Dock(LEFT) - - local shopicon = vgui.Create( "DImageButton", dp ) - shopicon:SetSize(slotsize * twidth, slotsize * theight) - shopicon:SetPos(0,0) - shopicon:SetText(itemtbl.Name) - if itemtbl.Tooltip then - shopicon:SetTooltip(itemtbl.Tooltip) - end - if itemtbl.Paint then - shopicon.Paint = itemtbl.Paint - end - if itemtbl.DoOnPanel then - itemtbl.DoOnPanel(shopicon) - end - shopicon.Paint = function(self, w, h) - surface.SetDrawColor( 0, 0, 0, 255 ) - surface.DrawOutlinedRect( 0, 0, w, h) - end - shopicon.DoClick = function() - print("You cliked me!") - end - shopicon.Item = itemtbl - shopicon.Cost = cost - shopicon:Droppable("Inventory") - shopicon.ondropped = function(back,j,i,item) - print("ondropped was called!") - print("back",back,"j",j,"i",i,"item",item) - PrintTable(item) - net.Start("buyitem") - net.WriteString(item.Name) - net.WriteUInt(back,8) - net.WriteUInt(j,8) - net.WriteUInt(i,8) - net.SendToServer() - end - - print("Displaying shape:") - PrintTable(shape) - for k = 1, twidth do - for i = 1, theight do - if not shape[k][i] then - print("Found false spot:",k,i) - local emptyslot = vgui.Create("DPanel", dp) - emptyslot:SetSize(slotsize,slotsize) - emptyslot:SetPos(slotsize * (i - 1) + 2, slotsize * (k - 1) + 2) - end - end - end - -end - -local slotsize = math.Round(w / 32) - -local function DrawShopOnDPanel(dp,items) - --This gets pretty involved, lets try to not make it a clusterfuck. - dp.Paint = function(self, w, h) draw.RoundedBox(4, 0,0,w,h,Color(100,0,0)) end - print("dp",dp) - local scrollpanel = vgui.Create( "DScrollPanel",dp ) - print("scollpanel",scrollpanel) - scrollpanel.Paint = function(self, w, h) draw.RoundedBox(4, 0,0,w,h,Color(0,0,100)) end - scrollpanel:Dock(FILL) - for k,v in pairs(items) do - local itemtbl = ART.GetItemByName(v[1]) - local invpanel = vgui.Create( "DPanel", scollpanel) - invpanel.Paint = function(self, w, h) - draw.RoundedBox(4, 1,1,w-4,h-4,Color(50,50,50)) - draw.RoundedBox(4, 2,2,w-5,h-5,Color(100,100,100)) - end - print("invpanel",invpanel) - DrawShopItemOnDPanel(invpanel,itemtbl,v[2]) - scrollpanel:AddItem(invpanel) - invpanel:Dock(TOP) - local x,_ = invpanel:GetSize() - print("item is",v) - PrintTable(v) - invpanel:SetSize(x,slotsize*(#itemtbl.Shape) + 4) - invpanel:Dock(TOP) - - end - -end - -local shopwindow,shoppanel - -local function createshopwindow() - print("Createing shopwindow") - shopwindow = vgui.Create( "DFrame" ) - shopwindow:SetPos( w - (w / 4), 0 ) - shopwindow:SetSize( w / 4, h ) - shopwindow:SetTitle( "Unset shop" ) - shopwindow:SetDraggable( true ) - shopwindow.OnClose = function(self) - self:SetVisible(false) - print("After onclose, shopwindow was",shopwindow) - end - shopwindow:SetVisible(false) - - shoppanel = vgui.Create( "DPanel",shopwindow) - shoppanel:SetPos( 10, 30 ) -- Set the position of the panel - shoppanel:Dock(FILL) -end -createshopwindow() - -net.Receive("art_openshop",function() - print("shopwindows was ",shopwindow) - if not shopwindow:IsValid() then createshopwindow() end - assert(shopwindow,"Shopwindow was not created, even after re-createing!") - ShowInventory() - shopwindow:SetVisible(true) - local stock = net.ReadTable() - DrawShopOnDPanel(shoppanel,stock) - shopwindow:MakePopup() -end) +-- do return end +-- --[[ +-- Displays shop npc's interfaces +-- +-- public functions: +-- (sv)ART.OpenShop(shoptbl, ply) :: nil +-- (sv)ART.CreateShop(npctbl) :: nil +-- net messages: +-- art_openshop +-- ]] +-- +-- local ivf = include("inventory_common.lua") +-- ART = ART or {} +-- +-- if SERVER then +-- for k,v in pairs({ +-- "art_openshop", +-- "art_buyitem", +-- "art_sellitem", +-- }) do +-- util.AddNetworkString(v) +-- end +-- +-- function ART.OpenShop(tbl, ply) +-- print("Called openshop!") +-- print("tbl was") +-- PrintTable(tbl) +-- if CLIENT then return end +-- net.Start("art_openshop") +-- net.WriteTable(tbl) +-- net.Send(ply) +-- end +-- +-- function ART.CreateShop(npc) +-- print("Createing shop npc") +-- local npcent = ents.Create("npc_shop") +-- for k,v in pairs(npc) do +-- npcent[k] = v +-- end +-- npcent:Spawn() +-- print("Called spawn") +-- end +-- +-- end +-- +-- if SERVER then return end +-- local w,h = ScrW(),ScrH() +-- local function DrawShopItemOnDPanel(dp,itemtbl,cost) +-- --An item is a string, and int cost +-- +-- local shape = itemtbl.Shape +-- local twidth,theight = 0,#shape +-- for k=1,#shape do +-- twidth = math.max(twidth,#shape[k]) +-- end +-- +-- local slotsize = math.Round(w / 32) +-- local backgrid = vgui.Create( "DGrid", dp ) +-- backgrid:SetPos( 10, 30 ) +-- backgrid:SetCols( twidth ) +-- backgrid:SetColWide( theight ) +-- backgrid:Dock(LEFT) +-- +-- local shopicon = vgui.Create( "DImageButton", dp ) +-- shopicon:SetSize(slotsize * twidth, slotsize * theight) +-- shopicon:SetPos(0,0) +-- shopicon:SetText(itemtbl.Name) +-- if itemtbl.Tooltip then +-- shopicon:SetTooltip(itemtbl.Tooltip) +-- end +-- if itemtbl.Paint then +-- shopicon.Paint = itemtbl.Paint +-- end +-- if itemtbl.DoOnPanel then +-- itemtbl.DoOnPanel(shopicon) +-- end +-- shopicon.Paint = function(self, w, h) +-- surface.SetDrawColor( 0, 0, 0, 255 ) +-- surface.DrawOutlinedRect( 0, 0, w, h) +-- end +-- shopicon.DoClick = function() +-- print("You cliked me!") +-- end +-- shopicon.Item = itemtbl +-- shopicon.Cost = cost +-- shopicon:Droppable("Inventory") +-- shopicon.ondropped = function(back,j,i,item) +-- print("ondropped was called!") +-- print("back",back,"j",j,"i",i,"item",item) +-- PrintTable(item) +-- net.Start("buyitem") +-- net.WriteString(item.Name) +-- net.WriteUInt(back,8) +-- net.WriteUInt(j,8) +-- net.WriteUInt(i,8) +-- net.SendToServer() +-- end +-- +-- print("Displaying shape:") +-- PrintTable(shape) +-- for k = 1, twidth do +-- for i = 1, theight do +-- if not shape[k][i] then +-- print("Found false spot:",k,i) +-- local emptyslot = vgui.Create("DPanel", dp) +-- emptyslot:SetSize(slotsize,slotsize) +-- emptyslot:SetPos(slotsize * (i - 1) + 2, slotsize * (k - 1) + 2) +-- end +-- end +-- end +-- +-- end +-- +-- local slotsize = math.Round(w / 32) +-- +-- local function DrawShopOnDPanel(dp,items) +-- --This gets pretty involved, lets try to not make it a clusterfuck. +-- dp.Paint = function(self, w, h) draw.RoundedBox(4, 0,0,w,h,Color(100,0,0)) end +-- print("dp",dp) +-- local scrollpanel = vgui.Create( "DScrollPanel",dp ) +-- print("scollpanel",scrollpanel) +-- scrollpanel.Paint = function(self, w, h) draw.RoundedBox(4, 0,0,w,h,Color(0,0,100)) end +-- scrollpanel:Dock(FILL) +-- for k,v in pairs(items) do +-- local itemtbl = ART.GetItemByName(v[1]) +-- local invpanel = vgui.Create( "DPanel", scollpanel) +-- invpanel.Paint = function(self, w, h) +-- draw.RoundedBox(4, 1,1,w-4,h-4,Color(50,50,50)) +-- draw.RoundedBox(4, 2,2,w-5,h-5,Color(100,100,100)) +-- end +-- print("invpanel",invpanel) +-- DrawShopItemOnDPanel(invpanel,itemtbl,v[2]) +-- scrollpanel:AddItem(invpanel) +-- invpanel:Dock(TOP) +-- local x,_ = invpanel:GetSize() +-- print("item is",v) +-- PrintTable(v) +-- invpanel:SetSize(x,slotsize*(#itemtbl.Shape) + 4) +-- invpanel:Dock(TOP) +-- +-- end +-- +-- end +-- +-- local shopwindow,shoppanel +-- +-- local function createshopwindow() +-- print("Createing shopwindow") +-- shopwindow = vgui.Create( "DFrame" ) +-- shopwindow:SetPos( w - (w / 4), 0 ) +-- shopwindow:SetSize( w / 4, h ) +-- shopwindow:SetTitle( "Unset shop" ) +-- shopwindow:SetDraggable( true ) +-- shopwindow.OnClose = function(self) +-- self:SetVisible(false) +-- print("After onclose, shopwindow was",shopwindow) +-- end +-- shopwindow:SetVisible(false) +-- +-- shoppanel = vgui.Create( "DPanel",shopwindow) +-- shoppanel:SetPos( 10, 30 ) -- Set the position of the panel +-- shoppanel:Dock(FILL) +-- end +-- createshopwindow() +-- +-- net.Receive("art_openshop",function() +-- print("shopwindows was ",shopwindow) +-- if not shopwindow:IsValid() then createshopwindow() end +-- assert(shopwindow,"Shopwindow was not created, even after re-createing!") +-- ShowInventory() +-- shopwindow:SetVisible(true) +-- local stock = net.ReadTable() +-- DrawShopOnDPanel(shoppanel,stock) +-- shopwindow:MakePopup() +-- end) |
