hot metals support
This commit is contained in:
parent
50843bd6e1
commit
60fcf04cf0
4 changed files with 68 additions and 0 deletions
|
|
@ -5,6 +5,7 @@ Date: 2024-12-31
|
||||||
- Organotins will show up in a better location in places like Factoriopedia
|
- Organotins will show up in a better location in places like Factoriopedia
|
||||||
- Tweak bronze plate icon
|
- Tweak bronze plate icon
|
||||||
Features:
|
Features:
|
||||||
|
- Supports Hot metals mod.
|
||||||
- Add casting recipes for solder, and bronze if enabled.
|
- Add casting recipes for solder, and bronze if enabled.
|
||||||
---------------------------------------------------------------------------------------------------
|
---------------------------------------------------------------------------------------------------
|
||||||
Version: 2.0.0
|
Version: 2.0.0
|
||||||
|
|
|
||||||
32
compatibility/data/hot-metals.lua
Normal file
32
compatibility/data/hot-metals.lua
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
local util = require("data-util");
|
||||||
|
|
||||||
|
util.add_hot_metals({
|
||||||
|
{name="tin-plate", spoilTicks=20*60, icons={
|
||||||
|
{ icon = "__bztin__/graphics/icons/tin-plate.png", icon_size = 128},
|
||||||
|
{ icon = "__bztin__/graphics/icons/tin-plate.png", icon_size = 128, tint={.9,.2,0, .5}},
|
||||||
|
}},
|
||||||
|
{name="bronze-plate", spoilTicks=20*60, icons={
|
||||||
|
{ icon = "__bztin__/graphics/icons/bronze-plate.png", icon_size = 128},
|
||||||
|
{ icon = "__bztin__/graphics/icons/bronze-plate.png", icon_size = 128, tint={.9,.2,0, .5}},
|
||||||
|
}},
|
||||||
|
{name="tinned-cable", spoilTicks=20*60, icons={
|
||||||
|
{ icon = "__bztin__/graphics/icons/tinned-cable.png", icon_size = 64},
|
||||||
|
{ icon = "__bztin__/graphics/icons/tinned-cable.png", icon_size = 64, tint={.9,.2,0, .5}},
|
||||||
|
}},
|
||||||
|
{name="solder", spoilTicks=5*60, icons={
|
||||||
|
{ icon = "__bztin__/graphics/icons/solder.png", icon_size = 128},
|
||||||
|
{ icon = "__bztin__/graphics/icons/solder.png", icon_size = 128, tint={.9,.2,0, .5}},
|
||||||
|
}},
|
||||||
|
})
|
||||||
|
|
||||||
|
if HotMetals then
|
||||||
|
if not data.raw["recipe-category"]["advanced-crafting-hot"] then
|
||||||
|
data:extend({{
|
||||||
|
type="recipe-category",
|
||||||
|
name="advanced-crafting-hot",
|
||||||
|
}})
|
||||||
|
table.insert(HotMetals.craftingCategories, "advanced-crafting-hot")
|
||||||
|
util.add_crafting_category_if("assembling-machine", "advanced-crafting-hot", "advanced-crafting")
|
||||||
|
end
|
||||||
|
util.set_category("bronze-plate", "advanced-crafting-hot")
|
||||||
|
end
|
||||||
|
|
@ -165,6 +165,17 @@ function util.use_fluid_mining_final()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- If Hot metals mod is enabled, mark these metals as hot
|
||||||
|
function util.add_hot_metals(metals)
|
||||||
|
if HotMetals and HotMetals.items then
|
||||||
|
for _, metal in pairs(metals) do
|
||||||
|
if data.raw.item[metal] or (metal.name and data.raw.item[metal.name]) then
|
||||||
|
table.insert(HotMetals.items, metal)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
-- se landfill
|
-- se landfill
|
||||||
-- params: ore, icon_size
|
-- params: ore, icon_size
|
||||||
|
|
@ -1133,6 +1144,28 @@ function util.add_crafting_category(entity_type, entity, category)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Add crafting category to all entities that have another category
|
||||||
|
function util.add_crafting_category_if(entity_type, category, other_category)
|
||||||
|
if data.raw[entity_type] and data.raw["recipe-category"][category] and data.raw["recipe-category"][other_category] then
|
||||||
|
for _, entity in pairs(data.raw[entity_type]) do
|
||||||
|
local found_good = false
|
||||||
|
local found_bad = false
|
||||||
|
for _, existing in pairs(entity.crafting_categories) do
|
||||||
|
if existing == other_category then
|
||||||
|
found_good = true
|
||||||
|
end
|
||||||
|
if existing == category then
|
||||||
|
found_bad = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if found_good and not found_bad then
|
||||||
|
table.insert(entity.crafting_categories, category)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
function util.add_to_ingredient(recipe, ingredient, amount, options)
|
function util.add_to_ingredient(recipe, ingredient, amount, options)
|
||||||
if not should_force(options) and bypass(recipe_name) then return end
|
if not should_force(options) and bypass(recipe_name) then return end
|
||||||
if data.raw.recipe[recipe] then
|
if data.raw.recipe[recipe] then
|
||||||
|
|
|
||||||
2
data.lua
2
data.lua
|
|
@ -3,8 +3,10 @@ require("tin-ore")
|
||||||
require("tin-recipe")
|
require("tin-recipe")
|
||||||
require("tin-enriched") -- Enriched Al for Krastorio 2
|
require("tin-enriched") -- Enriched Al for Krastorio 2
|
||||||
require("tin-recipe-se") -- Space Exploration
|
require("tin-recipe-se") -- Space Exploration
|
||||||
|
require("compatibility.data.hot-metals")
|
||||||
|
|
||||||
local util = require("data-util");
|
local util = require("data-util");
|
||||||
|
|
||||||
|
|
||||||
-- Must be last
|
-- Must be last
|
||||||
util.create_list()
|
util.create_list()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue