Kierra

Untitled

Jul 14th, 2014
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.13 KB | None | 0 0
  1. -- Description : Quarry ultra-rapide/efficace/économique avec les magnets d'OpenCCSensors
  2. -- Auteur : MaitreKierra
  3. -- Version : Alpha 0.1
  4. --
  5.  
  6.  
  7. x = 0
  8. y = 0
  9. z = 0
  10.  
  11. xCache = 0
  12. zCache = 0
  13. yCache = 0
  14.  
  15. -----------------------------
  16. -- ENSEMBLE DES FONCTIONS --
  17. -----------------------------
  18.  
  19. -- ENSEMBLE DE FONCTIONS D'INITIALISATION
  20.  
  21. function InitHauteur() -- Initialise la hauteur
  22. y = -2
  23. m.setTarget(x,y,z)
  24. end
  25.  
  26. function InitCouche() -- Initialise la position
  27. x = -2
  28. z = -2
  29. m.setTarget(x, y, z)
  30. end
  31.  
  32. function peripherique()
  33. m = peripheral.wrap("left")
  34. m.activate()
  35. end
  36.  
  37. -- ENSEMBLE DES FONCTIONS DE DÉPLACEMENTS ET DE CONTRÔLE DES DÉPLACEMENTS --
  38.  
  39. function PosDevantTurtle() -- Change la position principale à devant la turtle et l'y déplace.
  40. x = 1
  41. y = 1
  42. z = 0
  43. m.setTarget(x, y, z)
  44. end
  45.  
  46. function ChangeLigne() -- Vérifie le changement de ligne. Si la position axe X vaut 2, alors position axe Z s'incrémente de 1 et position X reprend sa valeur originale.
  47. if x == 2 then
  48. z = z + 1
  49. x = -2
  50. m.setTarget(x, y, z)
  51. end
  52. end
  53.  
  54. function ChangeCouche() -- Vérifie le changement de couche. Si position axe X et position axe Z valent 2, alors position X s'incrémente de 1 et position axe X et axe Z reprennent leur valeurs originales.
  55. if z == 2 and x == 2 then
  56. y = y - 1
  57. z = -2
  58. m.setTarget(x, y, z)
  59. end
  60. end
  61.  
  62. -- ENSEMBLE DE FONCTIONS : DIG --
  63.  
  64. function MiseEnCache() -- Met en cache la position actuelle pour y revenir après le dig.
  65. xCache = x
  66. yCache = y
  67. zCache = z
  68. end
  69.  
  70. function DemiseEnCache() -- Met en position principale la position en cache et se déplace à la position donnée.
  71. x = xCache
  72. y = yCache
  73. z = zCache
  74. m.setTarget(x, y, z)
  75. end
  76.  
  77. function BlocSuivant() -- Changement de bloc : avance de 1 sur la ligne de minage
  78. x = x + 1
  79. m.setTarget(x, y, z)
  80. end
  81.  
  82. function Dig() -- Assemblage logique des fonctions
  83. m.toggle() -- Prend le bloc selectionné
  84. MiseEnCache() -- Met en cache les positions
  85. PosDevantTurtle() -- Place le bloc devant la turtle
  86. m.toggle() -- Lâche le bloc
  87. turtle.dig() -- Casse le bloc
  88. DemiseEnCache() -- Remets la position en cache en position principale ET revient à la position.
  89. end
  90.  
  91. -- FONCTIONS DE REFUELING ET DE VIDAGE --
  92.  
  93. function refuel()
  94. fuel = turtle.getFuelLevel()
  95. if fuel < 200 then
  96. turtle.select(1)
  97. turtle.refuel(1)
  98. end
  99. end
  100.  
  101.  
  102. -----------------------------
  103. -- PROGRAMME --
  104. refuel() -----------------------------
  105. peripherique()
  106. InitHauteur()
  107. InitCouche()
  108. while true do
  109. refuel()
  110. sleep(5)
  111. print("refuel")
  112. print("___")
  113. --
  114. Dig()
  115. sleep(5)
  116. print("dig")
  117. print("___")
  118. --
  119. BlocSuivant()
  120. sleep(5)
  121. print("refuel")
  122. print("___")
  123. --
  124. ChangeLigne()
  125. sleep(5)
  126. print("ChangeLigne")
  127. print("___")
  128. --
  129. ChangeCouche()
  130. sleep(5)
  131. print("ChangeCouche")
  132. print("___")
  133. end
Advertisement
Add Comment
Please, Sign In to add comment