CultistaDeCrocs

torre.lua

Mar 19th, 2024
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 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 atari = require("bibliotecas.atari")
  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("ERRO: Combustível insuficiente.")
  26. print("Preciso de mais ".. carvaoFaltando.. " carvão. Coloque o carvão no primeiro slot do meu inventário")
  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("Escolha inválida. Por favor escolha apenas 1 ou 2.")
  63. end
  64. end
  65. end
  66.  
  67.  
  68. -- Main
  69.  
  70. informacaoTitulo("F A Z E R T O R R E")
  71.  
  72. print("Escolha o modo:\n")
  73. imprimirTabela({"Torre reta (volto pra baixo depois de terminar)", "Escada espiral (não volto pra baixo depois de terminar)"})
  74. escolhaTorre = lerNumero()
  75.  
  76. print("Digite a altura que você quer que a torre tenha. Coloque essa quantidade de blocos no segundo slot do meu inventário.")
  77. alturaTorre = lerNumero()
  78.  
  79. calcularCarvao()
  80. construirTorre()
  81.  
  82. agradece(passos)
Advertisement
Add Comment
Please, Sign In to add comment