luckdemon

XpTurtle

Apr 13th, 2013
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.83 KB | None | 0 0
  1. --wrapping peripheral
  2. xp = peripheral.wrap("left")
  3. xp.setAutoCollect(true)
  4.  
  5. --display level and return value
  6. local function displvl(x,y)
  7. lvl = xp.getLevels()
  8. term.setCursorPos(x,y)
  9. term.write("                           ")
  10. term.setCursorPos(x,y)
  11. print("Current level is:" .. lvl)
  12. if lvl > 29 then
  13. return true
  14. else return false
  15. end
  16. end
  17.  
  18. --make the book
  19. local function enchant()
  20. turtle.select(1)
  21. xp.enchant(30)
  22. turtle.drop()
  23. shell.run("redpulse top")
  24. end
  25.  
  26. --get the slot number that books are in
  27. local function findbooks()
  28. if turtle.getItemCount(2) > 0 then return 2
  29. elseif turtle.getItemCount(3) > 0 then return 3
  30. elseif turtle.getItemCount(4) > 0 then return 4
  31. elseif turtle.getItemCount(5) > 0 then return 5
  32. elseif turtle.getItemCount(6) > 0 then return 6
  33. elseif turtle.getItemCount(7) > 0 then return 7
  34. elseif turtle.getItemCount(8) > 0 then return 8
  35. elseif turtle.getItemCount(9) > 0 then return 9
  36. elseif turtle.getItemCount(10) > 0 then return 10
  37. elseif turtle.getItemCount(11) > 0 then return 11
  38. elseif turtle.getItemCount(12) > 0 then return 12
  39. elseif turtle.getItemCount(13) > 0 then return 13
  40. elseif turtle.getItemCount(14) > 0 then return 14
  41. elseif turtle.getItemCount(15) > 0 then return 15
  42. elseif turtle.getItemCount(16) > 0 then return 16
  43. elseif turtle.getItemCount(16) == 0 then print("no books") return false
  44. end
  45. end
  46.  
  47. --check for books in inventory, and place 1 in first slot
  48. local function bookcheck()
  49. if turtle.getItemCount(1) == 0 then
  50. turtle.select(findbooks())
  51. turtle.transferTo(1,1)
  52. end
  53. end
  54.  
  55. --print usage information
  56. local function startup()
  57. term.clear()
  58. term.setCursorPos(1,1)
  59. print("Put books in slots 2-16")
  60. sleep(5)
  61. term.clear()
  62. term.setCursorPos(1,1)
  63. end
  64.  
  65. -- runtime
  66. startup()
  67. while true do
  68. bookcheck()
  69. if displvl(1,1) == true then
  70. enchant()
  71. else displvl(1,1)
  72. end
  73. sleep(3)
  74. end
Advertisement
Add Comment
Please, Sign In to add comment