aboutsummaryrefslogtreecommitdiff
path: root/gamemode/inventorysystem/equipment
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
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')
-rw-r--r--gamemode/inventorysystem/equipment/sh_equipment.lua10
-rw-r--r--gamemode/inventorysystem/equipment/sv_equipment.lua16
2 files changed, 20 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)
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 {}