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

InsuperablEx

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

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

  • Посещение

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

  1. Разобрался, спасибо за подсказку, надо было добавить условие if inv.getStackInInternalSlot(i) ~= nil then
  2. Нет, программа завершается без ошибок, а listener остаётся работать
  3. Если закомментировать этот блок кода, то цикл доходит до 81 if inv.getStackInInternalSlot(i).label == unSerMessage.getCountLabel then itemSize = itemSize + inv.getStackInInternalSlot(i).size tunnel.send(serialization.serialize(itemSize)) end
  4. Понимаю, но цикл завершается на 4-х судя по выводу print() если в инвентаре лежит 3 предмета
  5. local component = require("component") local event = require("event") local serialization = require("serialization") local robot = component.robot local tunnel = component.tunnel local inv = component.inventory_controller linkedCardAddress = '817a1dc5-324f-46f4-9a27-dfd6cce83d0a' -- Linked Card address function onMessage(_, _, address, _, _, message) if address == linkedCardAddress then local unSerMessage = serialization.unserialize(message) if unSerMessage.text == "get_count" then local itemSize = 0 for i = 1, robot.inventorySize() do print(i) if inv.getStackInInternalSlot(i).label == unSerMessage.getCountLabel then itemSize = itemSize + inv.getStackInInternalSlot(i).size tunnel.send(serialization.serialize(itemSize)) end end end end end event.listen("modem_message", onMessage) Цикл не проходит положенные 81 ячейку инвентаря. В чем дело?
×
×
  • Создать...