Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- rednet.open("right")
- minFuel = 200
- on = true
- itemData = turtle.getItemDetail()
- storageServerId = 0
- senderId = 0
- finDistanceToGo = 0
- distanceOut = 0
- waiting = false
- client = 6
- itemToGet = "0"
- quantityToGet = 0
- ready = false
- --os.sleep(3)
- while turtle.getFuelLevel() < minFuel do
- turtle.refuel(1)
- turtle.refuel(2)
- turtle.refuel(3)
- turtle.refuel(4)
- turtle.refuel(5)
- turtle.refuel(6)
- turtle.refuel(7)
- turtle.refuel(8)
- turtle.refuel(9)
- turtle.refuel(10)
- turtle.refuel(11)
- turtle.refuel(12)
- turtle.refuel(13)
- turtle.refuel(14)
- turtle.refuel(15)
- turtle.refuel(16)
- print("Fuel Level: "..turtle.getFuelLevel())
- end
- while on == true do
- ready = false
- turtle.select(1)
- print("Waiting...")
- senderId, message, protocol = rednet.receive()
- print("ID: "..senderId.." Content: " .. message)
- if client == senderId then
- itgL = message:sub(61, 63)
- itemToGet = message:sub(31, 31+tonumber(itgL))
- print(itemToGet)
- rednet.send(storageServerId, itemToGet)
- if senderId == storageServerId then
- if message ~= "not avaliable to retrive" then
- finDistanceToGo = (tonumber(message) * 2)-1
- quantityToGet = tonumber(message:sub(51,52))
- if quantityToGet <= 64 then
- print(quantityToGet)
- ready = true
- end
- end
- end
- end
- if ready == true then
- --go get stuff
- while distanceOut < finDistanceToGo do
- while turtle.detect() do
- turtle.select(2)
- turtle.dig()
- turtle.select(1)
- end
- turtle.forward()
- distanceOut = distanceOut + 1
- end
- turtle.turnLeft()
- turtle.select(1)
- turtle.suck(1)
- itemData = turtle.getItemDetail()
- if itemData then
- while itemData.count < quantityToGet do
- i = itemData.count
- turtle.suck(1)
- itemData = turtle.getItemDetail()
- if itemData.count == i then
- --not enough
- quantityToGet = 0
- while itemData.count > 0 do
- turtle.drop()
- itemData = turtle.getItemDetail()
- end
- end
- end
- end
- turtle.turnLeft()
- while distanceOut > 0 do
- while turtle.detect() do
- turtle.select(2)
- turtle.dig()
- turtle.select(1)
- end
- turtle.forward()
- distanceOut = distanceOut - 1
- end
- itemData = turtle.getItemDetail()
- if itemData then
- turtle.drop()
- rednet.send(client, "text")
- rednet.send(client, "There are "..tostring(quantityToGet).." of "..tostring(itemToGet).." in the chest.")
- else
- rednet.send(client, "text")
- rednet.send(client, "failed, no / not enough items of that type")
- end
- turtle.turnLeft()
- turtle.turnLeft()
- print("Done")
- else
- rednet.send(client, "text")
- --os.sleep(0.5)
- --rednet.send(client, "failed, try again")
- print("Not Valid -- Will Try Again")
- --os.sleep(3)
- end
- end
- rednet.close("right")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement