//Helper functions to refactor the init print("Utility.lua included!") function findRecursive(folderstring,recursive,dofunction) local folderpath = "gamemodes/" .. GM.GAMEMODE_FOLDER_NAME .. "/gamemode/" .. folderstring .. "/" local files, directories = file.Find(folderpath .. "*", "MOD") for k,v in pairs(files) do dofunction(folderstring .. "/".. v) end if(recursive) then for k,v in pairs(directories) do findRecursive(folderstring.. "/" .. v,recursive,dofunction) end end end //Does AddCSLuaFile() on all files within a folderpath, optionally recursive //Ex: // AddCSLuaFolder("client/extras",true) function AddCSLuaFolder(folderstring,recursive) findRecursive(folderstring,recursive,function(string) print("Adding CS Lu file:" .. string) AddCSLuaFile(string) end) end //Does include() on all files within a folderpath, optionally recursive //Ex: // includeFolder("server/extras",false) function includeFolder(folderstring,recursive) findRecursive(folderstring,recursive,function(string) print("Includeing file:" .. string) include(string) end) end function addResourceFolder(folderpath,recursive) local files, directories = file.find(folderpath .. "*", "GAME") if(recursive) then for k,v in pairs(directories) do addResourceFolder(folderpath..v,recursive) end end for k,v in pairs(files) do resource.AddFile(v) end end