aboutsummaryrefslogtreecommitdiff
path: root/gamemode/inventorysystem/prayers/cl_prayers.lua
diff options
context:
space:
mode:
authorAlexander Pickering <alexandermpickering@gmail.com>2017-11-04 22:42:24 -0400
committerAlexander Pickering <alexandermpickering@gmail.com>2017-11-04 22:42:24 -0400
commit5d77d8475af7aff27eb026a4b56065387c024165 (patch)
treeccdd061e5654288ab53134be52e8b1ef194d5ebc /gamemode/inventorysystem/prayers/cl_prayers.lua
parent40080dcfde028c64c4f6f51792b928ee91677bc6 (diff)
downloadartery-5d77d8475af7aff27eb026a4b56065387c024165.tar.gz
artery-5d77d8475af7aff27eb026a4b56065387c024165.tar.bz2
artery-5d77d8475af7aff27eb026a4b56065387c024165.zip
Massive changes
* New error messages for missing dependencies * Removed useless art_serverchanger entity * Added a sweet ascii logo * Added Skills * Minor fixes to cl_inventory tracker * Changed a few prints to use logging module
Diffstat (limited to 'gamemode/inventorysystem/prayers/cl_prayers.lua')
-rw-r--r--gamemode/inventorysystem/prayers/cl_prayers.lua31
1 files changed, 27 insertions, 4 deletions
diff --git a/gamemode/inventorysystem/prayers/cl_prayers.lua b/gamemode/inventorysystem/prayers/cl_prayers.lua
index aba778e..afea1cc 100644
--- a/gamemode/inventorysystem/prayers/cl_prayers.lua
+++ b/gamemode/inventorysystem/prayers/cl_prayers.lua
@@ -20,6 +20,13 @@ function pray:DrawOnDPanel(panel)
local ap = self.activeprayers[i]
explain:SetText(ap ~= nil and ap.Description or "Select a prayer")
end
+ rec:Receiver("prayer",function(s,tbl,dropped,mi,x,y)
+ if not dropped then return end
+ self.activeprayers[i] = tbl.item
+ if tbl.item.DoOnPanel then
+ tbl.item.DoOnPanel(s)
+ end
+ end,{})
agrid:AddItem(rec)
end
agrid:Dock(TOP)
@@ -38,15 +45,31 @@ function pray:DrawOnDPanel(panel)
grid:SetCols(4)
grid:SetColWide(w)
grid:SetRowHeight(w)
- for k,v in pairs(self.track) do
+ local function drawprayer(prayer)
local rec = vgui.Create("DImageButton",grid)
- rec:SetText(v.Name)
+ rec:SetText(prayer.Name)
rec:SetSize(w,w)
- if(v.DoOnPanel) then
- v:DoOnPanel(rec)
+ if(prayer.DoOnPanel) then
+ prayer:DoOnPanel(rec)
end
+ rec.item = prayer
+ rec:Droppable("prayer")
grid:AddItem(rec)
end
+
+ for k,v in pairs(self.track) do
+ drawprayer(v)
+ end
+
+ local observer = {}
+ observer.Put = function(obs,pos,item)
+ print("Prayer observer got request to put")
+ drawprayer(item)
+ end
+ observer.Remove = function(obs,pos,item)
+ print("I should never remove a prayer!")
+ end
+ return observer
end
--Rebind f1, f2, f3, f4 to prayers