aboutsummaryrefslogtreecommitdiff
path: root/gamemode/inventorysystem/equipment
diff options
context:
space:
mode:
Diffstat (limited to 'gamemode/inventorysystem/equipment')
-rw-r--r--gamemode/inventorysystem/equipment/cl_equipment.lua3
-rw-r--r--gamemode/inventorysystem/equipment/sh_equipment.lua19
2 files changed, 13 insertions, 9 deletions
diff --git a/gamemode/inventorysystem/equipment/cl_equipment.lua b/gamemode/inventorysystem/equipment/cl_equipment.lua
index 57a07ad..ca03bf6 100644
--- a/gamemode/inventorysystem/equipment/cl_equipment.lua
+++ b/gamemode/inventorysystem/equipment/cl_equipment.lua
@@ -126,6 +126,9 @@ inv.DrawOnDPanel = function(self,panel)
if self.equiped[k].OnEqpPaint then
pn.PaintOver = self.equiped[k].OnEqpPaint
end
+ if self.equiped[k].DoOnEquipPanel then
+ self.equiped[k]:DoOnEquipPanel(pn)
+ end
else --We don't have something equiped!
if v.img and v.img.material then
local c = col.ui.border
diff --git a/gamemode/inventorysystem/equipment/sh_equipment.lua b/gamemode/inventorysystem/equipment/sh_equipment.lua
index 8dc9442..7095363 100644
--- a/gamemode/inventorysystem/equipment/sh_equipment.lua
+++ b/gamemode/inventorysystem/equipment/sh_equipment.lua
@@ -112,20 +112,21 @@ inv.Serialize = function(self)
tbl[k] = {v.Name, v:Serialize()}
end
end
- return util.TableToJSON(tbl)
+ local ret = util.TableToJSON(tbl)
+ return ret
end
inv.DeSerialize = function(self,data)
- if data ~= nil and data ~= "" then
- local tbl = util.JSONToTable(data)
- local cpy = table.Copy(self)
- for k,v in pairs(tbl) do
- cpy.equiped[k] = itm.GetItemByName(v[1]):DeSerialize(v[2])
- end
- return cpy
- else
+ if data == nil or data == '' then
return table.Copy(self)
end
+ local tbl = util.JSONToTable(data)
+ local cpy = table.Copy(self)
+ for k,v in pairs(tbl) do
+ local te = itm.GetItemByName(v[1]):DeSerialize(v[2])
+ cpy:Put({k},te)
+ end
+ return cpy
end
inventory.RegisterInventory(inv)