Use additional_categories for quality assembling

This commit is contained in:
Simon Brodtmann 2025-12-09 00:09:32 +01:00
parent e03f854222
commit 3c222237ce

View file

@ -77,7 +77,8 @@ QualityAssembler.EntityBuilder:new()
crafting_speed = 4,
module_slots = 6,
allowed_effects = { "consumption", "pollution", "quality" },
effect_receiver = { base_effect = { quality = 3.5 } }
effect_receiver = { base_effect = { quality = 3.5 } },
crafting_categories = { "quality-assembling" }
})
QualityAssembler.ItemBuilder:new():apply()
@ -91,7 +92,8 @@ QualityAssembler.RecipeBuilder:new()
{ type = "item", name = "quantum-processor", amount = 10 }
})
:apply({
category = "electromagnetics-or-quality-assembling",
category = "electromagnetics",
additional_categories = { "quality-assembling" }
})
QualityAssembler.TechnologyBuilder:new()
@ -147,71 +149,49 @@ data:extend({
},
research_trigger = { type = "craft-item", item = "gold-quality-catalyst", count = 10000 },
prerequisites = { "experienced-quality-assembling-1" }
},
{
type = "recipe-category",
name = "quality-assembling"
}
})
local function convert_category(name)
local quality_name = name .. "-or-quality-assembling"
data:extend({
{
type = "recipe-category",
name = quality_name
}
})
for _, assembler in pairs(data.raw["assembling-machine"]) do
if assembler.crafting_categories and table.contains(assembler.crafting_categories, name) then
table.insert(assembler.crafting_categories, quality_name)
end
end
for _, character in pairs(data.raw["character"]) do
if character.crafting_categories and table.contains(character.crafting_categories, name) then
table.insert(character.crafting_categories, quality_name)
end
end
table.insert(data.raw["assembling-machine"]["quality-assembler"].crafting_categories, quality_name)
local function qa(recipeName)
local recipe = data.raw.recipe[recipeName]
recipe.additional_categories = recipe.additional_categories or {}
table.insert(recipe.additional_categories, "quality-assembling")
end
convert_category("wood-processing-or-assembling")
convert_category("metallurgy-or-assembling")
convert_category("metallurgy")
convert_category("electronics")
convert_category("electronics-or-assembling")
convert_category("electromagnetics")
convert_category("organic-or-assembling")
convert_category("crafting")
convert_category("cryogenics-or-assembling")
-- Lignumis
data.raw.recipe["lumber-mill"].category = "wood-processing-or-assembling-or-quality-assembling"
qa("lumber-mill")
-- Nauvis
data.raw.recipe["logistic-robot"].category = "crafting-or-quality-assembling"
data.raw.recipe["construction-robot"].category = "crafting-or-quality-assembling"
data.raw.recipe["roboport"].category = "crafting-or-quality-assembling"
data.raw.recipe["speed-module-3"].category = "electronics-or-quality-assembling"
data.raw.recipe["productivity-module-3"].category = "electronics-or-quality-assembling"
data.raw.recipe["efficiency-module-3"].category = "electronics-or-quality-assembling"
data.raw.recipe["rocket-silo"].category = "crafting-or-quality-assembling"
data.raw.recipe["cargo-bay"].category = "crafting-or-quality-assembling"
data.raw.recipe["asteroid-collector"].category = "crafting-or-quality-assembling"
data.raw.recipe["thruster"].category = "crafting-or-quality-assembling"
qa("logistic-robot")
qa("construction-robot")
qa("roboport")
qa("speed-module-3")
qa("productivity-module-3")
qa("efficiency-module-3")
qa("rocket-silo")
qa("cargo-bay")
qa("asteroid-collector")
qa("thruster")
-- Vulcanus
data.raw.recipe["foundry"].category = "metallurgy-or-assembling-or-quality-assembling"
data.raw.recipe["big-mining-drill"].category = "metallurgy-or-quality-assembling"
qa("foundry")
qa("big-mining-drill")
-- Fulgora
data.raw.recipe["electromagnetic-plant"].category = "electronics-or-assembling-or-quality-assembling"
data.raw.recipe["lightning-collector"].category = "electromagnetics-or-quality-assembling"
data.raw.recipe["mech-armor"].category = "crafting-or-quality-assembling"
data.raw.recipe["quality-module-3"].category = "electronics-or-quality-assembling"
data.raw.recipe["recycler"].category = "crafting-or-quality-assembling"
qa("electromagnetic-plant")
qa("lightning-collector")
qa("mech-armor")
qa("quality-module-3")
qa("recycler")
-- Gleba
data.raw.recipe["biochamber"].category = "organic-or-assembling-or-quality-assembling"
data.raw.recipe["stack-inserter"].category = "crafting-or-quality-assembling"
data.raw.recipe["spidertron"].category = "crafting-or-quality-assembling"
qa("biochamber")
qa("stack-inserter")
qa("spidertron")
-- Aquilo
data.raw.recipe["cryogenic-plant"].category = "cryogenics-or-assembling-or-quality-assembling"
qa("cryogenic-plant")