Merge pull request #20 from nihilistzsche/main

Everything efficiency.
This commit is contained in:
brevven 2023-02-11 21:33:48 -08:00 committed by GitHub
commit 9c1741ac20
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 33 additions and 5 deletions

View file

@ -8,17 +8,30 @@ if mods["crafting-efficiency-2"] then
for i, recipe in pairs(util.me.recipes) do for i, recipe in pairs(util.me.recipes) do
-- add remaining recipes with direct items to find the icons -- add remaining recipes with direct items to find the icons
if data.raw.recipe[recipe] and (data.raw.item[recipe] or data.raw.fluid[recipe]) if data.raw.recipe[recipe] and (data.raw.item[recipe] or data.raw.fluid[recipe])
and not eff_data[recipe] and and not eff_data[recipe] then
(data.raw.recipe[recipe].main_product or util.get_result_count(recipe) == 1) then local research_level = 1
if not data.raw.recipe[recipe].enabled then
for tech, tbl in pairs(data.raw.technology) do
for _, effect in pairs(tbl.effects or {}) do
if effect.type == "unlock-recipe" and effect.recipe == recipe then
research_level = math.min(#tbl.unit.ingredients, 6)
end
end
end
end
eff_data[recipe] = { eff_data[recipe] = {
max = 15, max = 15,
icon = data.raw.item[recipe] and data.raw.item[recipe].icon or data.raw.fluid[recipe].icon, icon = util.get_item_or_fluid_icon(recipe),
crafting = { efficiency = 10 }, crafting = { efficiency = 10 },
research = { level = 6 }, research = { level = research_level },
} }
if recipe:find("smelting") then
eff_data[recipe].crafting.efficiency = 20
eff_data[recipe].crafting.category = "smelting"
end
end end
end end
for recipe, d in pairs(eff_data) do for recipe, d in pairs(eff_data) do
log("Adding "..recipe.." crafting efficiency") log("Adding "..recipe.." crafting efficiency")
d.name = recipe:gsub("^%l", string.upper).." efficiency" d.name = recipe:gsub("^%l", string.upper).." efficiency"
CE_Add_Recipe(d, recipe) CE_Add_Recipe(d, recipe)

View file

@ -963,6 +963,19 @@ function util.set_item_icons(item_name, icons)
end end
end end
-- Gets an item or fluid icon
function util.get_item_or_fluid_icon(name)
icon = ""
if data.raw.item[name] then
icon = data.raw.item[name].icon
if not icon then icon = data.raw.item[name].icons[1].icon end
elseif data.raw.fluid[name] then
icon = data.raw.fluid[name].icon
if not icon then icon = data.raw.fluid[name].icons[1].icon end
end
return icon
end
function util.set_to_founding(recipe, options) function util.set_to_founding(recipe, options)
util.set_category(recipe, "founding", options) util.set_category(recipe, "founding", options)
util.set_subgroup(recipe, "foundry-intermediate", options) util.set_subgroup(recipe, "foundry-intermediate", options)

View file

@ -30,6 +30,7 @@ data:extend({
always_show_made_in = true, always_show_made_in = true,
always_show_products = true, always_show_products = true,
allow_productivity = true, allow_productivity = true,
subgroup = "raw-material",
ingredients = ingredients =
{ {
{type = "fluid", name = "sulfuric-acid", amount = 10}, {type = "fluid", name = "sulfuric-acid", amount = 10},

View file

@ -19,6 +19,7 @@ if string.sub(mods["space-exploration"], 1, 3) == "0.6" then
}) })
util.set_item_subgroup("zirconia", "zirconium") util.set_item_subgroup("zirconia", "zirconium")
util.set_item_subgroup("zirconium-plate", "zirconium") util.set_item_subgroup("zirconium-plate", "zirconium")
data.raw.recipe["zirconia"].subgroup = "zirconium"
data:extend({ data:extend({
{ {
type = "item", type = "item",