Перейти к содержимому
RAPD123

Информация об устройстве

Рекомендуемые сообщения

Я решил попробовать написать софт для 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'

Скриншоты на ПК и роботе:

status.thumb.png.409ad2b09e4bf528a9e7941375cdafc9.pngstatusbot.png.e2552b335eb2078818e26e12c8a6e2c5.png

Изменено пользователем RAPD123
Обновление

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ОЗУ в байтах неудобно, подели на тысячу, в килобайтах намного приятнее(и понятнее).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, BrightYC сказал:

ОЗУ в байтах неудобно, подели на тысячу, в килобайтах намного приятнее(и понятнее).

Спасибо за совет. Попробую написать код

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
13 минут назад, RAPD123 сказал:

Спасибо за совет. Попробую написать код

А чего там писать то? 
Всё же вроде просто:
print("Всего ОЗУ:", computer.totalMemory() / 1024)
print("Свободно ОЗУ:", computer.freeMemory() / 1024)

Изменено пользователем BrightYC

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, BrightYC сказал:

А чего там писать то? 
Всё же вроде просто:
print("Всего ОЗУ:", computer.totalMemory() / 1000)
print("Свободно ОЗУ:", computer.freeMemory() / 1000)

Всё так просто? Тогда в течении часа будет апдейт

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, BrightYC сказал:

А чего там писать то? 
Всё же вроде просто:
print("Всего ОЗУ:", computer.totalMemory() / 1000)
print("Свободно ОЗУ:", computer.freeMemory() / 1000)

1024

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Неплохо! Для робота можно информации чуть больше выводить, например объем инвентаря, его заряд. Ну и можно добавить информацию по количеству свободных компонентов, чтобы не получать перегрузку и экран смерти.

2 минуты назад, BrightYC сказал:

Всё же вроде просто:
print("Всего ОЗУ:", computer.totalMemory() / 1000)
print("Свободно ОЗУ:", computer.freeMemory() / 1000)

Мат часть подучи, не 1000 а 1024

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, NEO сказал:

1024

Ничего не знаю, в гуголе пишет 1000
63b7e5f2c70bcfe0543bf82ae06cb3e8.png

Изменено пользователем BrightYC

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, BrightYC сказал:

Ничего не знаю, в гуголе пишет 1000

Верь ему больше

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, BrightYC сказал:

Кому верить тогда?

1024. Но КиБ вроде 1000, а КБ 1024

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всё, посмотрел, действительно, 1024
Килоба́йт (русское обозначение: Кбайт; международное: Kbyte, KB)[1] — единица измерения количества информации, равная 1024 байт.
Не бейте пожалуйста

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, BrightYC сказал:

Ничего не знаю, в гуголе пишет 1000(Сам удивился, всегда думал что 1024, объясните, почему 1024, а не 1000)
63b7e5f2c70bcfe0543bf82ae06cb3e8.png

Если не хочешь знать, увы я ничем не помогу. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, NEO сказал:

Если не хочешь знать, увы я ничем не помогу. 

Хочу конечно, меня просто дезинформировали. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
6 минут назад, Asior сказал:

Для робота можно информации чуть больше выводить, например объем инвентаря, его заряд.

Я когда нибудь реализую это. Пока что немного лень)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, RAPD123 сказал:

Как можно убрать числа после точки?

Вообще это лечится 2 способами:

  • Перевод в другой тип данных tonumber(x) tostring(x)
  • Путем округления в большую или меньшую сторону math.ceil(x) math.floor(x)
  • Путем обрезания лишних частей (лень искать, сам найдешь)
2 минуты назад, RAPD123 сказал:

Я когда нибудь реализую это. Пока что немного лень)

Чего там реализовывать то? Пару условий да готово.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, BrightYC сказал:

Хочу конечно, меня просто дезинформировали. 

 

дело в том что в двоичных системах хранения данных принято считать объём памяти связывая его двойкой со степенью, 2^10 = 1024

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, Asior сказал:

Путем обрезания лишних частей (лень искать, сам найдешь)

local целое, дробное = math.modf(float)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, Asior сказал:

Вообще это лечится 2 способами:

  • Перевод в другой тип данных tonumber(x) tostring(x)
  • Путем округления в большую или меньшую сторону math.ceil(x) math.floor(x)
  • Путем обрезания лишних частей (лень искать, сам найдешь)

Чего там реализовывать то? Пару условий да готово.

Моему мозгу сложно продумать сейчас if'ы, then'ы и else'ы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...