From 9a9641b85ca4834ac33546a4c2fc804d03ac9d73 Mon Sep 17 00:00:00 2001 From: Brevven Date: Mon, 21 Sep 2020 00:11:53 -0700 Subject: [PATCH] allow some choice of mining fluid --- changelog.txt | 5 +++++ info.json | 2 +- locale/en/ore-refining.cfg | 13 +++++++++++++ settings.lua | 11 +++++++++++ titanium-ore.lua | 2 +- titanium-recipe-final.lua | 16 ++++++++++++++++ 6 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 settings.lua diff --git a/changelog.txt b/changelog.txt index 9514901..4b2bcc7 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,9 @@ --------------------------------------------------------------------------------------------------- +Version: 0.5.3 +Date: 2020-09-20 + Settings: + - Allow some choice of mining fluid. +--------------------------------------------------------------------------------------------------- Version: 0.5.2 Date: 2020-09-20 Features: diff --git a/info.json b/info.json index 18ee348..82cae84 100644 --- a/info.json +++ b/info.json @@ -1,6 +1,6 @@ { "name": "bztitanium", - "version": "0.5.2", + "version": "0.5.3", "factorio_version": "1.0", "title": "Titanium", "author": "Brevven", diff --git a/locale/en/ore-refining.cfg b/locale/en/ore-refining.cfg index 8589cb3..b541761 100644 --- a/locale/en/ore-refining.cfg +++ b/locale/en/ore-refining.cfg @@ -24,3 +24,16 @@ enriched-titanium=Enrich titanium to efficiently produce titanium plates [recipe-name] enriched-titanium=__ITEM__enriched-titanium__ dirty-water-filtration-titanium=Filter dirty water [item=titanium-ore] + + +# Settings + +[mod-setting-name] +bztitanium-mining-fluid=Experimental: Titanium mining fluid + +[mod-setting-description] +tbzitanium-mining-fluid=Choose which fluid to use when mining Titanium.\n[color=orange]Lubricant is recommended![/color]\n[color=red]This setting is experimental and might not be compatible.[/color] +[string-mod-setting] +bztitanium-mining-fluid-lubricant=Lubricant +bztitanium-mining-fluid-sulfuric-acid=Sulfuric Acid +bztitanium-mining-fluid-chlorine=Chlorine diff --git a/settings.lua b/settings.lua new file mode 100644 index 0000000..bfb0b8c --- /dev/null +++ b/settings.lua @@ -0,0 +1,11 @@ +data:extend( +{ + { + type = "string-setting", + name = "bztitanium-mining-fluid", + setting_type = "startup", + default_value = "lubricant", + allowed_values = (mods["Krastorio2"] and {"lubricant", "sulfuric-acid", "chlorine"} or {"lubricant", "sulfuric-acid"}), + order = "a1", + }, +}) diff --git a/titanium-ore.lua b/titanium-ore.lua index 177733e..9996501 100644 --- a/titanium-ore.lua +++ b/titanium-ore.lua @@ -27,7 +27,7 @@ data:extend( mining_particle = "titanium-ore-particle", mining_time = 2, fluid_amount=3, - required_fluid= "lubricant", + required_fluid=(settings.startup["bztitanium-mining-fluid"] and settings.startup["bztitanium-mining-fluid"].value or "lubricant"), result = "titanium-ore" }, collision_box = {{ -0.1, -0.1}, {0.1, 0.1}}, diff --git a/titanium-recipe-final.lua b/titanium-recipe-final.lua index 86057ba..f655716 100644 --- a/titanium-recipe-final.lua +++ b/titanium-recipe-final.lua @@ -78,4 +78,20 @@ if data.raw.item["memory-unit"] then end +-- Finalize tech tree based on settings and other dependent mods. +local mining_fluid +if settings.startup["bztitanium-mining-fluid"] then + mining_fluid = settings.startup["bztitanium-mining-fluid"].value +end +if mining_fluid == "chlorine" and data.raw.fluid["chlorine"] and mods["Krastorio2"] then + data.raw.technology["titanium-processing"].prerequisites = {"kr-fluids-chemistry"} + data.raw.technology["titanium-processing"].unit.ingredients = { + {"basic-tech-card", 1}, {"automation-science-pack", 1}, {"logistic-science-pack", 1}} +elseif mining_fluid == "sulfuric-acid" then + data.raw.technology["titanium-processing"].prerequisites = {"sulfur-processing"} + data.raw.technology["titanium-processing"].unit.ingredients = { + {"automation-science-pack", 1}, {"logistic-science-pack", 1}} +else + data.raw.technology["titanium-processing"].prerequisites = {"lubricant"} +end