diff options
Diffstat (limited to 'gamemode/npcsystem/loadnpcs.lua')
| -rw-r--r-- | gamemode/npcsystem/loadnpcs.lua | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/gamemode/npcsystem/loadnpcs.lua b/gamemode/npcsystem/loadnpcs.lua new file mode 100644 index 0000000..2db2aae --- /dev/null +++ b/gamemode/npcsystem/loadnpcs.lua @@ -0,0 +1,60 @@ +local Folder = GM.Folder:gsub("gamemodes/","").."/gamemode/npcsystem/npcs"
+local insert = table.insert
+
+function GM:LoadNPCS()
+ local Items = file.Find(Folder.."/*.lua","LUA")
+ local BaseItem = {}
+
+ GAMEMODE.Npcs = {}
+
+ NPC = {}
+
+ AddCSLuaFile(Folder.."/base.lua")
+ include(Folder.."/base.lua")
+
+ BaseItem = table.Copy(NPC)
+
+ for k,v in pairs(Items) do
+ if (v != "base.lua") then
+ AddCSLuaFile(Folder.."/"..v)
+ include(Folder.."/"..v)
+
+ insert(GAMEMODE.Npcs,NPC)
+
+ NPC = table.Copy(BaseItem)
+
+ end
+ end
+end
+
+hook.Add("Initialize","Loadnpcs",function()
+ GAMEMODE:LoadNPCS()
+end)
+
+function GetNpcByName(name)
+ for k,v in pairs( GAMEMODE.Npcs ) do
+ if (v.Name == name) then return v end
+ end
+
+ return nil
+end
+
+--[[
+function GetRecipeForItem(name)
+ for k,v in pairs( GAMEMODE.Recipes ) do
+ if (v.Name == name) then return v.Recipe,v end
+ end
+
+ return nil
+end
+]]--
+--[[
+function GetItemsByClass(class)
+ local Dat = {}
+ for k,v in pairs( GAMEMODE.Items ) do
+ if (v.Class == class) then table.insert(Dat,v) end
+ end
+
+ return Dat
+end
+]]--
|
