ok I have a question I have finshed my code and my turtle won't move when the manger computer gave it a job and when it does get to the loaction it just spins and not do anything
i was wanting to know if you guys can tell me why here is my manger code for the computer controlling the turtle
Spoiler
print(os.computerID())
jobAvailable = true
xStart = 486
zStart = 749
xEnd = 441
zEnd = 221
qDist = 11
xNextJob = xStart
zNextJob = zStart
yNextJob = 71
rednet.close("right")
rednet.open("right")
function setNextJob()
zNextJob = zNextJob - qDist
if zNextJob < zEnd then
zNextJob = zStart
xNextJob = xNextJob -qDist
if xNextJob < xEnd then
jobAvailable = false
end
end
end
while jobAvailable do
print("Waiting for quarry turtle")
id, message, dis = rednet.receive()
print("Turtle"..id.." needs a job")
if message == "getJob" then
print("Job available at "..xNextJob.." "..zNextJob)
rednet.send(id, "yes")
print("trace")
rednet.send(id, tostring(xNextJob))
rednet.send(id, tostring(zNextJob))
rednet.send(id, tostring(yNextJob))
setNextJob()
end
print("No more jobs")
while true do
id, message, dis = rednet.receive()
if message == "getJob" then
rednet.send(id, "no")
end
end
end
here is the turtle code
Spoiler
xCoord = 404
zCoord = 748
yCoord = 64
xQuarry = 999
zQuarry = 999
yQuarry = 150
xProgress = 999
zProgress = 999
yProgress = 150
oProgress = 1
xHome = xCoord
zHome = zCoord
yHome = yCoord
yTravel = 79
orientation = 4
orientations = {"north","east","south","west"}
zDiff = {-1, 0, 1, 0}
xDiff = {0, 1, 0, -1}
lineLength = 2
lines = 3
yMin = 999
jobAvailable = true
manager = 36
function inventoryFull()
turtle.select(16)
full = turtle.getItemCount(16) > 0
turtle.select(1)
return full
end
function left()
orientation = orientation - 1
orientation = (orientation -1) % 4
orientation = orientation + 1
turtle.turnLeft()
end
function right()
orientation = orientation - 1
orientation = (orientation + 1) % 4
orientation = orientation + 1
turtle.turnRight()
end
function moveForward()
xCoord = xCoord + xDiff[orientation]
zCoord = zCoord + zDiff[orientation]
turtle.dig()
moved = false
while not(moved) do
moved = turtle.forward()
end
end
function moveUP()
yCoord = yCoord + 1
turtle.digUp()
moved = false
while not(moved) do
moved = turtle.up()
end
end
function moveDown()
yCoord = yCoord - 1
turtle.digDown()
moved = false
while not(moved) do
moved = turtle.digDown()
end
if yMin > yCoord then
yMin = yCoord
end
end
function look(direction)
while direction ~= orientations[orientation] do
right()
end
end
function goto(xTarget, zTarget, yTarget)
while yTarget < yCoord do
moveDown()
end
while yTarget > yCoord do
moveUP()
end
if xTarget < xCoord then
look("west")
while xTarget < xCoord do
moveForward()
end
end
if xTarget > xCoord then
look("east")
while xTarget > xCoord do
moveForward()
end
end
if zTarget < zCoord then
look("north")
while zTarget < zCoord do
moveForward()
end
end
if zTarget > zCoord then
look("south")
while zTarget > zCoord do
moveForward()
end
end
end
function returnItems()
xProgress = xCoord
zProgress = zCoord
yProgress = yCoord
oProgress = orientation
goto(xHome, zHome, yTravel)
goto(xHome, zHome, yHome)
look("west")
for i = 1,16 do
turtle.select(i)
turtle.drop()
end
turtle.select(1)
goto(xProgress, zProgress, yTravel)
goto(xProgress, zProgress, yProgress)
look(orientations[oProgress])
end
function digLine()
for i = 1,lineLength do
if inventoryFull() then
returnItems()
end
moveForward()
end
end
function digLayer()
for i = 1,lines do
digLine()
if i%2 == 1 and i < lines then
left()
moveForward()
left()
elseif i < lines then
right()
moveForward()
right()
end
end
goto(xQuarry, zQuarry, yCoord)
look("north")
moveDown()
end
function digQuarry(xTarget, zTarget, yTarget)
xQuarry = xTarget
zQuarry = zTarget
yQuarry = yTarget
goto(xQuarry, zQuarry, yTravel)
goto(xQuarry, zQuarry, yQuarry)
while yMin > 7 do
digLayer()
end
goto(xQuarry, zQuarry, yQuarry)
goto(xHome, zHome, yTravel)
goto(xHome, zHome, yHome)
yMin = 999
end
function getjob()
while jobAvailable do
print("Requesting Job")
rednet.send(manager, "getJob")
id, message, dis = rednet.receive()
if message == "yes" then
id, xRec, dis = rednet.receive()
id, zRec, dis = rednet.receive()
id, yRec, dis = rednet.receive()
xQuarry = tonumber(xRec)
zQuarry = tonumber(zRec)
yQuarry = tonumber(yRec)
print("Job at"..xQuarry.." "..zQuarry)
digQuarry(xQuarry, zQuarry, yQuarry)
print("Finshed Job")
elseif message == "no" then
print("No more Jobs")
jobAvailable = false
end
end
end
rednet.close("right")
rednet.open("right")
getjob()
if you all can tell me that would help out alot if you cant its ok I just thought I would ask cause I have been trying for days to figure it out
thanks
jdanner95