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

danshat

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

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

  • Посещение

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

  1. Дак ты же не будешь лопатой алмазы копать. А землю киркой.
  2. Вот это вещь! Ее реально будет прикрутить. Особенно тогда, когда все написано за тебя)
  3. А как ты предлагаешь различать землю и руду с камнем?
  4. Программа, которая заставляет робота копать 3x3. Скриншоты работы: TODO: Программа заставляет робота копать слоями 3х3 и выбирать подходящий инструмент при вскопке. Скачать прототип можно вот где-то тут Что думаете?
  5. Есть программа, которая заставляет копать робота 3х3 "змейкой". Нужно сделать автоматическую выкладку ресурсов в сундук на самом верху дырки, если инвентарь заполнен ресурсами. Как это сделать? Нужно знать же положение робота относительно сундука? Или просто принудительно довести его до угла дыры и поднять вверх? А может принудительно поднять и проверять каждый блок геолайзером (сундук ли это )?
  6. Великолепная библиотека. Просто класс. Наверное лучшая, по простоте и вообще кастомизабельности таких не найти для меня. Пускай тру-мега-прогеры юзают forms или сами пишут, но я буду юзать сею либу.
  7. Класс. Программа сделана на отлично. Ну и при скане окружающих блоков мобы и игроки - по версии робота тоже блоки))
  8. Ну как я и предполагал, передаются в функцию и отбрасываем нижними подчеркиваниями. Спасибо. Завтра проверю на деле.
  9. Не понял, как пользоваться. В гугле очень туманные ответы на этот вопрос на зарубежном говоре. Если можно привязать функцию, как ей передать параметры от события? или они сами передаются? и отсеивать в самой функции эти параметры знаками "_" ?
  10. Спасибо за уточнения, кодер то я такой быдлокодер) Интересно, я видел же порт вашей библиотеки thread.lua, а можно как-то разделить рендер и ожидание события используя потоки? Чтобы одно в одном, другое в другом и друг другу не мешали?
  11. Есть следующий код: local component = require("component") local debug = component.debug local note = require("note") local event = require("event") local glass = component.glasses local chatbox = component.chat_box local isrender = 0 print("Скрипт запущен") local _,_,plr,msg = event.pull("chat_message") function render(timearg) return true end while true do timefunc = os.date("%H:%M:%S", os.time()) glass.removeAll() rect = glass.addRect() text = glass.addTextLabel() rect.setPosition(1,1) rect.setSize(50,100) rect.setColor(0.5,0.5,0.5) rect.setAlpha(0.3) text.setPosition(1,1) text.setText(timefunc) text.setAlpha(1) text.setColor(0,1,0) if plr == "danshat" and msg == "$$stop" then isrender = 0 glass.removeAll() end if plr == "danshat" and msg == "$$start" then isrender = 1 end if plr == "danshat" and msg == "$$quit" then glass.removeAll() print("Остановка..") return true end if debug.getWorld().isRaining() == true or debug.getWorld().isThundering() == true then debug.getWorld().setRaining(false) debug.getWorld().setThundering(false) print("Дождь отключен") note.play(90,0.5) end if debug.getPlayer("danshat").getHealth() <= 4 then debug.getPlayer("danshat").setHealth(20) print("Здоровье восстановлено") note.play(90,0.5) end end Собственно, небольшая программка на отдельном сервере по остановке дождя, восстановлению ХП и выводом времени на очки OpenGlasses. Дело в том, что при запуске рендер компонентов на OpenGlasses происходит один раз.. И больше никогда. Путем отсеивания выяснил, что проблема в event.pull(). Когда его нет, часы работают как часы. Но когда он есть, цикл while true do проворачивается один раз и останавливается. Возможное решение существует?
  12. Спасибо, все сработало, стоило подвинуть лишь plr на место второй _.
  13. Все равно не получается выудить сообщение и имя. local plr,_,msg = event.pull("glasses_chat_command") print(msg) print(plr) И в терминал идет не сообщение и имя отправившего, а адрес терминала очков, по всему видимому.
  14. У меня есть мод OpenPeripheral. Я пытался сделать обработку событий glasses_chat_message. Видел, как в некоторых программах используют $$команда (команда очков). Вроде ошибок не кидает, но вместо сообщения в терминал выводит какой-то адрес. Если это событие не работает в OpenComputers (а есть такое подозрение), то есть какие-то аналоги приема сообщений из чата (без Computronics)? А если нету и выход - использовать только Chat Box из Computronics, то как обработать ивент там?
×
×
  • Создать...