Advertisement
drProfessorGTA

AckerbauV1

Jul 16th, 2020 (edited)
544
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 10.81 KB | None | 0 0
  1. print("Programm zum Ackerbau gestartet!")
  2.  
  3. local FuelBagger = turtle.getFuelLevel()
  4.  
  5. print("Fuellstand Turtle: ",FuelBagger)
  6. if turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < 1 then
  7.     for t=1,16 do
  8.         local data = turtle.getItemDetail()
  9.  
  10.         if data then
  11.           if data.name=="minecraft:coal" or data.name=="ic2:coke" then
  12.             turtle.refuel()
  13.             print("Treibstoff erkannt! Turtle betankt!")
  14.             local FuelBagger = turtle.getFuelLevel()
  15.             print("Fuellstand Turtle: ",FuelBagger)
  16.             break
  17.           end
  18.         end
  19.        
  20.         turtle.select(t)  
  21.         if t==16 then
  22.             print("Treibstoff nicht erkannt! Benoetigt Kohle!")
  23.             return
  24.         end
  25.     end
  26. end
  27.  
  28. write("Geben Sie eine laenge ein: ")
  29. lange = io.read()
  30. write("Geben Sie eine breite ein: ")
  31. breite = io.read()
  32. write("Wasser setzen? (yes/no): ")
  33. waterset = io.read()
  34. write("Saat aussaeen? (yes/no): ")
  35. saatset = io.read()
  36.  
  37. local lange2 = 0+lange
  38. local lange3 = lange2-1
  39. local breite2 = 0+breite
  40. local breite3 = breite2-1
  41.  
  42. print("Turtle gestartet!")
  43.  
  44. local flache = lange2*breite2
  45. btreib = (2*lange2)*(2*breite2)
  46.  
  47.  
  48.  
  49.  
  50. local water1 = breite2/4
  51. local water2 = lange2/4
  52. local water1r = math.floor(math.abs(water1))
  53. local water2r = math.floor(math.abs(water2))
  54.  
  55. local water = water1r*water2r
  56.  
  57. if waterset=="yes" then
  58.     btreib = btreib*2
  59. end
  60.  
  61. print("L*B = ",flache)
  62. print("Treibstoff benoetigt: ",btreib)
  63. if waterset=="yes" then
  64. print("Wassereimer benoetigt: ",water)
  65. end
  66. if saatset=="yes" then
  67. print("Saatgut benoetigt: ",flache)
  68.  
  69.     scanzahl=0
  70.     while scanzahl==0 do
  71.         write("Legen Sie Saatgut in den Aktiven Slot und geben Sie das Wort 'scan' ein! ")
  72.         scan = io.read()
  73.         if scan=="scan" then
  74.             local data = turtle.getItemDetail()
  75.  
  76.             if data then
  77.                 print("Moechten Sie dieses Saatgut verwenden?(yes/no): ",data.name)
  78.                 blockbool = io.read()
  79.                 if blockbool=="yes" then
  80.                     scanzahl=1
  81.                     block=data.name
  82.                 end
  83.             end
  84.         end
  85.     end
  86. end
  87.  
  88.  
  89. if turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < btreib then
  90.     for t=1,16 do
  91.         local data = turtle.getItemDetail()
  92.  
  93.         if data then
  94.           if data.name=="minecraft:coal" or data.name=="ic2:coke" then
  95.             turtle.refuel()
  96.             print("Treibstoff erkannt! Turtle betankt!")
  97.             local FuelBagger = turtle.getFuelLevel()
  98.             print("Fuellstand Turtle: ",FuelBagger)
  99.           end
  100.         end
  101.        
  102.         turtle.select(t)
  103.         if t==16 then
  104.             break
  105.         end
  106.         if turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() > btreib then
  107.             break
  108.         end
  109.     end
  110. end
  111. if turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < btreib then
  112.     local FuelBagger = turtle.getFuelLevel()
  113.     print("Fuellstand Turtle: ",FuelBagger)
  114.     print("Tankfuellung wird nicht komplett ausreichen!")
  115.     write("Trotzdem starten? (yes/no): ")
  116.     start = io.read()
  117.     if start=="no" then
  118.         return
  119.     end
  120. end
  121. if turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() > btreib then
  122.     local FuelBagger = turtle.getFuelLevel()
  123.     print("Fuellstand Turtle: ",FuelBagger)
  124.     print("Tankfuellung wird komplett ausreichen!")
  125. end
  126.  
  127. inventar=0
  128. t=0
  129. while t < 16 or inventar==16 do
  130.     t=t+1
  131.     turtle.select(t)
  132.     local data = turtle.getItemDetail()
  133.     if data then
  134.         inventar=inventar+1
  135.     end
  136.     if inventar==16 then
  137.         print("Inventar voll! Bitte Inventar entleeren!")
  138.         inventar=0
  139.         t=0
  140.     end
  141. end
  142.  
  143.  
  144. print("Turtle Ackerbau gestartet!")
  145.  
  146.  
  147. if waterset=="yes" then
  148.     turtle.forward()
  149.     turtle.up()
  150.  
  151.     wasserzahlb=0
  152.     wasserzahll=0
  153.     for b=1,breite2 do
  154.  
  155.         wasserzahlb=wasserzahlb+1
  156.         for l=1,lange3 do
  157.            
  158.             wasserzahll=wasserzahll+1
  159.                    
  160.             turtle.forward()
  161.            
  162.             while turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < 10 do
  163.                 for t=1,16 do
  164.                     local data = turtle.getItemDetail()
  165.                     if data then
  166.                         if data.name=="minecraft:coal" or data.name=="ic2:coke" then
  167.                             turtle.refuel()
  168.                             print("Treibstoff erkannt! Turtle betankt!")
  169.                             local FuelBagger = turtle.getFuelLevel()
  170.                             print("Fuellstand Turtle: ",FuelBagger)
  171.                             break
  172.                         end
  173.                     end
  174.                    
  175.                     turtle.select(t)  
  176.                     if t==16 then
  177.                         print("Kein Treibstoff! Bitte nachfüllen!")
  178.                         break
  179.                     end
  180.                 end
  181.             end
  182.            
  183.             if wasserzahlb==5 and wasserzahll==4 then
  184.                 while turtle.detectDown()==true do
  185.                     turtle.digDown()
  186.                     os.sleep(0.2)
  187.                 end
  188.                 turtle.down()
  189.                 while turtle.detectDown()==true do
  190.                     turtle.digDown()
  191.                     os.sleep(0.2)
  192.                 end
  193.                
  194.                
  195.                 boolwater=false
  196.                
  197.                 while boolwater==false do
  198.                     for t=1,16 do
  199.                         local data = turtle.getItemDetail()
  200.                         if data then
  201.                             if data.name=="minecraft:water_bucket" then
  202.                                 turtle.placeDown()
  203.                                 print("Wasser wurde gesetzt")
  204.                                 water=water-1
  205.                                 print("Wassereimer benoetigt: ",water)
  206.                                 boolwater=true
  207.                                 break
  208.                             end
  209.                         end
  210.                        
  211.                         turtle.select(t)  
  212.                         if t==16 then
  213.                             print("Kein Wasser! Bitte Wassereimer nachfüllen!")
  214.                             break
  215.                         end
  216.                     end
  217.                 end
  218.                
  219.                 turtle.up()
  220.             end
  221.             if wasserzahll==5 then
  222.                 wasserzahll=0
  223.             end
  224.            
  225.         end
  226.        
  227.         turtle.turnRight()
  228.         turtle.turnRight()
  229.  
  230.         for l=1,lange3 do
  231.            
  232.            
  233.             turtle.forward()
  234.            
  235.             while turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < 10 do
  236.                 for t=1,16 do
  237.                     local data = turtle.getItemDetail()
  238.                     if data then
  239.                         if data.name=="minecraft:coal" or data.name=="ic2:coke" then
  240.                             turtle.refuel()
  241.                             print("Treibstoff erkannt! Turtle betankt!")
  242.                             local FuelBagger = turtle.getFuelLevel()
  243.                             print("Fuellstand Turtle: ",FuelBagger)
  244.                             break
  245.                         end
  246.                     end
  247.                    
  248.                     turtle.select(t)  
  249.                     if t==16 then
  250.                         print("Kein Treibstoff! Bitte nachfüllen!")
  251.                         break
  252.                     end
  253.                 end
  254.             end
  255.            
  256.         end
  257.        
  258.        
  259.         turtle.turnLeft()
  260.         if b<breite2 then
  261.             turtle.forward()
  262.         end
  263.         turtle.turnLeft()
  264.        
  265.         wasserzahll=0
  266.        
  267.         if wasserzahlb==5 then
  268.             wasserzahlb=0
  269.         end
  270.  
  271.     end
  272.  
  273.     turtle.turnLeft()
  274.  
  275.         for b=1,breite3 do
  276.        
  277.             turtle.forward()
  278.        
  279.         end
  280.        
  281.     turtle.turnRight()
  282.     turtle.back()
  283.     turtle.down()
  284.  
  285.  
  286. end
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295. turtle.forward()
  296. turtle.up()
  297.  
  298. for b=1,breite2 do
  299.  
  300.     for l=1,lange3 do
  301.        
  302.         while turtle.detectDown()==true do
  303.             turtle.digDown()
  304.             os.sleep(0.2)
  305.         end
  306.        
  307.             ifwater=0
  308.            
  309.             turtle.down()
  310.             local success, data = turtle.inspectDown()
  311.             if success then
  312.                 if data.name=="minecraft:water" then
  313.                     ifwater=1
  314.                 end
  315.             end
  316.             turtle.up()
  317.            
  318.            
  319.             turtle.digDown()
  320.             os.sleep(0.2)
  321.             turtle.digDown()
  322.             os.sleep(0.2)
  323.            
  324.             if saatset=="yes" and ifwater==0 then
  325.                 while turtle.detectDown()==false do
  326.                     inventar=0
  327.                     t=0
  328.                     while t < 16 or inventar==16 do
  329.                         t=t+1
  330.                         if t>0 and t<17 then
  331.                             turtle.select(t)
  332.                         end
  333.                         local data = turtle.getItemDetail()
  334.                         if data then
  335.                             if data.name==block then
  336.                                 break
  337.                             else
  338.                                 inventar=inventar+1
  339.                             end
  340.                         else
  341.                             inventar=inventar+1
  342.                         end
  343.                         if inventar==16 then
  344.                             print("Saatgut fehlt: ",block)
  345.                             inventar=0
  346.                             t=0
  347.                         end
  348.                     end
  349.                     turtle.placeDown()
  350.                     os.sleep(0.2)
  351.                 end
  352.             end
  353.        
  354.         turtle.forward()
  355.        
  356.         while turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < 10 do
  357.             for t=1,16 do
  358.                 local data = turtle.getItemDetail()
  359.                 if data then
  360.                     if data.name=="minecraft:coal" or data.name=="ic2:coke" then
  361.                         turtle.refuel()
  362.                         print("Treibstoff erkannt! Turtle betankt!")
  363.                         local FuelBagger = turtle.getFuelLevel()
  364.                         print("Fuellstand Turtle: ",FuelBagger)
  365.                         break
  366.                     end
  367.                 end
  368.                
  369.                 turtle.select(t)  
  370.                 if t==16 then
  371.                     print("Kein Treibstoff! Bitte nachfüllen!")
  372.                     break
  373.                 end
  374.             end
  375.         end
  376.        
  377.         inventar=0
  378.         t=0
  379.         while t < 16 or inventar==16 do
  380.             t=t+1
  381.             turtle.select(t)
  382.             local data = turtle.getItemDetail()
  383.             if data then
  384.                 inventar=inventar+1
  385.             end
  386.             if inventar==16 then
  387.                 print("Inventar voll! Bitte Inventar entleeren!")
  388.                 inventar=0
  389.                 t=0
  390.             end
  391.         end
  392.        
  393.        
  394.        
  395.     end
  396.    
  397.     while turtle.detectDown()==true do
  398.             turtle.digDown()
  399.             os.sleep(0.2)
  400.     end
  401.    
  402.         ifwater=0
  403.            
  404.         turtle.down()
  405.         local success, data = turtle.inspectDown()
  406.         if success then
  407.             if data.name=="minecraft:water" then
  408.                 ifwater=1
  409.             end
  410.         end
  411.         turtle.up()
  412.        
  413.         turtle.digDown()
  414.         os.sleep(0.2)
  415.         turtle.digDown()
  416.         os.sleep(0.2)
  417.        
  418.         if saatset=="yes" and ifwater==0 then
  419.                 while turtle.detectDown()==false do
  420.                     inventar=0
  421.                     t=0
  422.                     while t < 16 or inventar==16 do
  423.                         t=t+1
  424.                         if t>0 and t<17 then
  425.                             turtle.select(t)
  426.                         end
  427.                         local data = turtle.getItemDetail()
  428.                         if data then
  429.                             if data.name==block then
  430.                                 break
  431.                             else
  432.                                 inventar=inventar+1
  433.                             end
  434.                         else
  435.                             inventar=inventar+1
  436.                         end
  437.                         if inventar==16 then
  438.                             print("Saatgut fehlt: ",block)
  439.                             inventar=0
  440.                             t=0
  441.                         end
  442.                     end
  443.                     turtle.placeDown()
  444.                     os.sleep(0.2)
  445.                 end
  446.             end
  447.    
  448.        
  449.     turtle.turnRight()
  450.     turtle.turnRight()
  451.  
  452.     for l=1,lange3 do
  453.        
  454.        
  455.         turtle.forward()
  456.        
  457.         while turtle.getFuelLevel() ~= "unlimited" and turtle.getFuelLevel() < 10 do
  458.             for t=1,16 do
  459.                 local data = turtle.getItemDetail()
  460.                 if data then
  461.                     if data.name=="minecraft:coal" or data.name=="ic2:coke" then
  462.                         turtle.refuel()
  463.                         print("Treibstoff erkannt! Turtle betankt!")
  464.                         local FuelBagger = turtle.getFuelLevel()
  465.                         print("Fuellstand Turtle: ",FuelBagger)
  466.                         break
  467.                     end
  468.                 end
  469.                
  470.                 turtle.select(t)  
  471.                 if t==16 then
  472.                     print("Kein Treibstoff! Bitte nachfüllen!")
  473.                     break
  474.                 end
  475.             end
  476.         end
  477.        
  478.     end
  479.    
  480.    
  481.     turtle.turnLeft()
  482.     if turtle.detectDown()==true and b<breite2 then
  483.         turtle.digDown()
  484.         os.sleep(0.2)
  485.     end
  486.     if b<breite2 then
  487.        
  488.         ifwater=0
  489.            
  490.         turtle.down()
  491.         local success, data = turtle.inspectDown()
  492.         if success then
  493.             if data.name=="minecraft:water" then
  494.                 ifwater=1
  495.             end
  496.         end
  497.         turtle.up()
  498.        
  499.         turtle.digDown()
  500.         os.sleep(0.2)
  501.         turtle.digDown()
  502.         os.sleep(0.2)
  503.        
  504.         if saatset=="yes" and ifwater==0 then
  505.             while turtle.detectDown()==false do
  506.                 inventar=0
  507.                 t=0
  508.                 while t < 16 or inventar==16 do
  509.                     t=t+1
  510.                     if t>0 and t<17 then
  511.                         turtle.select(t)
  512.                     end
  513.                     local data = turtle.getItemDetail()
  514.                     if data then
  515.                         if data.name==block then
  516.                             break
  517.                         else
  518.                             inventar=inventar+1
  519.                         end
  520.                     else
  521.                         inventar=inventar+1
  522.                     end
  523.                     if inventar==16 then
  524.                         print("Saatgut fehlt: ",block)
  525.                         inventar=0
  526.                         t=0
  527.                     end
  528.                 end
  529.                 turtle.placeDown()
  530.                 os.sleep(0.2)
  531.             end
  532.         end
  533.        
  534.     end
  535.     if b<breite2 then
  536.         turtle.forward()
  537.     end
  538.     turtle.turnLeft()
  539.  
  540. end
  541.  
  542. turtle.turnLeft()
  543.  
  544.     for b=1,breite3 do
  545.    
  546.         turtle.forward()
  547.    
  548.     end
  549.    
  550. turtle.turnRight()
  551. turtle.back()
  552. turtle.down()
  553.  
  554. print("Turtle Ackerbau beendet!")
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement