Advertisement
DreamWolf

Support For Cell Release

Mar 2nd, 2024 (edited)
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.96 KB | None | 0 0
  1. -- Инициируем все библиотеки и переменные
  2. local colors = require("colors")
  3. local component = require("component")
  4. local gpu = component.gpu
  5. local term = require("term")
  6. local br_reactor
  7. local PR
  8. local RR
  9. br_reactor = component.br_reactor
  10.  
  11. -- Переводим реактор в активное состояние
  12. br_reactor.setActive(true)
  13.  
  14. -- Меняем цвет фона
  15. gpu.setForeground(0xFFFFFF)
  16.  
  17.  
  18. --Опускаем стержни, пока не будет сделана настройка системы
  19. if component.isAvailable("br_reactor") then
  20. br_reactor.setAllControlRodLevels(100)
  21. stats = br_reactor.getActive()
  22. else
  23. print("Этой программе требуется беспроводной модем для работы!")
  24. end
  25.  
  26. --Очистка терминала
  27. term.clear()
  28.  
  29.  
  30. --Вывод текста
  31. print("Сделано Волчарой")
  32. print("Добро пожаловать в программу для поддерживания реактора в нужном количестве энергии")
  33. print("Пожалуйста, выберете из какого мода используется ячейка")
  34. print("1) ThermalExpansion")
  35. print("2) Ender IO")
  36.  
  37. local DD = tonumber(io.read())
  38.  
  39. if DD == 1 then
  40. bank = component.tile_thermalexpansion_cell_resonant_name
  41. print("")
  42. print("Вы выбрали ThermalExpansion")
  43.  
  44. else
  45. bank = component.capacitor_bank
  46. print("")
  47. print("Вы выбрали Ender IO")
  48.  
  49. end
  50.  
  51. --Проверка вместимости ячейки
  52. local YACH = bank.getMaxEnergyStored()
  53.  
  54. print("")
  55. print("Через 5 секунд программа включится и вы должны указать, сколько должна программа поддерживать rf энергии в накопителе")
  56. print("Максимальное количество энергии в ячейке: " .. YACH)
  57.  
  58. --Ожидание 5 сек.
  59. os.sleep(5)
  60.  
  61. --Ввод данных (поддержка)
  62. local PR = tonumber(io.read())
  63.  
  64. --Проверка данных на ёмкость и поддержку
  65. while PR > YACH do
  66. print("Вы ошиблись в вводе данных, пожалуйста, попробуйте снова")
  67. PR = tonumber(io.read())
  68. end
  69.  
  70. --Ввод данных (обновление)
  71. print("Как часто будет происходить обновление ёмкости? (Укажите в секундах)")
  72. local RR = tonumber(io.read())
  73.  
  74. --Очистка терминала + благодарственное письмо
  75. term.clear()
  76. print("Спасибо за выбор программы Support For Cell. Удачного использования")
  77. os.sleep(5)
  78.  
  79. --Проверка доступности реактора + выключение по завершении работы реактора
  80. while stats == true do
  81. stats = br_reactor.getActive()
  82. local X = bank.getEnergyStored()
  83.  
  84. --Очистка терминала
  85. term.clear()
  86.  
  87. --Основной текст + Вывод данных (Поддержка + ёмкость ячейки)
  88. print("Сделано Волчарой")
  89. print("Для выключение программы зажмите сочетание клавиш CTRL+ALT+C, или просто вручную выключите реактор и он выключится через " .. RR .. " секунд")
  90. print("Вы выбрали поддержку = " .. PR)
  91. print("Ёмкость ячейки = " .. X)
  92.  
  93. --Вывод статуса стержней
  94. if X < PR then
  95. print("Статус стержней: Подняты")
  96. else
  97. print("Статус стержней: Опущены")
  98. end
  99.  
  100. --Ожидание по частоте обновления
  101. os.sleep(RR)
  102.  
  103. --Регулировка стержней по поддержке
  104. if X < PR then
  105. br_reactor.setAllControlRodLevels(0)
  106. else
  107. br_reactor.setAllControlRodLevels(100)
  108.  
  109. --Конец программы
  110. end
  111. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement