local M = peripheral.find"monitor" local sides = {} for _,s in ipairs(redstone.getSides()) do sides[s] = true end local chest_types = { "minecraft:ironchest_diamond", "minecraft:ironchest_iron", } local function scan() local chests = {} for _,ty in ipairs(chest_types) do -- don't want sides, only ones over a network local tc = { peripheral.find(ty,function(n,p) return not sides[n] end) } for _,chest in ipairs(tc) do local name = peripheral.getName(chest) chests[name] = { content = chest.list(), size = chest.size(), pphl = chest, } end end return chests end local function search(query) local chests = scan() for chname,chest in pairs(chests) do for i=1,chest.size do local it = chest.content[i] if it and it.name:lower():find(query) then print(it.name,"x"..it.count) end end end end search(arg[1])