Laine_prikol
-
Публикации
155 -
Зарегистрирован
-
Посещение
-
Победитель дней
3
Сообщения, опубликованные пользователем Laine_prikol
-
-
Надо ещё в дискорд сделать
-
Сделайте порт на OC
-
Фигня в том, как уже заметили в Ирке, что большинство публичных IRC-серверов тупо забанят или кикнут клиента за массовый флуд.
А такой бот несомненно будет флудить.
Поэтому есть вероятность, что потребуется поднять свой IRC сервер. А тут уже вопрос, что удобнее - возиться со своим сервером, или воспользоваться мостом Рида.
-
А в чём сложность то? В том, что не нужно напрягаться, а нужно жмакать на кнопку пока не выиграешь? Не видел пока не одной игры, где бы сложность заключалось только в везении. Хотя...

Ты чё фактарио не сложное
-
Иногда надо связать несколько компьютеров на большом расстоянии или между мирами, или даже между серверами. Так как у нас есть интернет-карта, можно провернуть несложный хак - пустить информацию через внешний сервер. Но чтобы не писать серверную часть, можно использовать готовый протокол с готовыми серверами. Получается крутая связанная карта для многих компов.
Данная программа реализует IRC мост, по которому могут общаться не только опенкомпы, но и любые устройства с интернетом.
Например, можно с мобильника дать команду своим компьютерам на нескольких игровых серверах.
Использование:
Скачать программу pastebin get CmLFFF7g /bin/imodem.lua
Проверить наличие интернет-карты в компьютере
Запустить программу imodem
В течении некоторого времени будет устанавливаться связь, а затем можно работать с модемом.
Чтобы послать сообщение всем устройствам на канале, есть функция imodem.broadcast( сообщение: строка )
Чтобы послать сообщение по определенному адресу - imodem.send( получатель: строка, сообщение: строка )
Для разрыва связи и прекращения работы - imodem.stop()
А чтобы принимать сообщения, достаточно ловить событие modem_message, как у обычных модемов.
Адрес сервера и канал можно изменить в коде программы, желательно иметь сервер без обрезания ников и защиты от флуда.
А зачем IRC? Нельзя же просто обычным http воспользоваться? Например на хостинг залить какой-нибудь txt в котором будут команды, а через какой нибудь фронт на php сделать редактирование этого txt, и чтобы при каждой скачки файла с сервера, OpenComputers сравнивал что написано в этом файле
-
1
-
-
Все-таки это не очень важно но, я уже на ютубе писал что: 160х50 точек это некорректно, разрешение монитора ОС: 160х50 Символов, а не точек. Символ в ОС вроде 8х4 точек.
-
1
-
-
-
Изменил pass() на lock(), тогда выдает следующее... <img src="http://uploadme.ru/images/2017/05/05/IMG_5584.jpg" alt="IMG_5584.jpg" border="0" />
Пробовал вроде что-то похожее впихивать в начало. Тогда та же ошибка, только "require" в кавычках. Завтра попробую вписать твой вариант в начало, просто боюсь, что тоже не сработает... уже не первый день пытаюсь разобраться, что-то в инете найти - все вбестолку, расстроился очень.
Вместо read() надо io.read() И вообще мне кажется что ты хочешь запустить программу для ComputerCraft на OpenComputers. Там многое надо менять. И ещё на пожалуйста делай скриншоты на F2, не фоткай экран. Хоть там видно всё, но лучше делай скрины так легче будет
-
Сделай что-то типа edit только с печатью OpenPrinter тогда круто будет!
-
Ну, придумать самому, или реквизировать вот отсюда.
Ух ты, там оказывается в этой функции можно ставить какие либы будут загружается при запуске OpenOS
-
https://pastebin.com/RPf0PFRP вот пастбин1) Кинь код на pastebin или еще куда-нибудь, чтобы у всех, кто хочет помочь тебе, была возможность видеть код полностью. Иначе тяжело разбираться, что у тебя не работает.
2) Приведи отступы в порядок. Тяжело же разбираться с этим:

