function dropslotxto16(minslot)
for currentdropslot = minslot, 16 do
turtle.select(currentdropslot)
turtle.dropDown()
end
turtle.select(1)
end
function getamountfrominventory(amountneeded)
turtle.suckDown()
repeat
amountinturtle = turtle.getItemCount(1)
if amountinturtle < amountneeded then
turtle.suckDown()
dropslotxto16(2)
end
until
amountinturtle >= amountneeded
if amountinturtle > amountneeded then
turtle.dropDown(amountinturtle-amountneeded)
end
end
function getframes(amountneeded)
turtle.up()
turtle.back()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.forward()
turtle.down()
end
function getpanels(amountneeded)
turtle.up()
turtle.back()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.down()
end
function getnotgates(amountneeded)
turtle.up()
turtle.back()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.down()
end
function getmotors(amountneeded)
turtle.up()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.down()
end
function getbatterybox(amountneeded)
turtle.up()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.down()
end
function getbattery()
turtle.up()
turtle.back()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
turtle.suckDown()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.down()
end
function getscrewdriver()
turtle.up()
for n=1, 4 do turtle.back() end
turtle.suckDown()
for n=1, 4 do turtle.forward() end
turtle.down()
end
function dropoffscrewdriver()
turtle.up()
for n=1, 4 do turtle.back() end
turtle.dropDown()
for n=1, 4 do turtle.forward() end
turtle.down()
end
function getredwire(amountneeded)
turtle.up()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.down()
end
function getbluewire(amountneeded)
turtle.up()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
getamountfrominventory(amountneeded)
turtle.forward()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.down()
end
function makebaseframefloor()
turtle.up()
turtle.forward()
for m=1, 3 do
for n=1, 6 do
turtle.placeDown()
turtle.forward()
end
turtle.turnRight()
turtle.forward()
turtle.turnRight()
turtle.forward()
for n=1, 6 do
turtle.placeDown()
turtle.forward()
end
turtle.turnLeft()
turtle.forward()
turtle.turnLeft()
turtle.forward()
end
turtle.up()
turtle.forward()
turtle.turnLeft()
turtle.forward()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.turnRight()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.turnLeft()
turtle.forward()
turtle.turnLeft()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.turnRight()
turtle.forward()
turtle.turnRight()
turtle.placeDown()
turtle.forward()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
for n=1, 4 do turtle.back() end
turtle.turnLeft()
for n=1, 5 do turtle.back() end
turtle.down()
turtle.down()
end
function placepanels()
turtle.up()
turtle.forward()
for n=1, 4 do
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.place()
turtle.back()
turtle.turnLeft()
for m=1, 3 do turtle.forward() end
turtle.turnRight()
end
turtle.back()
turtle.down()
end
function placenotgates()
turtle.up()
turtle.forward()
for n=1, 4 do
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.digDown()
turtle.down()
turtle.dig()
turtle.up()
turtle.place()
turtle.down()
turtle.select(2)
turtle.place()
turtle.up()
turtle.placeDown()
turtle.select(1)
turtle.turnLeft()
for m=1, 3 do turtle.forward() end
turtle.turnRight()
end
turtle.back()
turtle.down()
end
function placemotorsinside()
for m=1, 2 do turtle.up() end
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
for n=1, 4 do
turtle.forward()
turtle.turnLeft()
turtle.place()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.turnLeft()
end
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
for m=1, 2 do turtle.down() end
end
function placemotorsoutside()
turtle.up()
turtle.forward()
turtle.turnRight()
for n=1, 4 do
turtle.forward()
turtle.forward()
turtle.turnLeft()
turtle.dig()
turtle.forward()
turtle.turnLeft()
turtle.turnLeft()
turtle.placeUp()
turtle.turnLeft()
turtle.turnLeft()
turtle.back()
turtle.select(2)
turtle.place()
turtle.select(1)
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.turnLeft()
end
turtle.turnLeft()
turtle.back()
turtle.down()
turtle.down()
end
function adjustmotors()
for m=1, 3 do turtle.up() end
for m=1, 2 do turtle.forward() end
turtle.turnRight()
for m=1, 2 do turtle.forward() end
for m=1, 3 do turtle.placeDown() end
for m=1, 2 do turtle.forward() end
for n=1, 2 do
turtle.turnLeft()
turtle.forward()
for m=1, 3 do turtle.placeDown() end
for m=1, 2 do turtle.forward() end
end
turtle.turnLeft()
turtle.forward()
for m=1, 3 do turtle.placeDown() end
turtle.turnLeft()
turtle.forward()
for n=1, 4 do
turtle.placeDown()
turtle.forward()
turtle.turnRight()
end
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
turtle.back()
turtle.back()
for m=1, 4 do turtle.down() end
end
function placebatteryboxes()
for m=1, 3 do turtle.up() end
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
for n=1, 4 do
turtle.forward()
turtle.turnLeft()
turtle.place()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.turnLeft()
end
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
for m=1, 3 do turtle.down() end
end
function placesecondframeset()
for m=1, 4 do turtle.up() end
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
for n=1, 4 do
turtle.down()
turtle.placeDown()
turtle.up()
turtle.placeDown()
for m=1, 2 do turtle.forward() end
turtle.placeDown()
turtle.forward()
turtle.turnLeft()
end
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
for m=1, 4 do turtle.down() end
end
function placeupmotors()
for m=1, 4 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.turnLeft()
turtle.place()
turtle.digDown()
turtle.down()
turtle.turnRight()
turtle.turnRight()
turtle.placeUp()
turtle.forward()
turtle.turnRight()
turtle.turnRight()
turtle.select(2)
turtle.place()
turtle.select(1)
turtle.back()
turtle.turnRight()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
for m=1, 3 do turtle.down() end
end
function adjustupmotors()
for m=1, 5 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.turnRight()
for m=1, 2 do turtle.forward() end
for m=1, 2 do turtle.placeDown() end
turtle.turnLeft()
turtle.forward()
for m=1, 2 do turtle.placeDown() end
turtle.back()
turtle.turnRight()
for m=1, 2 do turtle.back() end
turtle.turnLeft()
for m=1, 3 do turtle.back() end
for m=1, 5 do turtle.down() end
end
function placefifthbatbox()
for m=1, 5 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.turnRight()
for m=1, 3 do turtle.forward() end
turtle.placeDown()
for m=1, 3 do turtle.back() end
turtle.turnLeft()
for m=1, 3 do turtle.back() end
for m=1, 5 do turtle.down() end
end
function placedownmotors()
for m=1, 5 do turtle.up() end
for m=1, 5 do turtle.forward() end
turtle.turnRight()
for m=1, 3 do turtle.forward() end
turtle.turnRight()
turtle.forward()
turtle.place()
turtle.back()
turtle.place()
turtle.turnLeft()
for m=1, 3 do turtle.back() end
turtle.turnLeft()
for m=1, 5 do turtle.back() end
for m=1, 5 do turtle.down() end
end
function placesomeframes()
for m=1, 5 do turtle.up() end
for m=1, 2 do turtle.forward() end
turtle.turnRight()
for n=1, 2 do
turtle.forward()
turtle.placeDown()
end
for n=1, 2 do
for m=1, 2 do turtle.forward() end
turtle.turnLeft()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
end
for n=1, 2 do
turtle.forward()
turtle.placeDown()
end
turtle.turnLeft()
turtle.forward()
turtle.placeDown()
for m=1, 2 do turtle.forward() end
turtle.turnLeft()
turtle.back()
turtle.turnLeft()
for m=1, 2 do turtle.back() end
for m=1, 5 do turtle.down() end
end
function placesecondpanels()
for m=1, 4 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.turnRight()
turtle.forward()
turtle.placeDown()
for m=1, 2 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.down()
turtle.placeDown()
turtle.turnLeft()
turtle.forward()
turtle.turnLeft()
turtle.down()
turtle.placeDown()
for m=1, 2 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.down()
turtle.placeDown()
turtle.forward()
turtle.turnRight()
for m=1, 4 do turtle.back() end
for m=1, 5 do turtle.down() end
end
function placesecondnotgates()
for m=1, 6 do turtle.up() end
for m=1, 4 do turtle.forward() end
turtle.turnRight()
turtle.forward()
turtle.placeDown()
for m=1, 3 do turtle.forward() end
turtle.down()
turtle.turnRight()
turtle.turnRight()
turtle.placeDown()
turtle.up()
for m=1, 4 do turtle.forward() end
turtle.turnRight()
for m=1, 4 do turtle.back() end
for m=1, 6 do turtle.down() end
end
function placemoreframes()
for m=1, 2 do turtle.up() end
turtle.forward()
for n=1, 4 do
for m=1, 3 do turtle.forward() end
turtle.placeDown()
for m=1, 2 do turtle.forward() end
turtle.turnRight()
end
turtle.up()
turtle.forward()
turtle.place()
turtle.back()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.place()
turtle.up()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.turnLeft()
turtle.forward()
turtle.place()
turtle.back()
turtle.back()
turtle.turnRight()
for m=1, 5 do turtle.back() end
turtle.turnLeft()
for m=1, 4 do turtle.down() end
end
function placemorepanels()
for m=1, 2 do turtle.up() end
turtle.forward()
for n=1, 4 do
for m=1, 3 do turtle.forward() end
turtle.placeDown()
for m=1, 2 do turtle.forward() end
turtle.turnRight()
end
for m=1, 2 do turtle.up() end
for m=1, 2 do turtle.forward() end
turtle.placeDown()
for m=1, 2 do turtle.back() end
turtle.turnRight()
for m=1, 3 do turtle.forward() end
turtle.placeDown()
turtle.turnLeft()
turtle.forward()
turtle.placeDown()
turtle.turnRight()
turtle.up()
for m=1, 2 do turtle.forward() end
turtle.turnLeft()
turtle.forward()
turtle.placeDown()
for m=1, 3 do turtle.back() end
turtle.turnRight()
for m=1, 5 do turtle.back() end
turtle.turnLeft()
for m=1, 5 do turtle.down() end
end
function placeredwire()
turtle.up()
turtle.up()
turtle.turnLeft()
turtle.forward()
turtle.turnRight()
for n=1, 4 do
for m=1, 4 do turtle.forward() end
turtle.turnRight()
turtle.place()
turtle.turnLeft()
for m=1, 3 do turtle.forward() end
turtle.turnRight()
end
for m=1, 3 do turtle.up() end
for m=1, 3 do turtle.forward() end
turtle.turnRight()
for n=1, 2 do
turtle.forward()
turtle.placeDown()
end
turtle.up()
for m=1, 2 do turtle.forward() end
for n=1, 2 do
turtle.forward()
turtle.placeDown()
end
for m=1, 5 do turtle.back() end
turtle.turnLeft()
for m=1, 3 do turtle.back() end
for m=1, 6 do turtle.down() end
end
function placebluewire()
for m=1, 5 do turtle.up() end
turtle.forward()
turtle.turnRight()
for m=1, 3 do turtle.forward() end
turtle.placeDown()
turtle.turnLeft()
turtle.forward()
turtle.placeDown()
turtle.back()
turtle.back()
turtle.turnRight()
for m=1, 3 do turtle.back() end
turtle.turnLeft()
for m=1, 5 do turtle.down() end
end
function placeright()
turtle.turnRight()
turtle.place()
turtle.turnLeft()
end
function placeleft()
turtle.turnLeft()
turtle.place()
turtle.turnRight()
end
function placeshellpartone()
turtle.up()
turtle.turnLeft()
turtle.forward()
turtle.turnRight()
for i=1, 4 do
for n=1, 4 do
for m=1, 6 do
turtle.forward()
placeright()
end
turtle.forward()
turtle.turnRight()
end
turtle.up()
end
for m=1, 5 do turtle.down() end
turtle.turnRight()
turtle.forward()
turtle.turnLeft()
end
function placeshellparttwo()
for m=1, 4 do turtle.up() end
turtle.turnRight()
for m=1, 4 do turtle.forward() placeleft() end
turtle.forward()
turtle.forward()
turtle.up()
turtle.turnLeft()
for n=1, 4 do
for m=1, 6 do
turtle.forward()
placeleft()
end
turtle.forward()
turtle.turnLeft()
end
turtle.up()
turtle.up()
turtle.forward()
turtle.turnLeft()
turtle.forward()
turtle.turnRight()
for n=1, 3 do
for m=1, 6 do
turtle.placeDown()
turtle.forward()
end
turtle.turnLeft()
turtle.forward()
turtle.turnLeft()
turtle.forward()
for m=1, 6 do
turtle.placeDown()
turtle.forward()
end
turtle.turnRight()
turtle.forward()
turtle.turnRight()
turtle.forward()
end
turtle.forward()
turtle.forward()
turtle.turnRight()
turtle.forward()
turtle.forward()
turtle.forward()
turtle.digDown()
turtle.down()
turtle.placeDown()
turtle.up()
turtle.placeDown()
turtle.back()
turtle.back()
turtle.turnLeft()
turtle.back()
turtle.back()
turtle.back()
for m=1, 7 do turtle.down() end
end
function givepower()
for m=1, 5 do turtle.up() end
for m=1, 6 do turtle.back() end
turtle.turnRight()
turtle.forward()
turtle.forward()
for n=1, 3 do
redstone.setOutput("bottom", true)
sleep(0.5)
redstone.setOutput("bottom", false)
sleep(0.5)
end
sleep(30)
turtle.forward()
turtle.forward()
turtle.forward()
for n=1, 3 do
redstone.setOutput("bottom", true)
sleep(0.5)
redstone.setOutput("bottom", false)
sleep(0.5)
end
for m=1, 5 do turtle.back() end
turtle.turnLeft()
for m=1, 6 do turtle.forward() end
for m=1, 5 do turtle.down() end
end
function moveengineup()
for m=1, 4 do turtle.up() end
turtle.turnLeft()
turtle.forward()
turtle.turnRight()
for m=1, 3 do turtle.forward() end
turtle.turnRight()
redstone.setOutput("front", true)
sleep(0.5)
redstone.setOutput("front", false)
turtle.turnLeft()
for m=1, 3 do turtle.back() end
turtle.turnLeft()
turtle.back()
turtle.turnRight()
for m=1, 4 do turtle.down() end
end
getframes(48)
makebaseframefloor()
getpanels(4)
placepanels()
getnotgates(4)
placenotgates()
getmotors(8)
placemotorsinside()
placemotorsoutside()
getscrewdriver()
adjustmotors()
dropoffscrewdriver()
getbatterybox(4)
placebatteryboxes()
getframes(12)
placesecondframeset()
getmotors(2)
placeupmotors()
getscrewdriver()
adjustupmotors()
dropoffscrewdriver()
getbatterybox(1)
placefifthbatbox()
getmotors(2)
placedownmotors()
getframes(9)
placesomeframes()
getpanels(4)
placesecondpanels()
getnotgates(2)
placesecondnotgates()
getframes(7)
placemoreframes()
getpanels(8)
placemorepanels()
getredwire(8)
placeredwire()
getbluewire(2)
placebluewire()
getframes(64)
placeshellpartone()
getframes(59)
placeshellparttwo()
givepower()
moveengineup()