Сделал небольшую хрень для визуализации питания систем дома Но есть проблема с 3 последними стрелками
Именно почему-то последние 3 стрелки тупят, со всем остальным норм Мне кажется это потому, что возможно я неправильно использую gpu.setForeground Проблема находится на строчках 157-185 При активации стрелки на строчке 157, активируются все стрелки которые находятся ниже, то-есть 169,178 строчки С остальными стрелками все нормально, они загораются как надо
Буду очень благодарен за помощь
Код говнокод проги
local component = require("component")
local term = require("term")
local gpu = component.gpu
local rs = component.redstone
namecolor = 0xffffff -- цвет названия программы
fontcolor = 0x77f3f9 -- цвет названия систем
green = 0x04ff00 -- зеленый цвет
red = 0xff0000 -- красный цвет
gray = 0x636363 -- серый цвет
white = 0xffffff -- белый цвет
timing = 0.5 -- задержка обновления информации (в секундах)
gpu.setResolution(60,20)
gpu.setBackground(0x000000)
rs.setBundledOutput(3,4,255) -- ПОСЛЕ НАСТРОЙКИ УБРАТЬ ЭТОТ МУСОР
rs.setBundledOutput(3,3,255) -- И ЭТО ДЕРЬМО ТОЖЕ НАХЕР
term.clear()
-- Выводим название проги на экран
gpu.setForeground(namecolor)
gpu.set(20,1,'ENERGY SUPPLY MONITOR')
-- Выводим названия систем
gpu.setForeground(fontcolor)
gpu.set(19,6,'HV Solar Panel Supply')
gpu.set(2,11,'Primary---MFSU---System')
gpu.set(37,11,'Secondary-MFSU-System')
gpu.set(37,15,'Computers / AE Supply')
gpu.set(1,15,'Tools')
gpu.set(8,15,'User1')
gpu.set(16,15,'User2')
gpu.set(24,15,'AE Tools')
-- рисуем одну одинокую полосочку
gpu.setForeground(gray)
gpu.set(27,11,'─')
gpu.set(28,11,'─')
gpu.set(29,11,'─')
gpu.set(30,11,'─')
gpu.set(31,11,'─')
gpu.set(32,11,'─')
gpu.set(33,11,'─')
gpu.set(34,11,'─')
while true do -- Цикл рисования хлама
os.sleep(timing)
-- Отображение отключенных систем
if rs.getBundledInput(3,13) > 0 then -- Питание комнаты приборов отключено
gpu.setForeground(white)
gpu.set(1,20,'Tools OFF')
else
gpu.setForeground(white)
gpu.set(1,20,' ')
end
if rs.getBundledInput(3,14) > 0 then -- Питание комнаты User1 отключено
gpu.setForeground(white)
gpu.set(15,20,'User1 OFF')
else
gpu.setForeground(white)
gpu.set(15,20,' ')
end
if rs.getBundledInput(3,15) > 0 then -- Питание комнаты User1 отключено
gpu.setForeground(white)
gpu.set(29,20,'User2 OFF')
else
gpu.setForeground(white)
gpu.set(29,20,' ')
end
if rs.getBundledInput(3,12) > 0 then -- Питание приборов МЭ системы отключено
gpu.setForeground(white)
gpu.set(43,20,'AE Tools OFF')
else
gpu.setForeground(white)
gpu.set(43,20,' ')
end
-- Отображение стрелок
if rs.getBundledInput(3,0) > 0 then -- стрелка подачи питания на компы и мэ
gpu.setForeground(green)
gpu.set(47,12,'│')
gpu.set(47,13,'│')
gpu.set(47,14,'▼')
else
gpu.setForeground(red)
gpu.set(47,12,'│')
gpu.set(47,13,'│')
gpu.set(47,14,'▼')
end
if rs.getBundledInput(3,2) > 0 then -- стрелка зарядки вторичной МФСУ системы от солнечных панелей
gpu.setForeground(green)
gpu.set(39,7,'│')
gpu.set(39,8,'│')
gpu.set(39,9,'│')
gpu.set(39,10,'▼')
else
gpu.setForeground(red)
gpu.set(39,7,'│')
gpu.set(39,8,'│')
gpu.set(39,9,'│')
gpu.set(39,10,'▼')
end
if rs.getBundledInput(3,6) > 0 then -- стрелка подзарядки основной МФСУ системы от солнечных панелей
gpu.setForeground(green)
gpu.set(19,7,'│')
gpu.set(19,8,'│')
gpu.set(19,9,'│')
gpu.set(19,10,'▼')
else
gpu.setForeground(red)
gpu.set(19,7,'│')
gpu.set(19,8,'│')
gpu.set(19,9,'│')
gpu.set(19,10,'▼')
end
if rs.getBundledInput(3,7) > 0 then -- стрелка питания комнаты с приборами
gpu.setForeground(green)
gpu.set(3,12,'│')
gpu.set(3,13,'│')
gpu.set(3,14,'▼')
else
gpu.setForeground(red)
gpu.set(3,12,'│')
gpu.set(3,13,'│')
gpu.set(3,14,'▼')
end
if rs.getBundledInput(3,8) > 0 then -- стрелка питания комнаты user 1
gpu.setForeground(green)
gpu.set(10,12,'│')
gpu.set(10,13,'│')
gpu.set(10,14,'▼')
else
gpu.setForeground(red)
gpu.set(10,12,'│')
gpu.set(10,13,'│')
gpu.set(10,14,'▼')
end
if rs.getBundledInput(3,9) > 0 then -- стрелка питания комнаты user 2
gpu.setForeground(green)
gpu.set(18,12,'│')
gpu.set(18,13,'│')
gpu.set(18,14,'▼')
else
gpu.setForeground(red)
gpu.set(18,12,'│')
gpu.set(18,13,'│')
gpu.set(18,14,'▼')
end
if rs.getBundledInput(3,10) > 0 then -- стрелка питания приборов МЭ системы
gpu.setForeground(green)
gpu.set(24,12,'│')
gpu.set(24,13,'│')
gpu.set(24,14,'▼')
else
gpu.setForeground(red)
gpu.set(24,12,'│')
gpu.set(24,13,'│')
gpu.set(24,14,'▼')
end
if rs.getBundledInput(3,1) > 0 then -- стрелка подзарядки первичной системы от вторичной
gpu.setForeground(green)
gpu.set(26,11,'─')
gpu.set(25,11,'◄')
else
gpu.set(26,11,'─')
gpu.set(25,11,'◄')
end
if rs.getBundledInput(3,5) > 0 then -- стрелка подзарядки вторичной системы от первичной
gpu.setForeground(green)
gpu.set(35,11,'─')
gpu.set(36,11,'►')
else
gpu.set(35,11,'─')
gpu.set(36,11,'►')
end
end
Работает нормально, загорается одна стрелочка, как и надо
А вот тут косяк, должна гореть одна нижняя стрелочка, горят все три сразу
Сделал небольшую хрень для визуализации питания систем дома
Но есть проблема с 3 последними стрелками
Именно почему-то последние 3 стрелки тупят, со всем остальным норм
Мне кажется это потому, что возможно я неправильно использую gpu.setForeground
Проблема находится на строчках 157-185
При активации стрелки на строчке 157, активируются все стрелки которые находятся ниже, то-есть 169,178 строчки
С остальными стрелками все нормально, они загораются как надо
Буду очень благодарен за помощь
Кодговнокод прогиРаботает нормально, загорается одна стрелочка, как и надо
А вот тут косяк, должна гореть одна нижняя стрелочка, горят все три сразу
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах