From 6891da43b38f5eaeeec2082186a76d0cff71474d Mon Sep 17 00:00:00 2001 From: ubq323 Date: Thu, 4 Aug 2022 15:54:49 +0100 Subject: storage --- storage.lua | 39 +++++++++++++++++++++++++++------------ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/storage.lua b/storage.lua index 97796c5..20fe3a4 100644 --- a/storage.lua +++ b/storage.lua @@ -8,17 +8,32 @@ local chest_types = { "minecraft:ironchest_iron", } -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, - } +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 +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 -return chests + -- cgit v1.2.3