2021-04-24 01:16:49 +02:00
|
|
|
function filter_ingredients(ingredients, ingredient_filter)
|
2021-04-07 01:55:53 +02:00
|
|
|
local new_ingredient_list = {}
|
|
|
|
for _, ingredient_table in pairs(ingredients) do
|
2021-04-24 01:16:49 +02:00
|
|
|
if ingredient_filter[ingredient_table[1]] then -- name of ingredient_table
|
2021-04-07 01:55:53 +02:00
|
|
|
table.insert(new_ingredient_list, ingredient_table)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
return new_ingredient_list
|
|
|
|
end
|
|
|
|
|
|
|
|
function get_any_stack_size(name)
|
|
|
|
local item = game.item_prototypes[name]
|
|
|
|
if item ~= nil then
|
|
|
|
return item.stack_size
|
|
|
|
end
|
|
|
|
item = game.equipment_prototypes[name]
|
|
|
|
if item ~= nil then
|
|
|
|
return item.stack_size
|
|
|
|
end
|
|
|
|
-- failsafe
|
|
|
|
return 1
|
2021-07-04 15:25:56 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
-- from https://stackoverflow.com/a/40180465
|
|
|
|
-- split("a,b,c", ",") => {"a", "b", "c"}
|
|
|
|
function split(s, sep)
|
|
|
|
local fields = {}
|
|
|
|
|
|
|
|
sep = sep or " "
|
|
|
|
local pattern = string.format("([^%s]+)", sep)
|
|
|
|
string.gsub(s, pattern, function(c) fields[#fields + 1] = c end)
|
|
|
|
|
|
|
|
return fields
|
2021-04-07 01:55:53 +02:00
|
|
|
end
|