diff --git a/data-util.lua b/data-util.lua index 87ba006..c290585 100644 --- a/data-util.lua +++ b/data-util.lua @@ -23,6 +23,10 @@ else util.titanium_processing = "titanium-processing" end +util.vacuum_icon = { icon="__base__/graphics/icons/fluid/steam.png", tint={r=.1, g=.1, b=.5, a=.5} } +util.vacuum_icon_small = { icon="__base__/graphics/icons/fluid/steam.png", tint={r=.1, g=.1, b=.5, a=.5}, scale=0.25, shift={-8,-8}, } +util.vacuum_vis = {r=.1, g=.1, b=.5} + function util.item(item, quantity) if not quantity then quantity = 1 @@ -30,6 +34,13 @@ function util.item(item, quantity) return {type="item", name=item, amount=quantity} end +function util.fluid(fluid, quantity) + if not quantity then + quantity = 10 + end + return {type="fluid", name=fluid, amount=quantity} +end + function util.se6() return mods["space-exploration"] and mods["space-exploration"] >= "0.6" end diff --git a/locale/en/titanium.cfg b/locale/en/titanium.cfg index c53f19a..0dfb9dd 100644 --- a/locale/en/titanium.cfg +++ b/locale/en/titanium.cfg @@ -19,6 +19,7 @@ enriched-titanium=Can be efficiently smelted into titanium plates [fluid-name] molten-titanium=Molten titanium +vacuum=Vacuum [technology-name] titanium-processing=Titanium Processing @@ -32,10 +33,14 @@ enriched-titanium=Enrich titanium ore, purifying with hydrogen chloride [fluid=h [recipe-name] enriched-titanium=__ITEM__enriched-titanium__ dirty-water-filtration-titanium=Filter dirty water [item=titanium-ore] +titanium-ore-from-stone=__ITEM__titanium-ore__ from stone +titanium-sublimation=Titanium sublimation +titanium-in-foundry=__ITEM__titanium-plate__ [recipe-description] enriched-titanium=Enrich titanium ore, purifying with hydrogen chloride [fluid=hydrogen-chloride] and water [fluid=water], improving the final yield. Produce dirty water [fluid=dirty-water] as a byproduct. dirty-water-filtration-titanium=Filter dirty water, giving titanium ore [item=titanium-ore] and stone [item=stone] (probabilistically). +titanium-in-foundry=Smelt titanium in an oxygen-free environment # Settings diff --git a/titanium-recipe-updates.lua b/titanium-recipe-updates.lua index bdd19f2..24a3a9e 100644 --- a/titanium-recipe-updates.lua +++ b/titanium-recipe-updates.lua @@ -9,6 +9,10 @@ if mods["space-age"] then util.add_ingredient("superconductor", util.me.titanium_plate, 1) util.add_product("scrap-recycling", {type="item", name=util.me.titanium_plate, amount=1, probability=0.01}) + util.add_unlock("foundry", "titanium-sublimation") + util.add_unlock("foundry", "titanium-in-foundry") + util.add_unlock("foundry", "titanium-ore-from-stone") + -- In Space Age progression, it makes sense to insert titanium at this point in belts and inserters util.replace_ingredient("express-transport-belt", "iron-gear-wheel", "titanium-plate", 2) util.replace_ingredient("bulk-inserter", "iron-gear-wheel", "titanium-plate", 3) diff --git a/titanium-recipe.lua b/titanium-recipe.lua index a155812..9ba1505 100644 --- a/titanium-recipe.lua +++ b/titanium-recipe.lua @@ -33,7 +33,7 @@ data:extend({ } or nil), enabled = false, energy_required = mods.Krastorio2 and 16 or 8, - ingredients = {util.item("titanium-ore", mods.Krastorio2 and 10 or 5)}, + ingredients = {util.item("titanium-ore", mods.Krastorio2 and 10 or (mods["space-age"] and 10 or 5))}, results = {mods.Krastorio2 and {type="item", name= util.me.titanium_plate, amount_min=2, amount_max=3} or util.item(util.me.titanium_plate)}, -- expensive = -- { @@ -95,3 +95,78 @@ data:extend({ -- } or nil, }) end +if mods["space-age"] then +data:extend({ + { + type = "recipe", + name = "titanium-ore-from-stone", + main_product = "titanium-ore", + category = "chemistry", + subgroup = "vulcanus-processes", + order = "d[titanium-ore]", + icons = { + { icon = "__bztitanium__/graphics/icons/titanium-ore.png", icon_size = 64, icon_mipmaps = 3}, + { icon = "__base__/graphics/icons/stone.png", icon_size = 64, scale = 0.25, shift = {-8, -8}}, + }, + enabled = false, + energy_required = 1, + ingredients = {util.item("stone", 3), util.fluid("sulfuric-acid", 10)}, + results = {util.item("titanium-ore")}, + }, + { + type = "recipe", + name = "titanium-sublimation", + main_product = "vacuum", + category = "chemistry", + subgroup = "vulcanus-processes", + order = "d[titanium-sublimation]", + icons = { + util.vacuum_icon, + { icon = "__bztitanium__/graphics/icons/titanium-plate.png", icon_size = 64, scale=0.25, icon_mipmaps = 3, shift = {-8, -8}}, + }, + enabled = false, + energy_required = 2, + ingredients = {util.item("titanium-plate")}, + results = { + util.fluid("vacuum", 40), + util.item("stone", 1), + }, + show_amount_in_title = false, + }, + { + type = "recipe", + name = "titanium-in-foundry", + main_product = util.me.titanium_plate, + category = "metallurgy", + subgroup = "vulcanus-processes", + order = "d[titanium-ore]", + icons = { + { icon = "__bztitanium__/graphics/icons/titanium-plate.png", icon_size = 64, icon_mipmaps = 3}, + util.vacuum_icon_small, + }, + enabled = false, + energy_required = 2, + ingredients = { + util.item("titanium-ore", 2), + util.fluid("vacuum"), + }, + results = {util.item("titanium-plate")}, + }, + { + type = "fluid", + name = "vacuum", + icons = { util.vacuum_icon, }, + visualization_color = util.vacuum_vis, + subgroup = "fluid", + order = "d[vacuum]", + default_temperature = 1500, + max_temperature = 2000, + gas_temperature = 0, + heat_capacity = "0.01kJ", + base_color = {0.9, 0.9, 0.9}, + flow_color = {0.8, 0.8, 0.9}, + auto_barrel = false, + }, + + }) +end