aboutsummaryrefslogtreecommitdiff
path: root/gamemode/inventorysystem/equipment/sh_equipment.lua
diff options
context:
space:
mode:
authorAlexander Pickering <alexandermpickering@gmail.com>2018-03-23 15:20:30 -0400
committerAlexander Pickering <alexandermpickering@gmail.com>2018-03-23 15:20:30 -0400
commitd2868db28210b8c4debab2b70dca2833d582fdfd (patch)
tree17ad5beb46e3b1c3c17d520a71a4c1ea12c47f51 /gamemode/inventorysystem/equipment/sh_equipment.lua
parenta7f7bed257dd96b1027c6343cd59eea4eee9fc3b (diff)
downloadartery-d2868db28210b8c4debab2b70dca2833d582fdfd.tar.gz
artery-d2868db28210b8c4debab2b70dca2833d582fdfd.tar.bz2
artery-d2868db28210b8c4debab2b70dca2833d582fdfd.zip
Refactored the inventory system
Inventory system now uses flyweight pattern with metatables.
Diffstat (limited to 'gamemode/inventorysystem/equipment/sh_equipment.lua')
-rw-r--r--gamemode/inventorysystem/equipment/sh_equipment.lua10
1 files changed, 4 insertions, 6 deletions
diff --git a/gamemode/inventorysystem/equipment/sh_equipment.lua b/gamemode/inventorysystem/equipment/sh_equipment.lua
index 5bea682..b27dd08 100644
--- a/gamemode/inventorysystem/equipment/sh_equipment.lua
+++ b/gamemode/inventorysystem/equipment/sh_equipment.lua
@@ -117,16 +117,14 @@ inv.Serialize = function(self)
end
inv.DeSerialize = function(self,data)
- if data == nil or data == '' then
- return table.Copy(self)
- end
+ self.equiped = {}
local tbl = util.JSONToTable(data)
- local cpy = table.Copy(self)
+ tbl = tbl or {}
for k,v in pairs(tbl) do
local te = itm.GetItemByName(v[1]):DeSerialize(v[2])
- cpy:Put({k},te)
+ self:Put({k},te)
end
- return cpy
+ return self
end
inventory.RegisterInventory(inv)