Advertisement
Rot256

Sugar

Jun 20th, 2014
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.62 KB | None | 0 0
  1. function refuel()
  2. if turtle.getFuelLevel() < 1000 then
  3. for i = 2,16,1 do
  4. turtle.select(i)
  5. os.sleep(0.1)
  6. while turtle.getFuelLevel() < 1500 do
  7. if(turtle.refuel(1) == false) then
  8. break
  9. end
  10. end
  11. end
  12. end
  13. end
  14.  
  15. function unload()
  16. for i = 1,16,1 do
  17. turtle.select(i)
  18. os.sleep(0.1)
  19. if i == 1 then
  20. if turtle.getItemCount(1) > 1 then
  21. turtle.dropDown(turtle.getItemCount(1)-1)
  22. end
  23. else
  24. turtle.dropDown()
  25. end
  26. end
  27. end
  28.  
  29. f = io.open("speed.dat","r")
  30. if f ~= nil then
  31. speed = tonumber(f:read())
  32. f:close()
  33. else
  34. speed = 0.8
  35. f = io.open("speed.dat","w")
  36. f:write(tostring(speed))
  37. f:close()
  38. end
  39.  
  40. ticks = 750
  41. f = io.open("ticks.dat","r")
  42. if f ~= nil then
  43. ticks = tonumber(f:read())
  44. f:close()
  45. end
  46.  
  47. while true do
  48. turtle.select(1)
  49. if redstone.getInput("front") then
  50. --Calculate speed
  51. speed = 1800 / (ticks+1)
  52. f = io.open("speed.dat","w")
  53. f:write(tostring(speed))
  54. f:close()
  55.  
  56. --Refuel and unload
  57. refuel()
  58. if turtle.getFuelLevel() < 300 then
  59. print("fuck im out of fuel")
  60. os.reboot()
  61. end
  62. unload()
  63. ticks = 0
  64. end
  65.  
  66. --Check Forward
  67. if turtle.detect() == true then
  68. if turtle.compare() == false and redstone.getInput("front")== false then
  69. turtle.dig()
  70. else
  71. turtle.turnLeft()
  72. end
  73. end
  74.  
  75. --Check Down
  76. if turtle.detectDown() == true and turtle.compareDown() == false and redstone.getInput("front")== false and redstone.getInput("right")== false then
  77. turtle.digDown()
  78. end
  79.  
  80. turtle.forward()
  81.  
  82. ticks = ticks + 1
  83. f = io.open("ticks.dat","w")
  84. f:write(tostring(ticks))
  85. f:close()
  86.  
  87. os.sleep(speed)
  88. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement