Перейти к публикации
Форум - ComputerCraft

lokin135

Пользователи
  • Публикации

    53
  • Пожертвование

    0.00 ₽ 
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    2

Все публикации пользователя lokin135

  1. lokin135

    аниме Аниме беседка

    Химико топ!1!!1
  2. Я пихаю цвета в массив, а потом логическими выражениями ставлю подходящий цвет. Интерфейс делаю с завязкой под "проценты".
  3. Выглядит очень интересно. Сейчас я тоже (исключительно для себя) разрабатываю файловый менеджер, поддерживающий одновременно и низкие системные требования, и высокие - программа без проблем меняет цветовую схему и подстраивается под низкое разрешение экрана. Только... код пока не публикуется? Я бы взглянул на него
  4. Ссылки Обновил и тут ссылку на программу - перешел на другой домен, из-за этого старая ссыль не работала (на мой сервер)
  5. Хелло computercraft! Хочу поделится своей программой по мониторингу состояния 54 (максимум) реакторов (6 блоков по 9 реакторов), которую меня попросили закодить. Вот как все это выгдядит (немного промахнулся с разрешением, по этому по краям не симметрично, но вроде не так сильно в глаза бросается): Цвет напряжения который выдает реактор и текст "Реактор №1" выделяется красным или зеленым, в зависимости от состояния активности: если реактор выдает 1 и больше EU/t (другими словами - он работает) - цвет зеленый, в противном случае - красный. Так-же в другом углу окна отображается нагрев: если он больше 50% - цвет текста становится оранжевым, но если менее - зеленый. Стоит сказать, что вся программа работает без дополнительных библиотек (я имею в виду библиотеку от ECS, например. т.е. сторонние), т.к. я ну прям очень не люблю таскать с собой не нужный хлам. Да и еще нужен будет установщик для всего этого. Обошелся только тремя requir'ами: component, term и event. Так-же я сделал отдельный массив для удобного редактирования цветов: ИМХО это лучший вариант для хранения цветов программы. (Дал название переменной color для более логичного кода: "color.UpBar" лучше выглядит чем "colors.UpBar". Но опять-же, ИМХО) С этой штукой будет не проблема сделать графику программы под цвет стены, например. Да и я не дизайнер или художник, что-бы идеально подбирать цвета)) Теперь счет настройки программы. Для коннекта реактора нужно поставить вплотную адаптер к нему и ввести 3 (можно больше или меньше, но мне по душе именно так) первых символа адреса адаптера (нужно тыкнуть по нему анализатором, что-бы узнать полный адрес) в спец. массив с этими адресами. Можно было-бы автоматически распределять реакторы по блокам, но заказчику нужно было индексировать самому. Ну, вроде все рассказал. В коде (и в сообщении, ага) могут быть грамматические (не давно узнал, что английское слово "адрес" пишется как "address", а не "adress"... я раньше постоянно так писал и допускал ошибку), так и логические ошибки (имею в виду бесполезную проверку на nil, например). Помидорами не кидайтесь, но советами и конструктивной критики я буду очень рад. Ну и код выложил на свой сервак и на пастебин: https://lokin135server.ru/PublicRepository/ReactorStatusAndMFSU/ReactorStatus.lua https://pastebin.com/JUKJXK97 Команда для загрузки: pastebin get JUKJXK97 MonitReactors.lua На основе этой проги я еще сделал рендеринг состояния MFSU'шек, но эта совсем другая история.. (код там-же найдете)
  6. Ссылки Обновил ссылку на мой сервер. Перешел на https и купил домен, по этому старая ссылка не работала
  7. Снова привет! Когда-то давным-давно увидел я дома у Fingercomp'a очень интересную хреновину на мониторе, которая показывала расход/прирост энергии в системе. И вот тогда я захотел накодить нечто подобное. НО! Был я тогда еще тем говнокодером, по этому подобное я не мог сделать. Но время шло, учился кодить и вдруг внезапно вспомнил я о той штуке. Закодил, поставил и забыл. Но вот еще время прошло! И снова смотрев на свою папочку с программами наткнулся на свой теперешний говнокод. Ну и переписал с новыми фичами (в виде поддержки полупиксилов, что принесло более красивый вид и точность графика) и адекватным кодом (хотя в некоторых моментах я все-же не знал как лучше поступить, и возможно сделал не совсем правильно) : Слева - старая версия проги, а справа - новая. График показывает процент энергии от объема, выделяя цветом разницу доступной энергии прошлой точки графика: Point.Y = math.ceil((energy / capacity) * ((ResY-BarY) * 2)) Пройдемся по настройкам: ​Цвета настраиваются ровно так-же, как и в прошлой проги. local ResX, ResY = 100, 50 local TimeSleep = 2 local BarY = 3/1.5 local lastX = -1 local drawBar = true local nameComponent = "mfsu" Первые переменные ResX и ResY - разрешение экрана. Можно спокойно настраивать, но только отключив бар сверху. TimeSleep​ - время ожидания после прорисовки столбца. В общем скорость движения графика. BarY​ и lastX лучше не трогать) drawBar​ - отвечает за отображение графика сверху. nameComponent​ - а вот эта переменная позволяет подключить не только MFSU'шки (да-да, можно подключить хоть 60 их к серверу), но и другие энергохранилища из IC2. Ссылочки на программу: https://lokin135server.ru/PublicRepository/mfsuDrawerEU/mfsu4M.lua (да да, я так и не разобрался с кодировкой) pastebin get XygafBBK Прошлые версии можете глянуть на сервере, но сразу предупреждаю: вы можете получить психическую травму от моего старого кода ​ лучше не смотрите :P Жду конструктивной критики. Не, ну идеального кода не бывает, верно?
  8. lokin135

    Игра "Угадай число"

    Наверно, я слишком резко заявил о проблемах) Сорян))
  9. lokin135

    Игра "Угадай число"

    Куда более конструктивная критика, чем сказал я) Собственна да, игру пилить и пилить.
  10. lokin135

    Игра "Угадай число"

    Так а не проще-ли юзать функции, а не goto? Я вот лично вообще не понимаю для чего они бывают нужны. Код вообще не читаемый, переменные не локальные и имеют... прямо скажем хреновое название. Так сделал-бы проверку, ну. Код лучше выкладывать на pastebin, а не прямо в сообщение
  11. В старой версии у меня сохранялся график, ага. Но в новой я подумал что если обойдусь без этого - сделаю программу менее требовательной, и по этому сразу рисовал после вычисления. Мне в голову почему-то не пришла эта мысль) Сделать не сложно, а выглядит солидно. Спасибо за идею, возможно когда-нибудь (~2 недели) начну писать и выложу на CC. Наверно
  12. Ух! Совсем забыл написать об этом. График показывает процент энергии, которая хранится от общей вместимости: Point.Y = math.ceil((energy / capacity) * ((ResY-BarY) * 2)) Объясню: energy​ - сумма хранимой энергии во всех mfsu'шек capacity​ - сумма вместимости во всех mfsu'шек ResY​ = ResolutionY - разрешение экрана по Y BarY​ - размер бара по Y ((ResY-BarY) * 2)​ - умножаем на два, потому-что юзаем полупиксили.
  13. Кстати говоря... Сделал так-же, когда нужно было выводить единый график MFSU'шек: http://computercraft.ru/topic/2345-vyvedenie-grafika-energii-na-monitor/
  14. Там мои прожки валяются, но далеко не все) Основную массу стоит переписать - кол-во говнокода многовато относительно последних прог))
×