Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- MethodsLister by Teki
- local advanced = false
- local docs = false
- if not fs.exists("methods/") then
- fs.makeDir("methods/")
- end
- local methodsList = ""
- local filepath
- function getMethodsBySide(side)
- for i,v in ipairs(peripheral.getMethods(side)) do
- methodsList = methodsList .. i .. ". " .. v .. "\n"
- if v == "getAdvancedMethodsData" then advanced = true end
- if v == "getDocs" then docs = true end
- end
- end
- function getAdvancedMethodsDataBySide(side)
- local wrapped = peripheral.wrap(side)
- local advancedMethods = wrapped.getAdvancedMethodsData()
- methodsList = methodsList .. textutils.serialize(advancedMethods)
- end
- function getDocsBySide(side)
- local wrapped = peripheral.wrap(side)
- local advancedMethods = wrapped.getDocs()
- methodsList = methodsList .. textutils.serialize(advancedMethods)
- end
- function Save(side)
- filePath = "methods/" .. peripheral.getType(side)
- savedFile = fs.open(filePath, "w")
- savedFile.write(textutils.serialize(methodsList):gsub("\\", ""))
- savedFile.flush()
- savedFile.close()
- end
- local sides = peripheral.getNames()
- for i=1,#sides do
- advanced = false
- docs = false
- getMethodsBySide(sides[i])
- if advanced then
- getAdvancedMethodsDataBySide(sides[i])
- advanced = false
- end
- if docs then
- getDocsBySide(sides[i])
- docs = false
- end
- Save(sides[i])
- methodsList = ""
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement