lokin135 24 Опубликовано: 27 мая, 2018 (изменено) Снова привет! Когда-то давным-давно увидел я дома у 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 Жду конструктивной критики. Не, ну идеального кода не бывает, верно? Изменено 10 июня, 2018 пользователем lokin135 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 27 мая, 2018 Ну и переписал с новыми фичами (в виде поддержки полупиксилов, что принесло более красивый вид и точность графика) и адекватным кодом https://image.ibb.co/bRUYdJ/image_2018_05_27_20_19_24.png код не смотрел, но графически и визуально совершенно не понятно, что именно показывают эти персидские ковры. Если бы ты еще немного допилил бы свою прогу, и сделал нечто отдаленно подобное (спойлер ниже, по временным отрезкам сохранял бы сразу пару графиков, например, за сутки и за последний час, "прирост" за то же время двухцветным столбиком реализовал и прочее прочее), был бы совсем другой компот. И твоя прога была бы самой эпической на форуме, тем более, что ты еще и задействовал современную "полупиксельную технологию" . Но пока что она немного больше напоминает монгольскую вышивку, чем осмысленный график энергии в реакторе Но в целом хорошая работа. Молодец. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
lokin135 Автор темы 24 Опубликовано: 28 мая, 2018 не понятно, что именно показывают эти персидские ковры. Ух! Совсем забыл написать об этом. График показывает процент энергии, которая хранится от общей вместимости: Point.Y = math.ceil((energy / capacity) * ((ResY-BarY) * 2)) Объясню: energy - сумма хранимой энергии во всех mfsu'шек capacity - сумма вместимости во всех mfsu'шек ResY = ResolutionY - разрешение экрана по Y BarY - размер бара по Y ((ResY-BarY) * 2) - умножаем на два, потому-что юзаем полупиксили. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
lokin135 Автор темы 24 Опубликовано: 28 мая, 2018 сохранял бы сразу пару графиков В старой версии у меня сохранялся график, ага. Но в новой я подумал что если обойдусь без этого - сделаю программу менее требовательной, и по этому сразу рисовал после вычисления. за то же время двухцветным столбиком реализовал и прочее прочее Мне в голову почему-то не пришла эта мысль) Сделать не сложно, а выглядит солидно. Спасибо за идею, возможно когда-нибудь (~2 недели) начну писать и выложу на CC. Наверно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
lokin135 Автор темы 24 Опубликовано: 10 июня, 2018 Ссылки Обновил ссылку на мой сервер. Перешел на https и купил домен, по этому старая ссылка не работала Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах