Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- ==========================
- -- === Parameter einlesen ===
- -- ==========================
- local tArgs = { ... }
- if #tArgs ~= 2 then
- print( "Usage: wand <breite> <hoehe>" )
- print( "Turtle Initialposition: Unten links vor erstem Block" )
- return
- end
- local breite = tonumber( tArgs[1] )
- local hoehe = tonumber( tArgs[2] )
- -- =================
- -- === Debugging ===
- -- =================
- print( "Baue Wand "..breite.." breit x "..hoehe.." hoch" )
- -- ==================
- -- === Wand bauen ===
- -- ==================
- local aktuellerSlot = 1
- for x=1,breite do
- -- Über die gesamte Länge jeweils einen Block unten platzieren und voranschreiten
- -- Ausnahme: Beim letzen Block nach dem Block platzieren nicht voranschreiten
- -- um das Gebiet nicht zu verlassen
- -- anschließend den ganzen Weg zurücklaufen
- for y=1,hoehe do
- if not turtle.detect() then
- -- Via detect() wurde festgestellt dass vor dem Turtle noch kein Block platziert ist
- -- Es wird nun zunächst überprüft ob der Turtle noch Items im aktuellen Slot hat
- -- Falls nicht wird der nächste Slot gewählt
- -- Falls der 17. (also nicht existente) Slot erreicht wird, bricht die gesamte Funktion ab via return
- if turtle.getItemCount(aktuellerSlot) == 0 then
- aktuellerSlot = aktuellerSlot + 1
- if aktuellerSlot > 16 then
- return
- end
- turtle.select(aktuellerSlot)
- end
- if turtle.getItemCount(aktuellerSlot) == 0 then
- return
- end
- turtle.place()
- end
- if y ~= hoehe then
- turtle.up()
- end
- end
- for y=1,hoehe-1 do
- turtle.down()
- end
- -- Sobald zurückgelaufen nach rechts zur nächsten Reihe wechseln
- -- Ausnahme: Beim letzten Block nach rechts nicht noch eins weiter nach rechts laufen
- -- da sonst das Gebiet verlassen würde
- if x ~= breite then
- turtle.turnRight()
- turtle.forward()
- turtle.turnLeft()
- end
- end
- turtle.turnLeft()
- for x=1,breite-1 do
- turtle.forward()
- end
- turtle.turnRight()
- -- Zurückkehren auf Initialposition
- turtle.select(1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement