Advertisement
VADemon

direwolf20 chunkdestroyer 1.6, personal anchor, no fuelboss

Feb 23rd, 2014
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.22 KB | None | 0 0
  1. -- start with "startup <Miner|chunkloader|fuelBoss>"
  2. rednet.open("right")
  3. local func
  4. local tArgs = {...}
  5.  
  6. function cleanup()
  7.    for i = 1,12 do
  8.       turtle.select(i)
  9.       turtle.dropDown()
  10.    end
  11. end
  12.  
  13. function place()
  14.    turtle.select(16)
  15.    turtle.place()
  16.    turtle.down()
  17.    turtle.select(15)
  18.    turtle.place()
  19.    turtle.select(14)
  20.    turtle.placeDown()
  21. end
  22.  
  23. function remove()
  24.    turtle.select(14)
  25.    turtle.digDown()
  26.    turtle.select(15)
  27.    turtle.dig()
  28.    turtle.up()
  29.    turtle.select(16)
  30.    turtle.dig()
  31. end
  32.  
  33. function fuel()
  34.    turtle.select(13)
  35.    turtle.placeUp()
  36.    turtle.select(1)
  37.    turtle.suckUp()
  38.    turtle.dropUp(turtle.getItemCount(1) - 4)
  39.    turtle.refuel()
  40.    turtle.select(13)
  41.    turtle.digUp()
  42. end
  43.  
  44. function fuelBoss()
  45.   turtle.select(13)
  46.   turtle.placeUp()
  47.   turtle.select(1)
  48.   turtle.suckUp()
  49.   turtle.dropUp(turtle.getItemCount(1) - 4)
  50.   turtle.select(13)
  51.   turtle.digUp()
  52.   turtle.up()
  53.   turtle.turnRight()
  54.   turtle.select(1)
  55.   turtle.drop()
  56.   turtle.turnLeft()
  57.   turtle.down()
  58. end
  59.  
  60. function checkFuel()
  61.    if turtle.getFuelLevel() < 400 then
  62.       fuel()
  63.    end
  64. end
  65.  
  66. function cycle()
  67.    place()
  68.    sleep(25)
  69.    while turtle.getItemCount(1) > 0 do
  70.       cleanup()
  71.       sleep(2)
  72.    end
  73.    remove()
  74.    checkFuel()
  75.    turtle.forward()
  76. end
  77.  
  78. function checkIn(fromID)
  79.    rednet.send(fromID, tArgs[1])
  80. end
  81.  
  82. function refuelEnderpearl()
  83.     if turtle.getItemCount(15) < 3 then
  84.         turtle.select(14)
  85.         turtle.placeDown()
  86.        
  87.         while turtle.getItemCount(15) < 16 do -- suck items until refueled
  88.             turtle.suckDown()
  89.             turtle.select(1)
  90.             turtle.transferTo(15)
  91.         end
  92.         if turtle.getItemCount(1) > 0 then
  93.             turtle.select(1)
  94.             turtle.dropDown()
  95.         end
  96.        
  97.         turtle.select(14)
  98.         turtle.digDown()
  99.     end
  100. end
  101.  
  102. function chunkLoad()
  103.     turtle.select(15) -- get enderpearls back
  104.     turtle.suckUp()
  105.    
  106.    turtle.select(16) -- get chunkloader
  107.    turtle.digUp()
  108.    checkFuel()
  109.    turtle.select(16)
  110.    turtle.forward()
  111.    turtle.placeUp()
  112.    
  113.    turtle.select(15) -- put enderpearls
  114.    turtle.dropUp()
  115. end
  116.  
  117. while true do
  118.    local id,msg,dist = rednet.receive()
  119.    func = loadstring(msg.."(...)")
  120.    setfenv(func, getfenv())
  121.    func(id)
  122.    rednet.send(id,"Done")
  123. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement