maxsar

Repeater

Dec 18th, 2020 (edited)
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.08 KB | None | 0 0
  1. term.setBackgroundColor(colours.black)
  2. sides = {}
  3. state = true
  4. speed = 0.05
  5.  
  6. if fs.exists("save") then
  7. state = false
  8. file = fs.open("save", "r")
  9. save = {}
  10. line = "cum"
  11.  
  12. while line ~= nil do
  13. line = file.readLine()
  14. table.insert(save,line)
  15. end
  16.  
  17. speed = tonumber(save[1])
  18. table.remove(save, 1)
  19.  
  20. for k, v in pairs(save) do
  21. sides[k] = v
  22. end
  23.  
  24. term.clear()
  25. term.setCursorPos(1,1)
  26. write("Loaded save:")
  27. term.setCursorPos(1,2)
  28. write(tostring(speed))
  29.  
  30. for k, v in pairs(sides) do
  31. term.setCursorPos(1,2 + k)
  32. write(v)
  33. end
  34.  
  35. sleep(5)
  36. else
  37. while state do
  38.  
  39. term.clear()
  40. term.setCursorPos(1,1)
  41. write("[")
  42. for k,v in pairs(redstone.getSides()) do
  43. write(v ..",")
  44. end
  45. write("done]")
  46. term.setCursorPos(1,2)
  47. write("Sides:") --7
  48.  
  49. for k, v in pairs(sides) do
  50. term.setCursorPos(1,k + 2)
  51. write(v)
  52. end
  53.  
  54.  
  55. term.setCursorPos(7,2)
  56. input = read()
  57. if input == "top" or input == "bottom" or input == "left" or input == "right" or input == "front" or input == "back" then
  58. table.insert(sides,input)
  59. elseif input == "done" then
  60. state = false
  61. break
  62. else
  63. term.clear()
  64. term.setCursorPos(1,1)
  65. write("ERROR: " ..input .." is not viable side!")
  66. sleep(2)
  67. end
  68. end
  69.  
  70.  
  71. term.clear()
  72. term.setCursorPos(1,1)
  73. write("speed:")
  74. input = read()
  75.  
  76. if tonumber(input) ~= nil then
  77. speed = tonumber(input)
  78. else
  79. term.clear()
  80. term.setCursorPos(1,1)
  81. write("ERROR: " ..input .." is not a number!")
  82. state = true
  83. end
  84.  
  85. --SAVE OPEATION
  86. file = fs.open("save", "w")
  87. file.writeLine(tostring(speed))
  88. for k, v in pairs(sides) do
  89. file.writeLine(v)
  90. end
  91. file.close()
  92.  
  93. end
  94.  
  95. licznik = 0
  96. while state == false do
  97. term.clear()
  98. term.setCursorPos(1,1)
  99. write(licznik)
  100. for k,v in pairs(sides) do
  101. redstone.setOutput(v,true)
  102. term.setCursorPos(1,k + 1)
  103. write("ON " ..v)
  104. end
  105. sleep(speed)
  106. for k,v in pairs(sides) do
  107. redstone.setOutput(v,false)
  108. term.setCursorPos(1,k + 1)
  109. write("OFF " ..v)
  110. end
  111. licznik = licznik + 1
  112. sleep(speed)
  113. end
  114.  
Add Comment
Please, Sign In to add comment