Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function string.startswith(String,Start)
- return string.sub(String,1,string.len(Start))==Start
- end
- --[[ returns table of aspects--]]
- function scanItem(itemdata, network, analyzer)
- if not itemdata.is_item then
- return nil
- end
- fingerprint = itemdata.fingerprint
- print("Scanning ", fingerprint.id)
- if string.startswith(fingerprint.id, "Forestry:bee") then
- return nil
- end
- detail = network.getItemDetail(fingerprint)
- if detail == nil then
- return nil
- end
- detail = detail.all()
- network.exportItem(fingerprint, "UP", 1)
- res = nil
- if analyzer.hasItem() and analyzer.itemHasAspects() then
- res = analyzer.getAspectCount()
- end
- network.pullItem("UP", 1)
- if not (res == nil) then
- res.name = detail.display_name
- end
- return res
- end
- function compare(a, b)
- return a.count < b.count
- end
- arg = ...
- analyzer_side = "tt_aspectanalyzer_0"
- network_side = "back"
- network = peripheral.wrap(network_side)
- analyzer = peripheral.wrap(analyzer_side)
- if not (arg == nil) then
- result = {}
- item_list = network.getAvailableItems()
- for key, item in pairs(item_list) do
- aspects = scanItem(item, network, analyzer)
- if aspects and not (aspects[arg] == nil) then
- table.insert(result, {count = aspects[arg], name = aspects.name})
- end
- end
- print("Scanning complete")
- table.sort(result, compare)
- for i, v in ipairs(result) do
- print(v.count, " ", v.name)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement