maxutka99 26 Опубликовано: 10 мая, 2019 Подскажите пожалуйста как открывать коробки утилисырья из IC2 роботом из OpenComputers Чтобы он брал коробки из сундука поворачивал направо и открывал их Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Asior 586 Опубликовано: 10 мая, 2019 --подарки сверху в сундук закидывать --сыпуху вниз будет скидывать local r = require('robot') local in_con = require('component').inventory_controller while true do r.select(1) if r.suckUp(64) then local rep = r.count(1) in_con.equip() for i=1,rep do while not r.use() do os.sleep(0) end end for i=1, r.inventorySize() do if r.count(i) > 0 then r.select(i) r.dropDown(64) end end else os.sleep(15) end end Всегда пожалуйста )) 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
serafim 272 Опубликовано: 10 мая, 2019 В сундуке только коробки утильсырья ? Как расположены сундуки вокруг робота? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 154 Опубликовано: 10 мая, 2019 3 часа назад, maxutka99 сказал: Подскажите пожалуйста как открывать коробки утилисырья из IC2 роботом из OpenComputers Чтобы он брал коробки из сундука поворачивал направо и открывал их А зачем поворачивать направо для открытия коробок? Открывать коробки можно, не отворачиваясь от сундука. А если сундук для готовой продукции расположен сверху или снизу, то можно вообще обойтись без поворотов. Открыть стак коробок можно, поместив их в руку робота и выполнив скрипт for i=1,64 do robot.use(nil,true) end. Также нужно позаботиться о том, чтобы в инвентаре робота было достаточно слотов для приёма результата распаковки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 154 Опубликовано: 10 мая, 2019 2 часа назад, maxutka99 сказал: как мне перемещать коробки из сундука в руку? Перемещение из сундука в руку выполняется в два этапа: перемещение коробок во внутренний инвентарь робота, а из него в руку: robot.suck() inventory_controller.equip() Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 154 Опубликовано: 10 мая, 2019 @Asior Дроп из коробок может не поместиться в инвентаре робота. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Asior 586 Опубликовано: 11 мая, 2019 12 часа назад, eu_tomat сказал: @Asior Дроп из коробок может не поместиться в инвентаре робота. У меня открытие по 1 стаку потом очистка. 16 слотов не хватит думаешь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 154 Опубликовано: 11 мая, 2019 45 минут назад, Asior сказал: У меня открытие по 1 стаку потом очистка. 16 слотов не хватит думаешь? Эксперимент: Скрытый текст Реальный ассортимент больше в несколько раз. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
serafim 272 Опубликовано: 11 мая, 2019 (изменено) Изменил логику работы, теперь открывает все коробки без ожидания поступления новых В приоритете выгрузка лута Скрытый текст --[[открытие коробок утильсырья в судук над роботом ложим коробки лут будет скидывать в низ ]]-- local com = require("component") local term = require("term") local box,drop = 0,0 if not com.isAvailable("robot") then print("только роботы могут использовать эту программу") os.exit() end local r = require('robot') if not com.isAvailable("inventory_controller") then print("для работы нужен контроллер инвентаря") os.exit() end local i_c = require('component').inventory_controller local function unload() print("складываю лут...") for i = 2, r.inventorySize() do if r.count(i) > 0 then drop = drop + r.count(i) r.select(i) if not r.dropDown() then print("в сундуке нет места :(") os.exit() end end end r.select(1) end while true do term.clear() print("всего открыто коробок "..box) print("всего скинуто лута "..math.ceil(drop).."\n") if r.count(1) > 0 or r.suckUp(64) then r.select(1) i_c.equip() r.select(2) print("открываю коробки...") while r.use() do box = box + 1 if r.count(r.inventorySize()-2) > 0 then unload() end end unload() else print("нет коробок, жду...") os.sleep(10) end end Изменено 12 мая, 2019 пользователем serafim Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
maxutka99 Автор вопроса 26 Опубликовано: 10 мая, 2019 как мне перемещать коробки из сундука в руку? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Подскажите пожалуйста как открывать коробки утилисырья из IC2 роботом из OpenComputers
Чтобы он брал коробки из сундука поворачивал направо и открывал их
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах