CultistaDeCrocs

tower

Sep 15th, 2024
27
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.75 KB | None | 0 0
  1. local escolhaTorre = 0
  2. local alturaTorre = 0
  3. local passos = 0
  4.  
  5. local podeIrC = false
  6. local acheiCarvao = false
  7. local carvaoFaltando = 0
  8. local fuelFaltando = 0
  9.  
  10. local asshat = require("libraries.asshat")
  11.  
  12. function calcularCarvao()
  13.     fuelAtual = turtle.getFuelLevel()
  14.     fuelNecess = alturaTorre * 2
  15.    
  16.     if (fuelAtual == "unlimited" or fuelAtual >= fuelNecess) then
  17.         return true
  18.     else
  19.         fuelFaltando = fuelNecess - fuelAtual
  20.         carvaoFaltando = math.ceil(fuelFaltando/80)
  21.         turtle.select(1)
  22.        
  23.         term.clear()
  24.         term.setCursorPos(1,1)
  25.         printCor("WARNING: Out of fuel.")
  26.         print("I need ".. carvaoFaltando.. " more coal. Please put the coal in my 1st slot.")
  27.        
  28.         while (not(turtle.refuel())) do
  29.             os.sleep(1)
  30.         end
  31.        
  32.         return calcularCarvao()
  33.     end
  34. end
  35.  
  36. function construirTorre()
  37.     if(escolhaTorre == 1) then
  38.         for i=1, alturaTorre do
  39.             turtle.up()
  40.             passos = passos+1
  41.             colocarBloco()
  42.         end
  43.        
  44.         turtle.back()
  45.         passos = passos+1
  46.        
  47.         for i=1, alturaTorre do
  48.             turtle.down()
  49.             passos = passos+1
  50.         end
  51.     else
  52.         if(escolhaTorre == 2) then
  53.             for i=1, alturaTorre do
  54.                 colocarBloco()
  55.                 turtle.up()
  56.                 passos = passos+1
  57.                 turtle.forward()
  58.                 passos = passos+1
  59.                 turtle.turnLeft()
  60.             end
  61.         else
  62.             print("Invalid choice. Please choose only 1 or 2.")
  63.         end
  64.     end
  65. end
  66.  
  67.  
  68. -- Main
  69.  
  70. informacaoTitulo("T O W E R  B U I L D E R")
  71.  
  72. print("Choose mode:\n")
  73. imprimirTabela({"Straight tower (I come back after I'm done)", "Spiral staircase (I stay up there after I'm done)"})
  74. escolhaTorre = lerNumero()
  75.  
  76. print("Input the desired height for the tower. Put that many blocks in my 2nd inventory slot.")
  77. alturaTorre = lerNumero()
  78.  
  79. calcularCarvao()
  80. construirTorre()
  81.  
  82. agradece(passos)
Add Comment
Please, Sign In to add comment