4ndertheker

[FTB-Turtle] Fläche bauen

Apr 17th, 2013
331
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.68 KB | None | 0 0
  1. --Dieses Script lässt eine Turtle eine Fläche mit den Kantenlängen rn (in Blickrichtung der Turtle) und rl (andere Kante) aus den Blöcken in ihrem Inventory bauen. Turtle einfach auf der linken, vorderen Ecke der zukünftigen Fläche platzieren.
  2.  
  3. local argumente = { ... }
  4. local rl,rn
  5. if #argumente==2 then
  6.     rl=tonumber(argumente[1]) -- Anzahl der Reihen
  7.     rn=tonumber(argumente[2]) -- Reihenlaenge
  8. else
  9.     print("Ungueltige Zahl an Argumenten, Programm folgendermaszen starten:\n[Programmname] [Reihenlaenge] [Reihenanzahl]")
  10.     error()
  11. end
  12.  
  13. rl=rl-1
  14. turtle.select(1)
  15. local sn=1
  16.  
  17. local function items()
  18.     if turtle.getItemCount(sn)<=0 then
  19.         if sn==16 then
  20.             print("Baumaterial leer. Bitte auffuellen und eine Taste druecken.")
  21.             os.pullEvent("key")
  22.             turtle.select(1)
  23.             sn=1
  24.         else
  25.             sn=sn+1
  26.             turtle.select(sn)
  27.         end
  28.     end
  29.    
  30. end
  31.  
  32. local function reihe()
  33.     for i=1, rl, 1 do
  34.         turtle.placeDown()
  35.         turtle.forward()
  36.         items()
  37.     end
  38. end
  39.  
  40. local function rechts()
  41.     turtle.turnRight()
  42.     turtle.placeDown()
  43.     turtle.forward()
  44.     items()
  45.     turtle.placeDown()
  46.     turtle.turnRight()
  47.     items()
  48. end
  49.  
  50. local function links()
  51.     turtle.turnLeft()
  52.     turtle.placeDown()
  53.     turtle.forward()
  54.     turtle.placeDown()
  55.     items()
  56.     turtle.turnLeft()
  57.     items()
  58. end
  59.  
  60. local function rntest(x)
  61.     if x<=0 then
  62.     turtle.placeDown()
  63.     print("Bau scheint abgeschlossen, falls nicht bitte FluidumLetale aufs uebelste beschimpfen und ihm sagen, dass sein Kackscript nicht funktioniert.")
  64.     error() -- lolz, n00pstyle!
  65.     end
  66. end
  67.  
  68. ----------------------------
  69.  
  70. turtle.placeDown()
  71. items()
  72.  
  73. while true do
  74.  
  75.     reihe()
  76.     rn=rn-1
  77.     rntest(rn)
  78.     rechts()
  79.  
  80.     reihe()
  81.     rn=rn-1
  82.     rntest(rn)
  83.     links()
  84.  
  85. end
Advertisement
Add Comment
Please, Sign In to add comment