Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Var --
- targs = { ... }
- numberCycle = 1
- -- Check de bon fonctionnement --
- function Check()
- local toSender = true
- if numberCycle <= 0 then
- toSender = false
- print("fini!")
- elseif turtle.getFuelLevel() < 6 then
- toSender = refuel()
- elseif CalculRedstone() == false then
- toSender = false
- end
- return toSender
- end
- -- Permet de remettre du fuel --
- -- * return => false si pas de carburant dans les slots
- function refuel()
- turtle.select(1)
- if turtle.getItemCount(1) > 0 then
- return turtle.refuel()
- else
- print("Plus de carburant!")
- end
- end
- -- Calcul redstone --
- function CalculRedstone()
- if turtle.getItemCount(2) >= numberCycle*3 then
- return true
- else
- print("Plus de redstone!")
- return false
- end
- end
- -- Affichafe de l'aide --
- function Help()
- print("Slot :")
- print("* Slot 1 => coal")
- print("* Slot 2 => redstone")
- print("* Slot 3 => Obsidian")
- print("Fonctionnement :")
- print("* 3 RedStone minimum")
- print("* 1 Obsidian minimum => pour que la turtle puis le detect")
- print("Default config:")
- print("* Nombre de cycle => 1")
- print("Usages :")
- print("* GeneObsi")
- print("* GeneObsi <Nombre de cycle>")
- end
- -- Function Mine --
- function Mine()
- for i=1,3 do
- turtle.dig()
- turtle.forward()
- end
- end
- -- Function Place --
- function Place()
- for i=1,3 do
- turtle.back()
- turtle.select(2)
- turtle.place()
- end
- end
- -- Function Test Obsidian Devant --
- function TestIsObsidian()
- turtle.select(3)
- return turtle.compare() == false
- end
- -- Init --
- if #targs >=1 then
- -- Affichage de l'aide
- if targs[1] == "help" then
- Help()
- elseif tonumber(targs[1]) ~= nil then
- numberCycle = tonumber(targs[1])
- end
- end
- -- Mise en place en la turtle
- for i=1,3 do
- turtle.forward()
- end
- -- Boucle de fonctionnement
- while Check() do
- -- On place les block
- Place()
- -- on active la redstone
- rs.setOutput("right",true)
- -- on test si c'est toujours de la redstone devant
- while TestIsObsidian() do
- sleep(5)
- end
- -- on active la redstone
- rs.setOutput("right",false)
- sleep(4)
- -- Mine --
- Mine()
- numberCycle = numberCycle-1
- end
- -- Quand c'est fini
- for i=1,3 do
- turtle.back()
- end
Add Comment
Please, Sign In to add comment