From d2868db28210b8c4debab2b70dca2833d582fdfd Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Fri, 23 Mar 2018 15:20:30 -0400 Subject: Refactored the inventory system Inventory system now uses flyweight pattern with metatables. --- gamemode/inventorysystem/skills/sh_skills.lua | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'gamemode/inventorysystem/skills') diff --git a/gamemode/inventorysystem/skills/sh_skills.lua b/gamemode/inventorysystem/skills/sh_skills.lua index a1c878f..3c212bf 100644 --- a/gamemode/inventorysystem/skills/sh_skills.lua +++ b/gamemode/inventorysystem/skills/sh_skills.lua @@ -140,16 +140,14 @@ inv.Serialize = function(self) end inv.DeSerialize = function(self,data) - if data == nil or data == '' then - return table.Copy(inv) - end calculate_skills() - local cpy = table.Copy(self) + self.skills = {} local gen = util.JSONToTable(data) + gen = gen or {} for k,v in pairs(gen) do - cpy.skills[k] = v + self.skills[k] = v end - return cpy + return self end inventory.RegisterInventory(inv) -- cgit v1.2.3-70-g09d2