RAPD123 6 Опубликовано: 20 декабря, 2018 (изменено) Я решил попробовать написать софт для OpenComputers и написал небольшую софтину для получения информации о системе. Текущая версия: 2.1 Изменения в 2.1 (от 31.06.2019): Исправлена проблема с роботами Мелкие графические улучшения Изменения в 2.0 (от 21.12.2018): Появились некоторая дополнительная информация о роботах В конце вместо противного писка звук 1000 длиной 0.1 секунду и 1500 длиной в 0.15 секунд Во всех значениях пропали числа после запятой Изменения в 1.01 (от 20.12.2018): ОЗУ теперь в КБ Исходный код v 2.0: https://pastebin.com/6Nte3GZa Скачать v. 2.1 (нужна интернет карта): pastebin get 6Nte3GZa /bin/status.lua Исходный код v 1.01: https://pastebin.com/HtrMUj5p Скачать v 1.01 (нужна интернет карта): pastebin get HtrMUj5p /bin/status.lua Для запуска введите команду 'status' Скриншоты на ПК и роботе: Изменено 30 июня, 2019 пользователем RAPD123 Обновление 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 20 декабря, 2018 ОЗУ в байтах неудобно, подели на тысячу, в килобайтах намного приятнее(и понятнее). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RAPD123 Автор темы 6 Опубликовано: 20 декабря, 2018 1 час назад, BrightYC сказал: ОЗУ в байтах неудобно, подели на тысячу, в килобайтах намного приятнее(и понятнее). Спасибо за совет. Попробую написать код Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 20 декабря, 2018 (изменено) 13 минут назад, RAPD123 сказал: Спасибо за совет. Попробую написать код А чего там писать то? Всё же вроде просто: print("Всего ОЗУ:", computer.totalMemory() / 1024) print("Свободно ОЗУ:", computer.freeMemory() / 1024) Изменено 20 декабря, 2018 пользователем BrightYC 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RAPD123 Автор темы 6 Опубликовано: 20 декабря, 2018 Только что, BrightYC сказал: А чего там писать то? Всё же вроде просто: print("Всего ОЗУ:", computer.totalMemory() / 1000) print("Свободно ОЗУ:", computer.freeMemory() / 1000) Всё так просто? Тогда в течении часа будет апдейт Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 542 Опубликовано: 20 декабря, 2018 2 минуты назад, BrightYC сказал: А чего там писать то? Всё же вроде просто: print("Всего ОЗУ:", computer.totalMemory() / 1000) print("Свободно ОЗУ:", computer.freeMemory() / 1000) 1024 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Asior 586 Опубликовано: 20 декабря, 2018 Неплохо! Для робота можно информации чуть больше выводить, например объем инвентаря, его заряд. Ну и можно добавить информацию по количеству свободных компонентов, чтобы не получать перегрузку и экран смерти. 2 минуты назад, BrightYC сказал: Всё же вроде просто: print("Всего ОЗУ:", computer.totalMemory() / 1000) print("Свободно ОЗУ:", computer.freeMemory() / 1000) Мат часть подучи, не 1000 а 1024 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 20 декабря, 2018 (изменено) 4 минуты назад, NEO сказал: 1024 Ничего не знаю, в гуголе пишет 1000 Изменено 20 декабря, 2018 пользователем BrightYC Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Asior 586 Опубликовано: 20 декабря, 2018 Только что, BrightYC сказал: Ничего не знаю, в гуголе пишет 1000 Верь ему больше Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RAPD123 Автор темы 6 Опубликовано: 20 декабря, 2018 Как можно убрать числа после точки? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 20 декабря, 2018 Только что, Asior сказал: Верь ему больше Кому верить тогда? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RAPD123 Автор темы 6 Опубликовано: 20 декабря, 2018 Только что, BrightYC сказал: Кому верить тогда? 1024. Но КиБ вроде 1000, а КБ 1024 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 20 декабря, 2018 Всё, посмотрел, действительно, 1024 Килоба́йт (русское обозначение: Кбайт; международное: Kbyte, KB)[1] — единица измерения количества информации, равная 1024 байт. Не бейте пожалуйста Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 542 Опубликовано: 20 декабря, 2018 2 минуты назад, BrightYC сказал: Ничего не знаю, в гуголе пишет 1000(Сам удивился, всегда думал что 1024, объясните, почему 1024, а не 1000) Если не хочешь знать, увы я ничем не помогу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Chebuya 415 Опубликовано: 20 декабря, 2018 Только что, NEO сказал: Если не хочешь знать, увы я ничем не помогу. Хочу конечно, меня просто дезинформировали. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RAPD123 Автор темы 6 Опубликовано: 20 декабря, 2018 6 минут назад, Asior сказал: Для робота можно информации чуть больше выводить, например объем инвентаря, его заряд. Я когда нибудь реализую это. Пока что немного лень) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Asior 586 Опубликовано: 20 декабря, 2018 4 минуты назад, RAPD123 сказал: Как можно убрать числа после точки? Вообще это лечится 2 способами: Перевод в другой тип данных tonumber(x) tostring(x) Путем округления в большую или меньшую сторону math.ceil(x) math.floor(x) Путем обрезания лишних частей (лень искать, сам найдешь) 2 минуты назад, RAPD123 сказал: Я когда нибудь реализую это. Пока что немного лень) Чего там реализовывать то? Пару условий да готово. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 542 Опубликовано: 20 декабря, 2018 4 минуты назад, BrightYC сказал: Хочу конечно, меня просто дезинформировали. дело в том что в двоичных системах хранения данных принято считать объём памяти связывая его двойкой со степенью, 2^10 = 1024 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 542 Опубликовано: 20 декабря, 2018 1 минуту назад, Asior сказал: Путем обрезания лишних частей (лень искать, сам найдешь) local целое, дробное = math.modf(float) 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RAPD123 Автор темы 6 Опубликовано: 20 декабря, 2018 2 минуты назад, Asior сказал: Вообще это лечится 2 способами: Перевод в другой тип данных tonumber(x) tostring(x) Путем округления в большую или меньшую сторону math.ceil(x) math.floor(x) Путем обрезания лишних частей (лень искать, сам найдешь) Чего там реализовывать то? Пару условий да готово. Моему мозгу сложно продумать сейчас if'ы, then'ы и else'ы Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах