Advertisement
BIuDecoder

StripMining (1.2)

Sep 6th, 2014
276
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. shell.run("clear")
  2. function move3vor() --Gräbt sich 3 mal nach vorne
  3.     for e=1,3 do
  4.         turtle.attack()
  5.         turtle.dig()
  6.         while turtle.detect()==true do
  7.             turtle.attack()
  8.             turtle.dig()
  9.             turtle.attack()
  10.         end
  11.         turtle.forward()
  12.         turtle.attack()
  13.         turtle.digUp()
  14.     end
  15. end
  16.  
  17.  
  18. function turnAround()
  19.     turtle.turnLeft()
  20.     turtle.turnLeft()
  21. end
  22.  
  23. function schrittvor()
  24.     turtle.attack()
  25.     turtle.dig()
  26.     while turtle.detect()==true do      --Überprüft ob noch Sand, Kies oder Mob vor einem ist
  27.         turtle.attack()
  28.         turtle.dig()
  29.     end
  30.     turtle.attack()
  31.     turtle.forward()
  32.     turtle.attack()
  33.     turtle.digUp()
  34. end
  35.  
  36.  
  37. function gang()         --Gräbt einen Gang in eine Richtung
  38.     for i=1,g do
  39.         schrittvor()
  40.     end
  41.     turnAround()
  42.     for z=1,g do
  43.         schrittvor()
  44.         r=r+1
  45.         if r==l+1 then
  46.             fackel()
  47.             r=1
  48.         end
  49.     end
  50. end
  51.  
  52. function fackel()  
  53.     if turtle.getItemCount(16)==0 then  --Überprüft ob Fackel in Slot 16 ist
  54.     else    --Wenn Fackel da ist wird Fackel gesetzt
  55.         turnAround()
  56.         turtle.select(16)
  57.         turtle.place()
  58.         turnAround()
  59.     end
  60. end
  61.  
  62. function ablegen()  --Legt komplettes Inventar außer den Fackelslot ab
  63.     for d=1,15 do
  64.         turtle.select(d)
  65.         turtle.drop(64)
  66.     end
  67. end
  68.  
  69. while turtle.getFuelLevel()<200 do
  70.  shell.run("clear")
  71.  turtle.select(15)
  72.  term.setTextColor(colors.red)
  73.  print("Zu wenig Treibstoff!!!\n")
  74.  term.setTextColor(colors.white)
  75.  print("Fuellevel: ",turtle.getFuelLevel())
  76.  print("Bitte fuehren Sie Treibstoff in das dick umrandete Feld ein")
  77.  turtle.refuel(64)
  78.  sleep(0.5)
  79. end
  80. shell.run("clear")
  81. turtle.select(16)
  82. b=1
  83.  
  84. print("Zum benutzen des Strip Programms wird eine Kiste und Fackeln benoetigt.\n")
  85. print("Vor Beginn stelle die Kiste hinter die Turtle.")
  86. print("Wenn vorhanden legen Sie Fackeln in das dick umrandete Feld.\n")
  87. print("Aktuelles Fuellevel: ",turtle.getFuelLevel(),"\n")
  88. print("Druecke Enter um fortzufahren")
  89. read()
  90. shell.run("clear")
  91.  
  92.  
  93. print("Wie viele Gaenge?")  --Abfrage nach Ganganzahl
  94. f=tonumber(read())
  95.  
  96. print("Wie lang sollen die Gaenge sein?")       --Abfrage nach Ganglänge
  97. g=read()
  98.  
  99. print("Abstand der Fackeln?")   --Abfrage nach dem Abstand der Fackeln
  100. l=read()
  101. r=1
  102. print("Nach wie vielen Gaengen soll entleert werden?")      --Abfrage nach der entleerung
  103. k=read()
  104.  
  105.  
  106. shell.run("clear")
  107.  
  108. for a=1,f do            --Hauptprogramm
  109.     move3vor()
  110.     turtle.turnLeft()
  111.     gang()      --Linker Gang
  112.     gang()      --Rechter Gang
  113.     turtle.turnRight()
  114.     b=b+1
  115.  if turtle.getFuelLevel()<200 then
  116.   turnAround()
  117.   for c=a,1,-1 do
  118.    move3vor()
  119.   end
  120.   while turtle.getFuelLevel()<200 do
  121.    shell.run("clear")
  122.    turtle.select(15)
  123.    print("Kein Treibstoffmehr!\n")
  124.    print("Bitte fuehren SieTreibstoff links neben dem Fackelslot rein (Slot 15)")
  125.    turtle.refuel(64)
  126.    sleep(0.5)
  127.   end
  128.   turnAround()
  129.   for c=1,a do
  130.    move3vor()
  131.   end
  132.  end  
  133.     if a==f then    --Wenn Ende dann zurück zum Ausgang
  134.         turnAround()
  135.         for c=a ,1,-1 do
  136.             move3vor()
  137.         end
  138.         ablegen()
  139.  
  140.     else
  141.         if b==k+1 then      --Fährt zurück zur Kiste
  142.             turnAround()
  143.             for c=a,1,-1 do
  144.                 move3vor()
  145.             end
  146.             ablegen()
  147.             turnAround()
  148.             for c=1,a do
  149.                 move3vor()
  150.                 b=1
  151.             end
  152.         end
  153.     end
  154. end
  155.  
  156. turnAround()
  157. print("Programmende Strip")
  158. print("Erwarte neue Befehle")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement