summaryrefslogtreecommitdiff
path: root/storage.lua
diff options
context:
space:
mode:
Diffstat (limited to 'storage.lua')
-rw-r--r--storage.lua39
1 files 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
+