Advertisement
Guest User

STRIP MINE

a guest
Aug 9th, 2019
3,427
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 36.17 KB | None | 0 0
  1. -- ** Stripmining Programm **
  2. -- ** © 2013 SemOnLP       **
  3. -- **************************
  4. -- Changelog
  5. -- 09.09.13 - V1.0 = Veroeffentlicht
  6. -- 12.02.14 - V2.0 = Einstellungen speichern, neue Anzeige
  7. -- 23.07.14 - V2.1 = Fehler beim Fackeln setzten im Seitengang
  8.  
  9. --start: block der verhindert das der hautpfad unterborchen wird
  10. function Sicherheitspfad()
  11.     if turtle.detectDown() == false then -- wen kein block unter der turel ist
  12.         turtle.select(1) -- slot 1 auswaehlen
  13.         turtle.placeDown() -- und unter die turel setzten
  14.     end
  15. end
  16. --end: block der verhindert das der hautpfad unterborchen wird
  17.  
  18. --start: hier wird der Hauptgang gegraben
  19. function Mittelgang()
  20.     NachVorne() -- 1 block nach vorne mit der pruefung ob die Turtel fahren konnte
  21.     Sicherheitspfad() -- wird nur im Hauptgang gemacht, prueft ob unter der Turtel ein Block ist wen nein setzt sie einen aus slot 1
  22.     KiesUp() -- haut den block uebersich weg, koennt sein das dan noch kies nach faellt
  23.  
  24.     NachVorne() -- 1 block nach vorne mit der pruefung ob die Turtel fahren konnte
  25.     Sicherheitspfad() -- wird nur im Hauptgang gemacht, prueft ob unter der Turtel ein Block ist wen nein setzt sie einen aus slot 1
  26.     KiesUp() -- haut den block uebersich weg, koennt sein das dan noch kies nach faellt
  27.  
  28.     Fackel("mitte") -- fackel auf der rechten seite setzten
  29.     NachVorne() -- 1 block nach vorne mit der pruefung ob die Turtel fahren konnte
  30.     Sicherheitspfad() -- wird nur im Hauptgang gemacht, prueft ob unter der Turtel ein Block ist wen nein setzt sie einen aus slot 1
  31.     KiesUp() -- haut den block uebersich weg, koennt sein das dan noch kies nach faellt
  32. end
  33. --end: hier wird der Hauptgang gegraben
  34.  
  35. --start: baut einen Seitengang
  36. function Seitengang()
  37.     for i = 1, laengeSeitengang, 1 do -- grabe dich in den gang
  38.         NachVorne() -- 1 block nach vorne mit der pruefung ob die Turel fahren konnte
  39.         KiesUp() -- haut den block uebersich weg, koennt sein das dan noch kies nach faellt
  40.     end
  41.    
  42.     turtle.turnRight() -- umdrehen
  43.     turtle.turnRight() -- umdrehen
  44.     for i = laengeSeitengang, 1, -1 do -- komm zur mitte zurueck
  45.         if (i % fackelnSeitengang == 0 and fackelnSeitengang ~= 0) then -- wenn fackeln gesetzt werden sollen und diese dem abastand entsprechen
  46.             Fackel("seite")
  47.         end
  48.         NachVorne() -- 1 block nach vorne mit der pruefung ob die Turel fahren konnte
  49.     end
  50. end
  51. --end: baut einen Seitengang
  52.  
  53. --start: geht 1 block nach vorne
  54. function NachVorne()
  55.     while turtle.detect() do -- prueft ob ein block vor der turel ist
  56.         turtle.dig()
  57.         sleep(0.25)
  58.     end
  59.    
  60.     while(turtle.forward() == false) do --wenn er nicht fahren konnte
  61.         turtle.dig()  -- einmal abbauen
  62.         turtle.attack() -- einmal zuschlagen
  63.     end
  64. end
  65. --end: geht 1 block nach vorne
  66.  
  67. --start: beim abbauen uebersich ob kies nachfaell, wen ja solange abbauen bis nichts mehr kommt
  68. function KiesUp()
  69.     while turtle.detectUp() do -- prueft ob ueber ihm noch etwas ist
  70.         turtle.digUp() -- haut den block ueber sich ab
  71.         sleep(0.25) -- wartet, funktioniert nur wen der block direck nachfaellt ist ein block
  72.     end
  73. end
  74. --end: beim abbauen uebersich ob kis nachfaell, wen ja solange abbauen bis nichts mehr kommt
  75.  
  76. --start: plaziert die Fackel
  77. function Fackel(gang) -- ueber gibt gang oder seite
  78.     if (fakelanzahl1 ~= 0) then
  79.         turtle.select(slotFackeln1) -- waehlt die Fackeln aus
  80.         fakelanzahl1 = fakelanzahl1 - 1
  81.     elseif (fakelanzahl2 ~= 0) then
  82.         slotFackeln1 = 0 -- setzt die slotz zurueck zum entleeren der kiste
  83.         turtle.select(slotFackeln2) -- waehlt die Fackeln aus
  84.         fakelanzahl2 = fakelanzahl2 - 1
  85.     elseif (fakelanzahl3 ~= 0) then
  86.         slotFackeln1 = 0 -- setzt die slotz zurueck zum entleeren der kiste
  87.         slotFackeln2 = 0 -- setzt die slotz zurueck zum entleeren der kiste
  88.         turtle.select(slotFackeln3) -- waehlt die Fackeln aus
  89.         fakelanzahl3 = fakelanzahl3 - 1
  90.     else
  91.         slotFackeln1 = 0 -- setzt die slotz zurueck zum entleeren der kiste
  92.         slotFackeln2 = 0 -- setzt die slotz zurueck zum entleeren der kiste
  93.         slotFackeln3 = 0 -- setzt die slotz zurueck zum entleeren der kiste
  94.         return -- keine fackeln mehr mach nichts
  95.     end
  96.    
  97.     if (gang == "seite") then
  98.             turtle.placeUp() -- plaziert die Fackel ueber sich
  99.             turtle.select(1) -- waehlt wieder slot 1 oder den ersten der dan frei ist
  100.     else   
  101.         if (turtle.back()) then-- plaziert die fackel wen er 1 block zurueck fahren konnte
  102.             turtle.placeUp() -- plaziert die Fackel ueber sich
  103.             NachVorne() -- geht wieder nach vorne
  104.         end
  105.     end
  106.     turtle.select(1) -- waehlt wieder slot 1 oder den ersten der dan frei ist
  107. end
  108. --end: plaziert die Fackel
  109.  
  110. --start: Steuerung fuer Hauptgang und Seitengang
  111. function Strip()
  112.     Mittelgang() -- hier wird der Hauptgang gegraben
  113.     turtle.turnRight() -- startposition fuer die linke seite
  114.     Seitengang() -- graebt den ersten seitengang und kommt zurueck zur mitte
  115.     Seitengang() -- graebt den zweiten seitengang und kommt zurueck zur mitte
  116. end
  117. --end: Steuerung fuer Hauptgang und Seitengang
  118.  
  119. --start: entleere das inventar in die endertruhe
  120. function enderTruhe()
  121.     if (endertruhe == 0) then -- wen keine kiste ausgewaehlt ist nicht in endertruhe leeren
  122.         return
  123.     end
  124.     while turtle.detect() do -- die Truhe braucht platz um hingestell werden zu koennen also wird solange gegraben bis platz da ist
  125.         turtle.dig()
  126.         sleep(0.5)
  127.     end
  128.     turtle.select(slotEndertruhe) -- Truhe auswaehlen
  129.     turtle.place() -- Truhe plazieren
  130.     for i = 1,16 do -- k dient hier als zaehler um jeden platz leer zu machen
  131.         turtle.select(i)
  132.         if (turtle.getItemCount(i) == 0 and i ~= slotEndertruhe and i ~= slotFackeln1 and i ~= slotFackeln2 and i ~= slotFackeln3) then -- stop beachte die fackeln umzusetzend
  133.             break -- hier wird abgebrochen wenn der slot leer ist
  134.                   -- eine schneller entladung der kist ist somit gegeben ^^
  135.         elseif (turtle.getItemCount(i) ~= 0 and i ~= slotEndertruhe and i ~= slotFackeln1 and i ~= slotFackeln2 and i ~= slotFackeln3) then
  136.             turtle.drop() -- legt die items in aus dem slot in die truhe
  137.         end
  138.     end
  139.     --turtle.select(slotEndertruhe) -- waehlt slot 15 aus
  140.     --turtle.dig() -- und nimmt die truhe wieder auf
  141.     turtle.select(1) -- waehlt wieder slot 1 oder den ersten der dan frei ist
  142. end
  143. --end: entleere das inventar in die endertruhe
  144.  
  145. --start: graebt den Tunnel solange wie eingegeben wurde
  146. function tunnel()
  147.     statusBildschirm(0) -- bereinigt den Bildschirm beim Start des Tunnelgrabens
  148.     kistenabstand = entleerungEndertruhe  -- nach diesem gang wird das 1 mal die truhe geleert
  149.     for aktuellergang = 1, ganganzahl, 1 do -- schleife die soviele gaenge macht wie eingeben
  150.         Strip() -- hier wird der hauptgang mit einem Tunnel links und rechts gegraben
  151.         -- entwerder nur nach links drehen oder nach links drehen und die kiste setzten
  152.         if (aktuellergang  == kistenabstand and aktuellergang ~= ganganzahl) then
  153.             turtle.turnLeft() -- gehe einmal nach links
  154.             kistenabstand = kistenabstand + entleerungEndertruhe -- kistenabstand wieder 3 hoch
  155.             enderTruhe() -- entleer die in die Enertrue
  156.         elseif (aktuellergang  == ganganzahl) then -- letzter gang nach rechts gehen und in die Truhe entlehren
  157.             turtle.turnRight() -- zurueck in gang drehen fuer die fahrt zur Ausgangsposition
  158.             enderTruhe() -- es war der letzte gang, sprich stell die kist das letzte mal und entleeren
  159.         else
  160.             turtle.turnLeft() -- gehe nur einmal nach lings und mach mit dem hauptgan weiter
  161.         end
  162.         statusBildschirm(aktuellergang) -- Aktuallisierung des Bildschirms wenn ein Gang gegraben wurde (aktuellergang muss uebergeben werden)
  163.     end
  164. end
  165. --end: graebt den Tunnel solange wie eingegeben wurde
  166.  
  167. --start: Zurueck zur Ausgangsposition
  168. function back()
  169.     for a = 1,ganganzahl * 3 do
  170.         NachVorne()
  171.     end
  172. end
  173. --end: Zurueck zur Ausgangsposition
  174.  
  175. --start: Aktuallisierung des Bildschirms wenn ein Gang gegraben wurde
  176. function statusBildschirm(aktuellergang)
  177.     -- start: Zeigt das Fuel-Level an
  178.     term.setCursorPos( 1, 3)
  179.     term.clearLine()
  180.     fuellevel = turtle.getFuelLevel()
  181.     print("Fuel-Level: " .. fuellevel)
  182.    
  183.     term.setCursorPos( 1, 4)
  184.     term.clearLine()
  185.     if (endertruhe == 1) then
  186.         print("Endertruhe: Ja")
  187.     else
  188.         print("Endertruhe: Nein")
  189.     end    
  190.    
  191.     -- start: Zeigt die anzahl der Fakeln an
  192.     term.setCursorPos( 1, 5)
  193.     term.clearLine()
  194.     fackeln = fakelanzahl1 + fakelanzahl2 + fakelanzahl3
  195.     print("Fackeln   : " .. fackeln)
  196.    
  197.     term.setCursorPos(1,7)
  198.     term.clearLine()
  199.     if (aktuellergang > 0) then
  200.         print("Gang " .. aktuellergang .. " von " .. ganganzahl .. " wurde fertiggestellt!")
  201.     else -- wen das programm startet
  202.         term.setCursorPos(1,8)
  203.         term.clearLine()
  204.         term.setCursorPos(1,9)
  205.         term.clearLine()
  206.         term.setCursorPos(1,10)
  207.         term.clearLine()
  208.         term.setCursorPos(1,12)
  209.         term.clearLine()
  210.         turtle.select(1) -- waehlt zum start slot 1 aus
  211.     end
  212. end
  213. --end: Aktuallisierung des Bildschirms wenn ein Gang gegraben wurde
  214.  
  215.  
  216. --START: Programmsteuerung eingabe
  217. --start: Aktuellisuerung des Status fuer Fakeln, Endertruhe, und Fullevel
  218. local function checkStatus()
  219.     slotsAnzeige = {"_","_","_","_","_","_","_","_","_","_","_","_","_","_","_","_"}
  220.     slotsAnzeige[slotEndertruhe] = "e"
  221.     slotsAnzeige[slotFackeln1] = "f"
  222.     slotsAnzeige[slotFackeln2] = "f"
  223.     slotsAnzeige[slotFackeln3] = "f"
  224.     slotsAnzeige[slotAutofuel] = "a"
  225.    
  226.     local blink = 0 -- wird benoetigt fuer das blinken der Warnung das das Fuellevel nidrig ist
  227.     while true do --prueft endlos den status
  228.         time() -- zeit die Uhrzeit oben rechts an
  229.  
  230.         -- start: Zeigt das Fuel-Level an
  231.         term.setCursorPos( 1, 3)
  232.         term.clearLine()
  233.         fuellevel = turtle.getFuelLevel()
  234.         if (fuellevel < 500 and blink == 0) then
  235.             print("Fuel-Level: " .. fuellevel .. " !! Warnung !!")
  236.             blink = 1 -- setz blinken der Warnung zurueck
  237.         else
  238.             print("Fuel-Level: " .. fuellevel)
  239.             blink = 0 -- setz blinken der Warnung zurueck
  240.         end
  241.         -- end: Zeigt das Fuel-Level an
  242.         -- start: Zeigt die aufladung des Fuel-Level an
  243.         term.setCursorPos( 1, 7)
  244.         term.clearLine()
  245.         term.clearLine()
  246.         ladeeinheiten = turtle.getItemCount(tonumber(slotAutofuel)) -- Einheiten zum Aufladen aus slot 13
  247.         if (ladeeinheiten == 1) then
  248.             print("Hinweis:                       !".. slotsAnzeige[1] .. "!".. slotsAnzeige[2] .. "!".. slotsAnzeige[3] .. "!".. slotsAnzeige[4])
  249.             print("Fuelaufladung um eine Einheit  !".. slotsAnzeige[5] .. "!".. slotsAnzeige[6] .. "!".. slotsAnzeige[7] .. "!".. slotsAnzeige[8])
  250.             print("                               !".. slotsAnzeige[9] .. "!".. slotsAnzeige[10] .. "!".. slotsAnzeige[11] .. "!".. slotsAnzeige[12])
  251.             print("                               !".. slotsAnzeige[13] .. "!".. slotsAnzeige[14] .. "!".. slotsAnzeige[15] .. "!".. slotsAnzeige[16])
  252.         elseif (ladeeinheiten > 9) then
  253.             print("Hinweis:                       !".. slotsAnzeige[1] .. "!".. slotsAnzeige[2] .. "!".. slotsAnzeige[3] .. "!".. slotsAnzeige[4])
  254.             print("Fuelaufladung um " .. ladeeinheiten .. " Einheiten  !".. slotsAnzeige[5] .. "!".. slotsAnzeige[6] .. "!".. slotsAnzeige[7] .. "!".. slotsAnzeige[8])
  255.             print("                               !".. slotsAnzeige[9] .. "!".. slotsAnzeige[10] .. "!".. slotsAnzeige[11] .. "!".. slotsAnzeige[12])
  256.             print("                               !".. slotsAnzeige[13] .. "!".. slotsAnzeige[14] .. "!".. slotsAnzeige[15] .. "!".. slotsAnzeige[16])
  257.         elseif (ladeeinheiten > 1) then
  258.             print("Hinweis:                       !".. slotsAnzeige[1] .. "!".. slotsAnzeige[2] .. "!".. slotsAnzeige[3] .. "!".. slotsAnzeige[4])
  259.             print("Fuelaufladung um " .. ladeeinheiten .. " Einheiten   !".. slotsAnzeige[5] .. "!".. slotsAnzeige[6] .. "!".. slotsAnzeige[7] .. "!".. slotsAnzeige[8])
  260.             print("                               !".. slotsAnzeige[9] .. "!".. slotsAnzeige[10] .. "!".. slotsAnzeige[11] .. "!".. slotsAnzeige[12])
  261.             print("                               !".. slotsAnzeige[13] .. "!".. slotsAnzeige[14] .. "!".. slotsAnzeige[15] .. "!".. slotsAnzeige[16])
  262.         else
  263.             print("                               !".. slotsAnzeige[1] .. "!".. slotsAnzeige[2] .. "!".. slotsAnzeige[3] .. "!".. slotsAnzeige[4])
  264.             print("                               !".. slotsAnzeige[5] .. "!".. slotsAnzeige[6] .. "!".. slotsAnzeige[7] .. "!".. slotsAnzeige[8])
  265.             print("                               !".. slotsAnzeige[9] .. "!".. slotsAnzeige[10] .. "!".. slotsAnzeige[11] .. "!".. slotsAnzeige[12])
  266.             print("                               !".. slotsAnzeige[13] .. "!".. slotsAnzeige[14] .. "!".. slotsAnzeige[15] .. "!".. slotsAnzeige[16])
  267.         end
  268.         -- end: Zeigt die aufladung des Fuel-Level an
  269.        
  270.         -- start: Pruefung fuer die Endertruhe
  271.         term.setCursorPos( 1, 4)
  272.         term.clearLine()
  273.         endertruhe = turtle.getItemCount(tonumber(slotEndertruhe))
  274.         if (endertruhe >= 1) then
  275.             print("Endertruhe: Ja")
  276.             endertruhe = 1 --braucht man nicht ist nur zur sicherheit
  277.         else
  278.             print("Endertruhe: Nein")
  279.             endertruhe = 0
  280.         end    
  281.         -- end: Pruefung fuer die Endertruhe
  282.        
  283.         -- start: Zeigt die anzahl der Fakeln an
  284.         term.setCursorPos( 1, 5)
  285.         term.clearLine()
  286.         fackeln = turtle.getItemCount(tonumber(slotFackeln1)) + turtle.getItemCount(tonumber(slotFackeln2)) + turtle.getItemCount(tonumber(slotFackeln3))
  287.         if (fackeln == 0) then
  288.             print("Fackeln   : Keine")
  289.         elseif (fackeln == 1) then
  290.             print("Fackeln   : " .. fackeln .. " (Eingabe 0 = ein Gang)")
  291.         else
  292.             print("Fackeln   : " .. fackeln .. " (Eingabe 0=" .. fackeln .." Gaenge)")
  293.         end
  294.         -- end: Zeigt die anzahl der Fakeln an
  295.        
  296.         term.setCursorPos(38,3)
  297.         print("!a")
  298.         term.setCursorPos(38,4)
  299.         print("!e")
  300.         term.setCursorPos(38,5)
  301.         print("!f")
  302.         term.setCursorPos(36, 12) -- setzt angezeigte curser zurueck zur eingabe
  303.         sleep(0.4) -- minecraft minute dauert 0.8 Sekunden
  304.     end
  305. end
  306. --end: Aktuellisuerung des Status fuer Fakeln, Endertruhe, und Fullevel
  307.  
  308. --start: Eingabe der Fackeln und Pruefung ob 0 oder zwischen 1 und 999 oder einstellungen
  309. local function eingabeTunnellaenge()
  310.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  311.         term.setCursorPos(1, 12) -- setzt den curser hier her
  312.         term.clearLine() -- loescht eventuell den Hilfetext
  313.         term.setCursorPos(1, 12) -- setzt den curser hier her
  314.         print("Anzahl Gaenge? (e = Einstellungen):") -- anzeige des Hilfetextes
  315.                                
  316.         term.setCursorPos(36, 12) -- setzt position auf eingabe
  317.        
  318.         local inputstring = read() -- auswertung der eingabe
  319.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  320.             ganganzahl = tonumber(inputstring) --macht aus dem Strin ein zahl
  321.             if (ganganzahl >= 0 and ganganzahl <= 999) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  322.                 if (ganganzahl == 0) then
  323.                     ganganzahl = fackeln
  324.                 end
  325.                 einstellung = 0
  326.                 return -- wenn alles ok ist, beende die eingabe
  327.             end
  328.         end
  329.  
  330.         if (inputstring == "e") then
  331.             einstellung = 1
  332.             return -- einstellung aender
  333.         else
  334.             term.setCursorPos(1, 12) -- setzt den curser hier her
  335.             term.clearLine()
  336.             print("0 = Fakelanzahl oder 1-999 moeglich")
  337.             sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  338.         end
  339.     end
  340. end
  341. --end: Eingabe der Fackeln und Pruefung ob 0 oder zwischen 1 und 999 oder einstellungen
  342.  
  343. --start: eingabe der einstellungen fuer das programm
  344. local function einstellungen()
  345.     for i = 3, 10, 1 do -- loesch den bilschirm ab der dritten zeile
  346.         term.setCursorPos(1,i) -- zeile fuer anzeige bereinigen
  347.         term.clearLine() -- zeile fuer anzeige bereinigen
  348.     end
  349.    
  350.     term.setCursorPos(1,12) -- zeile fuer anzeige bereinigen
  351.     term.clearLine() -- zeile fuer anzeige bereinigen
  352.    
  353.    
  354.     -- anzeige fuer die einstellungen
  355.     term.setCursorPos(1, 3) -- setzt den curser in zeile 3
  356.     print("Slot Endertruhe        : " .. slotEndertruhe) -- anzeige des Hilfetextes
  357.     term.setCursorPos(1, 4) -- setzt den curser in zeile 3
  358.     print("Slot eins fuer Fackeln : " .. slotFackeln1) -- anzeige des Hilfetextes
  359.     term.setCursorPos(1, 5) -- setzt den curser in zeile 3
  360.     print("Slot zwei fuer Fackeln : " .. slotFackeln2) -- anzeige des Hilfetextes
  361.     term.setCursorPos(1, 6) -- setzt den curser in zeile 3
  362.     print("Slot drei fuer Fackeln : " .. slotFackeln3) -- anzeige des Hilfetextes
  363.     term.setCursorPos(1, 7) -- setzt den curser in zeile 3
  364.     print("Slot Autofuelaufladung : " .. slotAutofuel) -- anzeige des Hilfetextes
  365.     term.setCursorPos(1, 8) -- setzt den curser in zeile 3
  366.     print("Laenge der Seitengaenge: " .. laengeSeitengang) -- anzeige des Hilfetextes
  367.     term.setCursorPos(1, 9) -- setzt den curser in zeile 3
  368.     print("Fakeln in Seitengaenge : " .. fackelnSeitengang) -- anzeige des Hilfetextes
  369.     term.setCursorPos(1, 10) -- setzt den curser in zeile 3
  370.     print("Entleerung Enderchest  : " .. entleerungEndertruhe) -- anzeige des Hilfetextes
  371.    
  372.     corsor = 3 -- eingabeposition, wird gebraucht bei der zeitanzeige
  373.     einstellungenEndertruhe()
  374.     term.setCursorPos(1, 3) -- setzt den curser in zeile 3
  375.     print("Slot Endertruhe        : " .. slotEndertruhe) -- anzeige des Hilfetextes
  376.    
  377.     corsor = 4 -- eingabeposition, wird gebraucht bei der zeitanzeige
  378.     einstellungenFackeln1()
  379.     term.setCursorPos(1, 4) -- setzt den curser in zeile 3
  380.     print("Slot eins fuer Fackeln : " .. slotFackeln1) -- anzeige des Hilfetextes
  381.    
  382.     corsor = 5 -- eingabeposition, wird gebraucht bei der zeitanzeige
  383.     einstellungenFackeln2()
  384.     term.setCursorPos(1, 5) -- setzt den curser in zeile 3
  385.     print("Slot zwei fuer Fackeln : " .. slotFackeln2) -- anzeige des Hilfetextes
  386.    
  387.     corsor = 6 -- eingabeposition, wird gebraucht bei der zeitanzeige
  388.     einstellungenFackeln3()
  389.     term.setCursorPos(1, 6) -- setzt den curser in zeile 3
  390.     print("Slot drei fuer Fackeln : " .. slotFackeln3) -- anzeige des Hilfetextes
  391.    
  392.     corsor = 7 -- eingabeposition, wird gebraucht bei der zeitanzeige
  393.     einstellungenAutofuel()
  394.     term.setCursorPos(1, 7) -- setzt den curser in zeile 3
  395.     print("Slot Autofuelaufladung : " .. slotAutofuel) -- anzeige des Hilfetextes
  396.    
  397.     corsor = 8 -- eingabeposition, wird gebraucht bei der zeitanzeige
  398.     einstellungenLaengeSeitengang()
  399.     term.setCursorPos(1, 8) -- setzt den curser in zeile 3
  400.     print("Laenge der Seitengaenge: " .. laengeSeitengang) -- anzeige des Hilfetextes
  401.    
  402.     corsor = 9 -- eingabeposition, wird gebraucht bei der zeitanzeige
  403.     einstellungenFackelnSeitengang()
  404.     term.setCursorPos(1, 9) -- setzt den curser in zeile 3
  405.     print("Fakeln in Seitengaenge : " .. fackelnSeitengang) -- anzeige des Hilfetextes
  406.    
  407.     corsor = 10 -- eingabeposition, wird gebraucht bei der zeitanzeige
  408.     einstellungenEntleerungEnderchest()
  409.     term.setCursorPos(1, 10) -- setzt den curser in zeile 3
  410.     print("Entleerung Enderchest  : " .. entleerungEndertruhe) -- anzeige des Hilfetextes
  411. end
  412.  
  413. --end: eingabe der einstellungen fuer das programm
  414.  
  415. --start: eingabe der einstellungen fuer das programm
  416. function einstellungenEndertruhe()
  417.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  418.         term.setCursorPos(1, 12) -- setzt den curser hier her
  419.         term.clearLine() -- loescht eventuell den Hilfetext
  420.         term.setCursorPos(1, 12) -- setzt den curser hier her
  421.         print("Slot fuer die Endertruhe") -- anzeige des Hilfetextes
  422.        
  423.         term.setCursorPos(1, 3) -- setzt den curser in zeile 3
  424.         term.clearLine()
  425.         print("Slot Endertruhe        :") -- anzeige des Hilfetextes
  426.         term.setCursorPos(26, 3) -- setzt position auf eingabe
  427.        
  428.        
  429.         local inputstring1 = read() -- auswertung der eingabe
  430.         if (tonumber(inputstring1) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  431.             slotEndertruhe = tonumber(inputstring1) --macht aus dem Strin ein zahl
  432.             if (slotEndertruhe >= 0 and slotEndertruhe <= 16) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  433.                 if (slotEndertruhe == 0) then
  434.                     slotEndertruhe = 15
  435.                 end
  436.                 return -- wenn alles ok ist, beende die eingabe
  437.             end
  438.         end
  439.  
  440.         term.setCursorPos(1, 12) -- setzt den curser hier her
  441.         term.clearLine()
  442.         print("Nur Slot 1 bis 16 moeglich, 0=Standard")
  443.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  444.     end
  445. end
  446.  
  447. --start: eingabe der einstellungen fuer das programm
  448. function einstellungenFackeln1()
  449.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  450.         gleichslot = 0 -- erstmal keine ueberlagerung
  451.         term.setCursorPos(1, 12) -- setzt den curser hier her
  452.         term.clearLine() -- loescht eventuell den Hilfetext
  453.         term.setCursorPos(1, 12) -- setzt den curser hier her
  454.         print("Slot eins fuer die Fackeln") -- anzeige des Hilfetextes
  455.        
  456.         term.setCursorPos(1, 4) -- setzt den curser in zeile 3
  457.         term.clearLine()
  458.         print("Slot eins fuer Fackeln :") -- anzeige des Hilfetextes
  459.         term.setCursorPos(26, 4) -- setzt position auf eingabe
  460.        
  461.        
  462.         local inputstring = read() -- auswertung der eingabe
  463.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  464.             slotFackeln1 = tonumber(inputstring) --macht aus dem Strin ein zahl
  465.             if (slotFackeln1 >= 0 and slotFackeln1 <= 16) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  466.                 if (slotFackeln1 == 0) then
  467.                     slotFackeln1 = 16
  468.                 end
  469.  
  470.                 if (slotFackeln1 ~= slotEndertruhe) then -- gleicher slot wie die endertruhe
  471.                     return -- wenn alles ok ist, beende die eingabe
  472.                 else
  473.                     gleichslot = 1 -- wen sich 2 slots ueberlagern wuerden
  474.                 end
  475.             end
  476.         end
  477.  
  478.  
  479.         term.setCursorPos(1, 12) -- setzt den curser hier her
  480.         term.clearLine()
  481.         if (gleichslot == 1) then
  482.             print("Slot bereits in Verwendung")
  483.         else
  484.             print("Nur Slot 1 bis 16 moeglich, 0=Standard")
  485.         end
  486.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  487.     end
  488. end
  489. --end:
  490. --start: eingabe der einstellungen fuer das programm
  491. function einstellungenFackeln2()
  492.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  493.         gleichslot = 0 -- erstmal keine ueberlagerung
  494.         term.setCursorPos(1, 12) -- setzt den curser hier her
  495.         term.clearLine() -- loescht eventuell den Hilfetext
  496.         term.setCursorPos(1, 12) -- setzt den curser hier her
  497.         print("Slot zwei fuer die Fackeln") -- anzeige des Hilfetextes
  498.        
  499.         term.setCursorPos(1, 5) -- setzt den curser in zeile 3
  500.         term.clearLine()
  501.         print("Slot zwei fuer Fackeln :") -- anzeige des Hilfetextes
  502.         term.setCursorPos(26, 5) -- setzt position auf eingabe
  503.        
  504.        
  505.         local inputstring = read() -- auswertung der eingabe
  506.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  507.             slotFackeln2 = tonumber(inputstring) --macht aus dem Strin ein zahl
  508.             if (slotFackeln2 >= 0 and slotFackeln2 <= 16) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  509.                 if (slotFackeln2 == 0) then
  510.                     slotFackeln2 = 12
  511.                 end
  512.                
  513.                 if (slotFackeln2 ~= slotEndertruhe and slotFackeln2 ~= slotFackeln1) then -- gleicher slot wie die endertruhe
  514.                     return -- wenn alles ok ist, beende die eingabe
  515.                 else
  516.                     gleichslot = 1 -- wen sich 2 slots ueberlagern wuerden
  517.                 end
  518.             end
  519.         end
  520.  
  521.         term.setCursorPos(1, 12) -- setzt den curser hier her
  522.         term.clearLine()
  523.         if (gleichslot == 1) then
  524.             print("Slot bereits in Verwendung")
  525.         else
  526.             print("Nur Slot 1 bis 16 moeglich, 0=Standard")
  527.         end
  528.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  529.     end
  530. end
  531. --end:
  532. --start: eingabe der einstellungen fuer das programm
  533. function einstellungenFackeln3()
  534.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  535.         term.setCursorPos(1, 12) -- setzt den curser hier her
  536.         term.clearLine() -- loescht eventuell den Hilfetext
  537.         term.setCursorPos(1, 12) -- setzt den curser hier her
  538.         print("Slot drei fuer die Fackeln") -- anzeige des Hilfetextes
  539.        
  540.         term.setCursorPos(1, 6) -- setzt den curser in zeile 3
  541.         term.clearLine()
  542.         print("Slot drei fuer Fackeln :") -- anzeige des Hilfetextes
  543.         term.setCursorPos(26, 6) -- setzt position auf eingabe
  544.        
  545.        
  546.         local inputstring = read() -- auswertung der eingabe
  547.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  548.             slotFackeln3 = tonumber(inputstring) --macht aus dem Strin ein zahl
  549.             if (slotFackeln3 >= 0 and slotFackeln3 <= 16) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  550.                 if (slotFackeln3 == 0) then
  551.                     slotFackeln3 = 8
  552.                 end
  553.                 if (slotFackeln3 ~= slotEndertruhe and slotFackeln3 ~= slotFackeln1 and slotFackeln3 ~= slotFackeln2) then -- gleicher slot wie die endertruhe
  554.                     return -- wenn alles ok ist, beende die eingabe
  555.                 else
  556.                     gleichslot = 1 -- wen sich 2 slots ueberlagern wuerden
  557.                 end
  558.             end
  559.         end
  560.  
  561.         term.setCursorPos(1, 12) -- setzt den curser hier her
  562.         term.clearLine()
  563.         if (gleichslot == 1) then
  564.             print("Slot bereits in Verwendung")
  565.         else
  566.             print("Nur Slot 1 bis 16 moeglich, 0=Standard")
  567.         end
  568.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  569.     end
  570. end
  571. --end:
  572.  
  573. --start: eingabe der einstellungen fuer das programm
  574. function einstellungenAutofuel()
  575.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  576.         term.setCursorPos(1, 12) -- setzt den curser hier her
  577.         term.clearLine() -- loescht eventuell den Hilfetext
  578.         term.setCursorPos(1, 12) -- setzt den curser hier her
  579.         print("Slot fuer Autofuelaufladung beim Start") -- anzeige des Hilfetextes
  580.        
  581.         term.setCursorPos(1, 7) -- setzt den curser in zeile 3
  582.         term.clearLine()
  583.         print("Slot Autofuelaufladung :") -- anzeige des Hilfetextes
  584.         term.setCursorPos(26, 7) -- setzt position auf eingabe
  585.        
  586.        
  587.         local inputstring = read() -- auswertung der eingabe
  588.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  589.             slotAutofuel = tonumber(inputstring) --macht aus dem Strin ein zahl
  590.             if (slotAutofuel >= 0 and slotAutofuel <= 16) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  591.                 if (slotAutofuel == 0) then
  592.                     slotAutofuel = 13
  593.                 end
  594.                 if (slotAutofuel ~= slotEndertruhe and slotAutofuel ~= slotFackeln1 and slotAutofuel ~= slotFackeln2 and slotAutofuel ~= slotFackeln3) then -- gleicher slot wie die endertruhe
  595.                     return -- wenn alles ok ist, beende die eingabe
  596.                 else
  597.                     gleichslot = 1 -- wen sich 2 slots ueberlagern wuerden
  598.                 end
  599.             end
  600.         end
  601.  
  602.         term.setCursorPos(1, 12) -- setzt den curser hier her
  603.         term.clearLine()
  604.         if (gleichslot == 1) then
  605.             print("Slot bereits in Verwendung")
  606.         else
  607.             print("Nur Slot 1 bis 16 moeglich, 0=Standard")
  608.         end
  609.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  610.     end
  611. end
  612. --end:
  613.  
  614.  
  615. --start: eingabe der einstellungen fuer das programm
  616. function einstellungenLaengeSeitengang()
  617.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  618.         term.setCursorPos(1, 12) -- setzt den curser hier her
  619.         term.clearLine() -- loescht eventuell den Hilfetext
  620.         term.setCursorPos(1, 12) -- setzt den curser hier her
  621.         print("Laenge eines Seitenganges") -- anzeige des Hilfetextes
  622.        
  623.         term.setCursorPos(1, 8) -- setzt den curser in zeile 3
  624.         term.clearLine()
  625.         print("Laenge der Seitengaenge:") -- anzeige des Hilfetextes
  626.         term.setCursorPos(26, 8) -- setzt position auf eingabe
  627.        
  628.        
  629.         local inputstring = read() -- auswertung der eingabe
  630.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  631.             laengeSeitengang = tonumber(inputstring) --macht aus dem Strin ein zahl
  632.             if (laengeSeitengang >= 0 and laengeSeitengang <= 999) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  633.                 if (laengeSeitengang == 0) then
  634.                     laengeSeitengang = 5
  635.                 end
  636.                 return -- wenn alles ok ist, beende die eingabe
  637.             end
  638.         end
  639.  
  640.         term.setCursorPos(1, 12) -- setzt den curser hier her
  641.         term.clearLine()
  642.         print("Nur 0 bis 999 moeglich, 0=Standard")
  643.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  644.     end
  645. end
  646. --end:
  647.  
  648. --start: eingabe der einstellungen fuer das programm
  649. function einstellungenFackelnSeitengang()
  650.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  651.         term.setCursorPos(1, 12) -- setzt den curser hier her
  652.         term.clearLine() -- loescht eventuell den Hilfetext
  653.         term.setCursorPos(1, 12) -- setzt den curser hier her
  654.         print("Abstand zwischen Fakeln im Seitengang") -- anzeige des Hilfetextes
  655.        
  656.         term.setCursorPos(1, 9) -- setzt den curser in zeile 3
  657.         term.clearLine()
  658.         print("Fakeln in Seitengaenge :") -- anzeige des Hilfetextes
  659.         term.setCursorPos(26, 9) -- setzt position auf eingabe
  660.        
  661.        
  662.         local inputstring = read() -- auswertung der eingabe
  663.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  664.             fackelnSeitengang = tonumber(inputstring) --macht aus dem Strin ein zahl
  665.             if (fackelnSeitengang <= laengeSeitengang) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  666.                 if (fackelnSeitengang == 0) then
  667.                     fackelnSeitengang = 0
  668.                 end
  669.                 return -- wenn alles ok ist, beende die eingabe
  670.             else
  671.                 term.setCursorPos(1, 12) -- setzt den curser hier her
  672.                 term.clearLine()
  673.                 print("Seitenganz waere zu kurz")
  674.                 sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  675.             end
  676.         end
  677.     end
  678. end
  679. --end:
  680.  
  681. --start: eingabe der einstellungen fuer das programm
  682. function einstellungenEntleerungEnderchest()
  683.     while true do -- ergibt eine endlosschleife bis man auf return kommt
  684.         term.setCursorPos(1, 12) -- setzt den curser hier her
  685.         term.clearLine() -- loescht eventuell den Hilfetext
  686.         term.setCursorPos(1, 12) -- setzt den curser hier her
  687.         print("Anzahl Gaenge bis zur leerung") -- anzeige des Hilfetextes
  688.        
  689.         term.setCursorPos(1, 10) -- setzt den curser in zeile 3
  690.         term.clearLine()
  691.         print("Entleerung Enderchest  :") -- anzeige des Hilfetextes
  692.         term.setCursorPos(26, 10) -- setzt position auf eingabe
  693.        
  694.        
  695.         local inputstring = read() -- auswertung der eingabe
  696.         if (tonumber(inputstring) ~= nil) then -- prueft ob eine Zahl eingegeben wurde
  697.             entleerungEndertruhe = tonumber(inputstring) --macht aus dem Strin ein zahl
  698.             if (entleerungEndertruhe >= 0 and entleerungEndertruhe <= 999) then -- wen die zahl zwischen 0 und 999 liegt alles ok
  699.                 if (entleerungEndertruhe == 0) then
  700.                     entleerungEndertruhe = 3 -- standard
  701.                 end
  702.                 return -- wenn alles ok ist, beende die eingabe
  703.             end
  704.         end
  705.  
  706.         term.setCursorPos(1, 12) -- setzt den curser hier her
  707.         term.clearLine()
  708.         print("Nur 0 bis 999 moeglich, 0=Standard")
  709.         sleep(1.5) -- zeit fuer die anzeigt des Hilfetextets
  710.     end
  711. end
  712. --end:
  713.  
  714.  
  715. --start: Uhrzeit und Tag in Minecraft auslesen und anzeigen
  716. function time()
  717.     term.setCursorPos(1, 1) -- position auf Zeit setzten
  718.     local day -- locale Variable fuer den Tag in Minecraft
  719.     local zeit -- locale Variable fuer die Uhrzeit in Minecraft
  720.     day = os.day() -- nicht im Gebrauch!
  721.     zeit = textutils.formatTime(os.time(), true) -- wandelt die anzeige in das 24 Stunden Format
  722.     if (string.len(zeit) == 4) then -- zeit Anzeigt vor oder nach 10 Uhr
  723.         print("Systemhinweis               Zeit:  " .. zeit) -- vor 10 Uhr, es geht um die laenge
  724.     else
  725.         print("Systemhinweis               Zeit: " .. zeit) -- nach 10 Uhr
  726.     end
  727. end
  728. --end: Uhrzeit und Tag in Minecraft auslesen und anzeigen
  729. local function timeshow()
  730.     while true do --prueft endlos den status
  731.         term.setCursorPos(1, 1) -- position auf Zeit setzten
  732.         local day -- locale Variable fuer den Tag in Minecraft
  733.         local zeit -- locale Variable fuer die Uhrzeit in Minecraft
  734.         day = os.day() -- nicht im Gebrauch!
  735.         zeit = textutils.formatTime(os.time(), true) -- wandelt die anzeige in das 24 Stunden Format
  736.         if (string.len(zeit) == 4) then -- zeit Anzeigt vor oder nach 10 Uhr
  737.             print("Einstellungen               Zeit:  " .. zeit) -- vor 10 Uhr, es geht um die laenge
  738.         else
  739.             print("Einstellungen               Zeit: " .. zeit) -- nach 10 Uhr
  740.         end
  741.          
  742.         term.setCursorPos(26, corsor) -- setzt angezeigte curser zurueck zur eingabe
  743.         sleep(0.4) -- minecraft minute dauert 0.8 Sekunden
  744.     end
  745. end
  746.  
  747. --end: Programmsteuerung eingabe
  748.  
  749. --start: bereinigt den Bildschirm und baut das eingabe Fenster auf
  750. function bildschirmStart()
  751.     shell.run("clear") -- löscht allties auf dem Bildschirm
  752.     print("Systemhinweis")
  753.     print("=======================================")
  754.     term.setCursorPos(1,6)
  755.     term.clearLine()
  756.     print("---------------------------------------")
  757.     term.setCursorPos(1,11)
  758.     print("---------------------------------------")
  759. end
  760. --end: bereinigt den Bildschirm und baut das eingabe Fenster auf
  761.  
  762. --start: zeigt an das die Turel fertig sit
  763. function zeigtFertig()
  764.     term.setCursorPos(1,10) -- zeile 10 fuer anzeige bereinigen
  765.     term.clearLine() -- zeile 10 fuer anzeige bereinigen
  766.     print("!!!Fertig - Programm beendet!!!") -- fertig meldung
  767.     term.setCursorPos(1,12) -- letzte zeile bereinigen
  768.     term.clearLine() -- letzte zeile bereinigen
  769. end
  770. --end: zeigt an das die Turel fertig sit
  771.  
  772. function einstellungenSpeichern()
  773.     config = fs.open("strip.conf", "w") -- oeffent die config datei
  774.     config.writeLine("slotEndertruhe       = " .. slotEndertruhe)
  775.     config.writeLine("slotFackeln1         = " .. slotFackeln1)
  776.     config.writeLine("slotFackeln2         = " .. slotFackeln2)
  777.     config.writeLine("slotFackeln3         = " .. slotFackeln3)
  778.     config.writeLine("slotAutofuel         = " .. slotAutofuel)
  779.     config.writeLine("fackelnSeitengang    = " .. fackelnSeitengang)
  780.     config.writeLine("laengeSeitengang     = " .. laengeSeitengang)
  781.     config.writeLine("entleerungEndertruhe = " .. entleerungEndertruhe)
  782.     config.close() -- schließt die einstellungen
  783. end
  784.  
  785.  
  786. function einstellungenLesen()
  787.     config = fs.open("strip.conf", "r")
  788.     if config then
  789.         line = config.readLine()
  790.         slotEndertruhe = tonumber(string.sub(line,24,30))
  791.         line = config.readLine()
  792.         slotFackeln1 = tonumber(string.sub(line,24,30))
  793.         line = config.readLine()
  794.         slotFackeln2 = tonumber(string.sub(line,24,30))
  795.         line = config.readLine()
  796.         slotFackeln3 = tonumber(string.sub(line,24,30))
  797.         line = config.readLine()
  798.         slotAutofuel = tonumber(string.sub(line,24,30))
  799.         line = config.readLine()
  800.         fackelnSeitengang = tonumber(string.sub(line,24,30))
  801.         line = config.readLine()
  802.         laengeSeitengang = tonumber(string.sub(line,24,30))
  803.         line = config.readLine()
  804.         entleerungEndertruhe = tonumber(string.sub(line,24,30))
  805.         config.close()
  806.     else
  807.         slotEndertruhe = 15 -- Slot fuer die Endertruhe
  808.         slotFackeln1 = 16    -- Slot fuer Fakeln 1
  809.         slotFackeln2 = 12    -- Slot fuer Fakeln 2 stop
  810.         slotFackeln3 = 8    -- Slot fuer Fakeln 3 stop
  811.         slotAutofuel = 13    -- Slot fuer Autofuel
  812.         fackelnSeitengang = 0 -- fackeln im seitengang, 0=keine
  813.         laengeSeitengang = 5  -- laenge des seitengangs 0 = 5
  814.         entleerungEndertruhe = 3 --nach wieielen gaengen wird die Endertruhe geleert, Standart 3    stop
  815.     end
  816. end
  817.  
  818.  
  819. --**Hauptprogrammsteuerung
  820. --Setzen der globale Variablen (diese sind ueberall verfuegbar)
  821. endertruhe = 0           -- Endertruhe = nein
  822. fackeln = 0              -- Fackeln = 0
  823. ganganzahl = 0           -- Anzahl Gaenge = 0
  824. fuellevel = 0            -- Fuel-Level = 0
  825. einstellung = 0          -- keine einstellungen vornehmen
  826. slotEndertruhe = 0       -- Slot fuer die Endertruhe
  827. slotFackeln1 = 0         -- Slot fuer Fakeln 1
  828. slotFackeln2 = 0         -- Slot fuer Fakeln 2 stop
  829. slotFackeln3 = 0         -- Slot fuer Fakeln 3 stop
  830. fakelanzahl1 = 0         -- anzahl der fakeln in slot 1 nach dem start
  831. fakelanzahl2 = 0         -- anzahl der fakeln in slot 2 nach dem start
  832. fakelanzahl3 = 0         -- anzahl der fakeln in slot 3 nach dem start
  833. slotAutofuel = 0         -- Slot fuer Autofuel
  834. fackelnSeitengang = 0    -- fackeln im seitengang, 0=keine
  835. laengeSeitengang = 0     -- laenge des seitengangs 0 = 5
  836. entleerungEndertruhe = 0 -- nach wieielen gaengen wird die Endertruhe geleert, Standart 3
  837. slotsAnzeige = {"_","_","_","_","_","_","_","_","_","_","_","_","_","_","_","_"}
  838. corsor = 0               -- line of the cursor
  839. -- bereinigt den Bildschirm und baut das eingabe Fenster auf
  840. bildschirmStart()
  841. einstellungenLesen()
  842. -- fuerht 2 funktionen gleichzeitig aus, eingab und aktuellisuerung der Fakeln, Endertruhe, und Fullevel
  843.  
  844. parallel.waitForAny(eingabeTunnellaenge, checkStatus)
  845. while (einstellung == 1) do
  846.     parallel.waitForAny(einstellungen,timeshow) -- bearbeitung der einstellung
  847.     einstellungenSpeichern()
  848.     bildschirmStart()
  849.     einstellungenLesen()
  850.     parallel.waitForAny(eingabeTunnellaenge, checkStatus)
  851. end
  852.  
  853. --Laed die Turtel vor dem start wieder auf wen etwas in slot 13 abgelegt wurde und merke die fakeln
  854. turtle.select(slotAutofuel) -- Slot 13 auswaehlen
  855. turtle.refuel(turtle.getItemCount(slotAutofuel)) -- auffuellung mit der anzahl Items in Slot 13
  856.  
  857. fakelanzahl1 = turtle.getItemCount(slotFackeln1)
  858. fakelanzahl2 = turtle.getItemCount(slotFackeln2)
  859. fakelanzahl3 = turtle.getItemCount(slotFackeln3)
  860.  
  861.  
  862. -- hier wird der tunnel gegraben
  863. if (ganganzahl ~= 0) then -- mach das nur wen du auch wirklich was gemacht hast
  864.     tunnel() -- vielleicht so oder doch ueber einen extra status anzeige
  865.     back() -- hier komm die turtel wieder zurueck zum ausgangspunkt
  866. end
  867. --zeit an das die Turtel fertig ist
  868. zeigtFertig()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement