-- do return end -- --[=[ -- --[[ -- This file loads in all the items -- ]] -- local concmd = include("concommands.lua") -- --local autolua = include("../autolua.lua") -- print("Hello from LoadItems.lua!") -- ART.Items = {} -- local requiredfields = { -- "Name", -- "Shape", -- "Serialize", -- "DeSerialize", -- } -- local defaultfields = { -- ["Serialize"] = function(self) return "" end, -- ["DeSerialize"] = function(self,string) return self end, -- ["Shape"] = {{true}}, -- } -- function ART.RegisterItem(tbl) -- --print("Registering item:" .. tbl.Name) -- for k,v in pairs(requiredfields) do -- assert(tbl[v] ~= nil, "Attempted to register an item without field:" .. v) -- end -- assert(ART.Items[tbl.Name] == nil, "Attempted to register 2 items with the same name!") -- for k,v in pairs(defaultfields) do -- if tbl[k] == nil then -- tbl[k] = v -- end -- end -- ART.Items[tbl.Name] = tbl -- --print("Art is now:") -- --PrintTable(ART) -- end -- -- --autolua.AddLuaSHFolder("/shared/itemsystem") -- -- function ART.GiveItem(player,name) -- assert(ART.Items[name] ~= nil, "Attempted to give a nil item!") -- player:GiveItem(ART.Items[name]) -- player:SynchronizeInventory() -- end -- -- function ART.GetItemByName(name) -- assert(ART.Items[name] ~= nil,"Attempted to get a nil item:" .. name) -- return ART.Items[name] -- end -- -- concommand.Add("artery_printitems",function(ply,cmd,args) -- if not ply:IsAdmin() then return end -- print("Items table:") -- PrintTable(ART.Items) -- end) -- -- concommand.Add("artery_giveitem",function(ply,cmd,args) -- if not ply:IsAdmin() then return end -- print("Trying to give an item:" .. args[1]) -- ART.GiveItem(ply,args[1]) -- end, concmd.AutocompleteFunction(table.GetKeys(ART.Items)), "Give an item to the specified player, or yourself if no player is specified.") -- ]=]