SHARE
TWEET

vidermont

ledondegrelle Feb 21st, 2020 (edited) 126 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. local niveauFuelMini = 20                               -- niveau de déplacements auquel on doit refaire le plein de fuel
  2. local niveauCharbonMini = 10                             -- quantité de charbons restants à laquelle on doit refaire le plein de charbon
  3. local premierSlot = 1                                   -- premier slot où se trouve le minerai ramassé
  4. local dernierSlot = 13                                  -- dernier slot à surveiller pour enclencher le vidage de l'inventaire
  5. local enderchestSlot = 14                               -- slot où se trouve l'enderchest pour les minerais
  6. local enderchestCharbonSlot = 15                        -- slot où se trouve l'enderchest pour le charbon
  7. local charbonSlot = 16                                  -- slot ou est stocké le charbon
  8.  
  9.  
  10. function compare_mine()  
  11.  
  12. turtle.turnLeft()
  13.  
  14. local success, data = turtle.inspect()
  15. if (data.name~="minecraft:dirt" and data.name ~="minecraft:stone" and data.name ~="minecraft:gravel") then
  16.     turtle.dig()
  17.     videInventaire()
  18. end
  19.  
  20. turtle.turnLeft()
  21. turtle.turnLeft()
  22.  
  23. success, data = turtle.inspect()
  24. if (data.name~="minecraft:dirt" and data.name ~="minecraft:stone" and data.name ~="minecraft:gravel") then
  25.         turtle.dig()
  26.         videInventaire()
  27. end
  28.  
  29. turtle.turnLeft()
  30.  
  31. success, data = turtle.inspectUp()
  32. if (data.name~="minecraft:dirt" and data.name ~="minecraft:stone" and data.name ~="minecraft:gravel") then
  33.         turtle.digUp()
  34.         videInventaire()
  35. end
  36.  
  37. success, data = turtle.inspectDown()
  38. if (data.name~="minecraft:dirt" and data.name ~="minecraft:stone" and data.name ~="minecraft:gravel") then
  39.         turtle.digDown()
  40.         videInventaire()
  41. end  
  42.  
  43. end
  44.  
  45.  
  46. function verifFuel()      
  47. -- verifier si il nous reste du charbon, sinon en reprendre, après, se refuel  
  48.  
  49. if (turtle.getFuelLevel() < niveauFuelMini) then -- On a besoin de faire le plein
  50.     if (turtle.getItemCount(charbonSlot) < niveauCharbonMini) then
  51.         turtle.dig()
  52.         while turtle.detect() do turtle.dig() end
  53.         videInventaire()
  54.         turtle.select(enderchestCharbonSlot)
  55.         turtle.place()
  56.         turtle.select(charbonSlot)
  57.         turtle.suck()
  58.         turtle.select(enderchestCharbonSlot)
  59.         turtle.dig()
  60.     end
  61.     turtle.select(charbonSlot)
  62.     turtle.refuel(1)
  63. end
  64. end
  65.  
  66. function videInventaire()                              
  67. -- vide l'inventaire de la tortue dans l'enderchest
  68.  
  69.  
  70. if (turtle.getItemCount(dernierSlot-1) > 0) then  -- on vérifie si on doit vider l'inventaire de la tortue
  71.     print("vidage inventaire")
  72.     turtle.dig()
  73.     while turtle.detect() do turtle.dig() end
  74.     turtle.select(enderchestSlot)
  75.     turtle.place()
  76.     local slot  
  77.     for slot=premierSlot,dernierSlot do
  78.         turtle.select(slot)
  79.         while turtle.getItemCount(slot) > 0 do
  80.             turtle.drop(turtle.getItemCount(slot))
  81.             if turtle.getItemCount(slot) > 0 then
  82.                 sleep(0.5)
  83.             end
  84.         end
  85.     end
  86.     turtle.select(enderchestSlot)
  87.     turtle.dig()
  88. end
  89.        
  90. end
  91.  
  92. --********************************************--
  93. --********** Programme principal *************--
  94. --********************************************--
  95.  
  96. local nblarge = 10
  97. local longeur
  98.  
  99.  
  100. while nblarge~=0  do
  101.     longeur = 20
  102.  
  103.     print("debut d'une nouvelle ligne")
  104.  
  105.     while longeur>0 do
  106.  
  107.         turtle.dig()
  108.         while turtle.detect() do turtle.dig() end
  109.         turtle.forward()
  110.         turtle.digUp()
  111.         turtle.digDown()        
  112.         sleep(0.05)
  113.         longeur=longeur-1
  114.         verifFuel()              
  115.  
  116.     end
  117.  
  118.  
  119.  
  120.     print("fin de la ligne, je tourne ")
  121.     turtle.turnLeft()
  122.     turtle.dig()
  123.     while turtle.detect() do turtle.dig() end
  124.     turtle.forward()
  125.     turtle.digUp()
  126.     turtle.digDown()
  127.     turtle.turnLeft()
  128.     longeur=20
  129.    
  130.     while longeur>0 do
  131.  
  132.         turtle.dig()
  133.         while turtle.detect() do turtle.dig() end
  134.         turtle.forward()
  135.         turtle.digUp()
  136.         turtle.digDown()        
  137.         sleep(0.05)
  138.         longeur=longeur-1
  139.         verifFuel()              
  140.  
  141.     end
  142.  
  143.     turtle.turnRight()
  144.     turtle.dig()
  145.     while turtle.detect() do turtle.dig() end
  146.     turtle.forward()
  147.     turtle.digUp()
  148.     turtle.digDown()
  149.     turtle.turnRight()
  150.  
  151.     nblarge=nblarge-1
  152. end
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top