svennp

printermethods

Sep 21st, 2012
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.53 KB | None | 0 0
  1. args = {...}
  2.  
  3. if not fs.exists(".pp") then
  4.   fs.makeDir(".pp")
  5. end
  6.  
  7. for n,pri in pairs(rs.getSides()) do
  8.   if peripheral.getType(pri) == "printer" then
  9.     printer = peripheral.wrap(pri)
  10.     break
  11.   end
  12. end
  13.  
  14. if args[1] == "reset" then
  15.   files = fs.list(".pp")
  16.   for k,v in pairs(files) do
  17.     print("deleted: "..v)
  18.     fs.delete(".pp/"..v)
  19.   end
  20.   return print "reset complete!"
  21. end
  22.  
  23. function checklevel()
  24.   shell.run("clear")
  25.   ink = printer.getInkLevel()
  26.   paper = printer.getPaperLevel()
  27.   if ink == 0 then
  28.     if paper == 0 then
  29.       print "Insert more inc and paper and press any key"
  30.       os.pullEvent("key")
  31.       checklevel()
  32.     else print "Insert more inc and press any key"
  33.       os.pullEvent("key")
  34.       checklevel()
  35.     end
  36.   elseif paper == 0 then
  37.     print "Insert more paper and press any key"
  38.     os.pullEvent("key")
  39.     checklevel()
  40.   end
  41. end
  42.  
  43. for n,per in pairs(rs.getSides()) do
  44.   type = peripheral.getType(per)
  45.   if peripheral.getType(per) ~= nil and not fs.exists(".pp/"..type) then
  46.     checklevel()
  47.     lol = fs.open(".pp/"..type, "w")
  48.     lol.write(type)
  49.     lol.close()
  50.     methods = peripheral.getMethods(per)
  51.     printer.newPage()
  52.     printer.setPageTitle("methods for: "..type)
  53.     printer.write("Methods for "..type..": ")
  54.     n1, n2 = printer.getCursorPos()
  55.     printer.setCursorPos(1,n2 + 2)
  56.     for k,v in pairs(methods) do
  57.       printer.write(v)
  58.       n1, n2 = printer.getCursorPos()
  59.       printer.setCursorPos(1,n2 + 1)
  60.     end
  61.     printer.endPage()
  62.   end
  63. end
  64. sleep(0.2)
Advertisement
Add Comment
Please, Sign In to add comment