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/equipment/sh_equipment.lua | 10 ++++------ gamemode/inventorysystem/equipment/sv_equipment.lua | 16 ++++++++++++++++ 2 files changed, 20 insertions(+), 6 deletions(-) (limited to 'gamemode/inventorysystem/equipment') 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) diff --git a/gamemode/inventorysystem/equipment/sv_equipment.lua b/gamemode/inventorysystem/equipment/sv_equipment.lua index 2189122..6c28674 100644 --- a/gamemode/inventorysystem/equipment/sv_equipment.lua +++ b/gamemode/inventorysystem/equipment/sv_equipment.lua @@ -1,5 +1,21 @@ --[[ Needed so the includer dosn't freak out ]] +for k,v in pairs({ + "materials/svg/delapouite/originals/svg/000000/transparent/ring.svg", + "materials/svg/lorc/originals/svg/000000/transparent/cracked-helm.svg", + "materials/svg/skoll/originals/svg/000000/transparent/pauldrons.svg", + "materials/svg/willdabeast/deviations/svg/000000/transparent/chain-mail.svg", + "materials/svg/lorc/originals/svg/000000/transparent/knapsack.svg", + "materials/svg/skoll/originals/svg/000000/transparent/bracers.svg", + "materials/svg/lucasms/equipment/svg/000000/transparent/belt.svg", + "materials/svg/delapouite/originals/svg/000000/transparent/gloves.svg", + "materials/svg/sbed/originals/svg/000000/transparent/shield.svg", + "materials/svg/delapouite/originals/svg/000000/transparent/thor-hammer.svg", + "materials/svg/irongamer/originals/svg/000000/transparent/armored-pants.svg", + "materials/svg/lorc/originals/svg/000000/transparent/boots.svg", +}) do + resource.AddSingleFile(v) +end return {} -- cgit v1.2.3-70-g09d2