-
Сделал, теперь не очищается экран при переходе в папку вот код:А где обнуляется переменная tempload?
function realoadlist() getfiles(directory) gpu.fill(1, 1, w, h, " ") for i = 1,24 do gpu.set(1, i, "█") gpu.set(2, i, fileindex[i]) if filesystem.isDirectory(fileindex[i]) then gpu.setForeground(0xfdff00) gpu.set(1, i, "█") gpu.setForeground(0xffffff) end end end
while true do local id, _, x, y = event.pull("touch") if id == "touch" then if filesystem.isDirectory(fileindex[y]) == true then gpu.fill(1, 1, w, h, " ") directory = fileindex[y] getfiles(directory) realoadlist() end if filesystem.isDirectory(fileindex[y]) == false then os.execute(fileindex[y]) end if x == 1 and y == 25 then getfiles(directory) realoadlist() end end endP.S С term.clear() тоже самое -
А функция чтения содержимого директории разве не должна очищать таблицу с именами перед занесением в нее новых?
Всё равно не работает вот сделал очистку таблицы:
function getfiles(dir) for file in filesystem.list(dir) do tempload = tempload + 1 fileindex[tempload] = nil fileindex[tempload] = file end end
И другой вариант просто превращал все файлы в none:
for k in pairs (fileindex) do fileindex [k] = "none" end -
-
Делаю файловый менеджер, когда нажимаю на папку нечего не обновляется и не меняются папки?
Код нажатия:while true do local id, _, x, y = event.pull("touch") if id == "touch" then if filesystem.isDirectory(fileindex[y]) == true then directory = fileindex[y] getfiles(directory) realoadlist() end if filesystem.isDirectory(fileindex[y]) == false then os.execute(fileindex[y]) end if x == 1 and y == 25 then getfiles(directory) realoadlist() end end end
Код чтение файлов:function getfiles(dir) for file in filesystem.list(dir) do tempload = tempload + 1 fileindex[tempload] = file end end
Код отрисовки:function realoadlist() getfiles(directory) term.clear() for i = 1,24 do gpu.set(1, i, "█") gpu.set(2, i, fileindex[i]) if filesystem.isDirectory(fileindex[i]) then gpu.setForeground(0xfdff00) gpu.set(1, i, "█") gpu.setForeground(0xffffff) end end end
-
Наверное коррумпированный.
Командных блоков нет, но вы держитесь.
Может ещё поддержку дебаг карты сделаюUPD: Сделал поддержку дебаг карты
-
Вот бы цветной режим завезли
-
Классная программа,вот только командный блок на сервере никак не возьмешь.
Можно найти, когда админ например механизм ломает какой-нибудь. Тут больше проблема что на сервере у тебя нету доступа к конфигу мода, а по-умолчанию в моде отключён командный блок
-
Программа позволяет рисовать блоками в воздухе при помощи командного блока подключённого через адаптер или дебаг-карты. В программе есть 8 блоков которыми можно рисовать. Также при выходе все блоки удаляются. Чтобы программа работала, надо включить поддержку командного блока в конфиге мода на 543 строке:
# Whether to enable the command block driver. Enabling this allows # computers to set and execute commands via command blocks next to # adapter blocks. The commands are run using OC's general fake player. enableCommandBlockDriver=trueЗагрузка и использование:
pastebin get 060LXELq blockpaint.lua
Поставьте командный блок и адаптер вот в таком положении:
или просто вставьте debug-карту в ваш компьютер
Запускаете программу и рисуете!
Обновление
Добавлена поддержка debug-карты
-
5
-
-
Я думаю это в большей степени задача прикладного программиста, а не системы.
В любой нормальной системе есть оповещение что недостаточно места.
-
У меня не получилось установить оное ингейм, валится на подгрузке иконки. Пока в код не лез, но вот скрин проблемы:
P.s. До меня внезапно дошло, что может не хватать места. Ща вставлю второй хард и попробую снова.
[uPD] Да, именно так, теперь вроде нормально поставилось.
Почему в OC не сделают адекватную ошибку о том что нет места
-
Надо не "конвертировать в нормальный вид" (неужели буквенный хаос на скринах - это нормально?), а парсить HTML теги и потом на основе них рендерить страничку.
По поводу цветов и CSS - это всё отмазки. Естественно ты не сможешь сделать рендер как в современном браузере, но это не должно тебя останавливать.
Для примера - глянь на такую штуку как консольный браузер W3M.
Google:

А вот какой-то текстовый сайт. Он на чешском языке, но это не важно. Важно то, что тут хорошо видна CSS разметка текста:

Конечно этот браузер будет нормально работать с сайтами 1995 года или с оченнннь простой вёрсткой. Вот например наш форум открытый в примерно таком браузере
Вёрстка летит куда-то в ад. Конечно, всё равно это лучше чем у меня в OC. Но ресурсов даже на простую вёрстку не хватает, потому-что в самой OpenOS передача файлов ограничена, и если загружать что-то более-менее нормальное падает либа buffer.lua
-
Какой нафиг браузер?
Браузер отображает документ из тегов, а не выкусывает их оттуда.
Тем более таким деревянным методом, есть циклы и таблицы, Карл.
P.S
А если кто - то будет давить на то что он луа не знаешь, так какого хрена браузеры писать если луа не знаешь?

Я даже специально в описании поставил кавычки - "Браузер html" это даже не браузер, а простой конвертер из html в нормальный для ОС вид. Да и всё-равно как говорилось ниже: ресурсов компов ОС не хватает чтобы нормально отображать html и css, не хватает ни цветов ни оперативки, для нормального интернета сейчас нужно не более 1 гб оперативной памяти, и 24 битный цвет.
-
Эпично, конечно опенкомутерс не предназначен для таких вещей

Не работает event.shouldInterrupt()
в Разные (отсортировать)
Опубликовано: · Изменено пользователем Laine_prikol
не могу запретить выход из программы по Ctrl+Alt+C. event.shouldInterrupt() не работает. Пробовал в цикле и без. вообще не работает!
local event = require "event" function event.shouldInterrupt() return false endMinecraft 1.11.2
OpenComputers 1.7.0.40. OpenOS 1.6.7