From 98e0462e4f6b13ff26af5211409352d45dd9453e Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Sun, 8 Jan 2017 22:28:08 -0500 Subject: Add a ton of icons, more work on refactoring --- gamemode/inventorysystem/prayers/sh_prayers.lua | 44 +++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 gamemode/inventorysystem/prayers/sh_prayers.lua (limited to 'gamemode/inventorysystem/prayers/sh_prayers.lua') diff --git a/gamemode/inventorysystem/prayers/sh_prayers.lua b/gamemode/inventorysystem/prayers/sh_prayers.lua new file mode 100644 index 0000000..208540d --- /dev/null +++ b/gamemode/inventorysystem/prayers/sh_prayers.lua @@ -0,0 +1,44 @@ + +local reg = nrequire("inventory.lua") +local itm = nrequire("item.lua") +local inv = {} +inv.Name = "Prayers" +inv.track = {} +function inv:FindPlaceFor(item) + return {#track} +end +function inv:CanFitIn(pos,item) + return pos[1] == #self.track +end +function inv:Put(pos,item) + self.track[pos[1]] = item +end +function inv:Has(a) + if type(a) == "string" then + for k,v in pairs(self.track) do + if v == a then return {k} end + end + elseif type(a) == "function" then + for k,v in pairs(self.track) do + if a(v) then return {k} end + end + end + return nil +end +function inv:Remove(pos) + for i = 1,pos[1] do + self.track[i] = self.track[i+1] + end +end +function inv:Get(pos) + return self.track[pos[1]] +end +function inv:Serialize() + local ret = {} + for k,v in pairs(self.track) do + ret[v.Name] = v:Serialize() + end +end + + +reg.RegisterInventory(inv) -- cgit v1.2.3-70-g09d2