fluid mining tech to replace uranium mining
and some cleanup and adjustment of fluid setting handling
This commit is contained in:
parent
99b2c9229c
commit
22076c0522
9 changed files with 86 additions and 23 deletions
|
|
@ -12,6 +12,19 @@ function decode(data)
|
||||||
return table.concat(str, "")
|
return table.concat(str, "")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function util.check_fluid_mining()
|
||||||
|
for i, force in pairs(game.forces) do
|
||||||
|
if (
|
||||||
|
(force.technologies["uranium-processing"] and force.technologies["uranium-processing"].researched) or
|
||||||
|
(force.technologies["titanium-processing"] and force.technologies["titanium-processing"].researched) or
|
||||||
|
(force.technologies["dummy-processing"] and force.technologies["dummy-processing"].researched) or
|
||||||
|
false
|
||||||
|
) then
|
||||||
|
force.technologies["fluid-mining"].researched = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function util.get_list()
|
function util.get_list()
|
||||||
local p = game.item_prototypes[me.name.."-list"]
|
local p = game.item_prototypes[me.name.."-list"]
|
||||||
if p then
|
if p then
|
||||||
|
|
|
||||||
|
|
@ -1 +1,3 @@
|
||||||
|
local util = require("control-util")
|
||||||
|
|
||||||
|
script.on_init(util.check_fluid_mining)
|
||||||
|
|
|
||||||
|
|
@ -49,12 +49,12 @@ require("titanium-recipe-final-modmash")
|
||||||
require("compatibility/248k-final")
|
require("compatibility/248k-final")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Second part of hack for endgame combat
|
-- Second part of hack for endgame combat
|
||||||
|
|
||||||
require("compatibility/titanium-endgame-combat-final")
|
require("compatibility/titanium-endgame-combat-final")
|
||||||
|
|
||||||
-- Hack for AutoTrainDepot
|
-- Hack for AutoTrainDepot
|
||||||
|
|
||||||
require("compatibility/titanium-auto-train-depot-final")
|
require("compatibility/titanium-auto-train-depot-final")
|
||||||
|
|
||||||
|
|
||||||
|
local util = require("__bztitanium__.data-util");
|
||||||
|
util.use_fluid_mining_final()
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,10 @@ util.get_setting = util.me.get_setting
|
||||||
util.titanium_plate = ""
|
util.titanium_plate = ""
|
||||||
util.titanium_processing = ""
|
util.titanium_processing = ""
|
||||||
|
|
||||||
|
util.A = {{"automation-science-pack", 1}}
|
||||||
|
util.AL = {{"automation-science-pack", 1}, {"logistic-science-pack", 1}}
|
||||||
|
util.ALC = {{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}}
|
||||||
|
|
||||||
if mods["FactorioExtended-Plus-Core"] then
|
if mods["FactorioExtended-Plus-Core"] then
|
||||||
util.titanium_plate = "titanium-alloy"
|
util.titanium_plate = "titanium-alloy"
|
||||||
else
|
else
|
||||||
|
|
@ -109,6 +113,54 @@ function util.contains(table, sought)
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Replace 'uranium-mining' tech with 'fluid-mining', defaulting to same costs
|
||||||
|
function util.add_fluid_mining()
|
||||||
|
if data.raw.technology["fluid-mining"] then return end
|
||||||
|
util.remove_raw("technology", "uranium-mining")
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "technology",
|
||||||
|
name = "fluid-mining",
|
||||||
|
icon = "__"..util.me.name.."__/graphics/technology/fluid-mining.png",
|
||||||
|
icon_size = 256,
|
||||||
|
effects =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "mining-with-fluid",
|
||||||
|
modifier = true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
prerequisites = {"chemical-science-pack", "concrete"},
|
||||||
|
unit =
|
||||||
|
{
|
||||||
|
count = 100,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{"automation-science-pack", 1},
|
||||||
|
{"logistic-science-pack", 1},
|
||||||
|
{"chemical-science-pack", 1}
|
||||||
|
},
|
||||||
|
time = 30,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Final fix to make sure nothing uses "uranium-mining"
|
||||||
|
function util.use_fluid_mining_final()
|
||||||
|
for i, tech in pairs(data.raw.technology) do
|
||||||
|
if tech.prerequisites then
|
||||||
|
for j, pre in pairs(tech.prerequisites) do
|
||||||
|
if pre == "uranium-mining" then
|
||||||
|
util.add_prerequisite(tech.name, "fluid-mining")
|
||||||
|
util.remove_prerequisite(tech.name, "uranium-mining")
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
-- se landfill
|
-- se landfill
|
||||||
-- params: ore, icon_size
|
-- params: ore, icon_size
|
||||||
|
|
|
||||||
|
|
@ -25,8 +25,10 @@ vacuum=Vacuum
|
||||||
titanium-processing=Titanium Processing
|
titanium-processing=Titanium Processing
|
||||||
enriched-titanium=Enriched Titanium
|
enriched-titanium=Enriched Titanium
|
||||||
titanium-matter-processing=Titanium conversion
|
titanium-matter-processing=Titanium conversion
|
||||||
|
fluid-mining=Fluid mining
|
||||||
|
|
||||||
[technology-description]
|
[technology-description]
|
||||||
|
fluid-mining=Allows supply of fluids to mining drills to enable mining of certain resources.
|
||||||
titanium-processing=Process titanium ore into titanium plates
|
titanium-processing=Process titanium ore into titanium plates
|
||||||
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.
|
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.
|
||||||
|
|
||||||
|
|
|
||||||
4
me.lua
4
me.lua
|
|
@ -4,7 +4,7 @@ me.name = "bztitanium"
|
||||||
me.titanium_plate = ""
|
me.titanium_plate = ""
|
||||||
me.titanium_processing = ""
|
me.titanium_processing = ""
|
||||||
|
|
||||||
if mods["FactorioExtended-Plus-Core"] then
|
if mods and mods["FactorioExtended-Plus-Core"] then
|
||||||
me.titanium_plate = "titanium-alloy"
|
me.titanium_plate = "titanium-alloy"
|
||||||
else
|
else
|
||||||
me.titanium_plate = "titanium-plate"
|
me.titanium_plate = "titanium-plate"
|
||||||
|
|
@ -17,7 +17,7 @@ me.recipes = {me.titanium_plate,
|
||||||
"molten-titanium",
|
"molten-titanium",
|
||||||
"enriched-titanium-smelting-vulcanite"}
|
"enriched-titanium-smelting-vulcanite"}
|
||||||
|
|
||||||
if mods["pyrawores"] then
|
if mods and mods["pyrawores"] then
|
||||||
me.titanium_processing = "titanium-mk01"
|
me.titanium_processing = "titanium-mk01"
|
||||||
else
|
else
|
||||||
me.titanium_processing = "titanium-processing"
|
me.titanium_processing = "titanium-processing"
|
||||||
|
|
|
||||||
|
|
@ -10,17 +10,6 @@ end
|
||||||
|
|
||||||
if mining_fluid == "chlorine" and data.raw.fluid["chlorine"] and mods["Krastorio2"] then
|
if mining_fluid == "chlorine" and data.raw.fluid["chlorine"] and mods["Krastorio2"] then
|
||||||
data.raw.technology[util.me.titanium_processing].prerequisites = {"kr-fluids-chemistry"}
|
data.raw.technology[util.me.titanium_processing].prerequisites = {"kr-fluids-chemistry"}
|
||||||
data.raw.technology[util.me.titanium_processing].unit.ingredients = {
|
data.raw.technology[util.me.titanium_processing].unit.ingredients = util.ALC
|
||||||
{"basic-tech-card", 1}, {"automation-science-pack", 1}, {"logistic-science-pack", 1}}
|
|
||||||
elseif mining_fluid == "sulfuric-acid" then
|
|
||||||
data.raw.technology[util.me.titanium_processing].prerequisites = {"uranium-mining"}
|
|
||||||
else
|
else
|
||||||
if not mods["Pre0-17-60Oil"] then
|
|
||||||
util.set_tech_recipe("solar-panel-equipment", {
|
|
||||||
{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
|
||||||
util.set_tech_recipe("belt-immunity-equipment", {
|
|
||||||
{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
|
||||||
util.set_tech_recipe("night-vision-equipment", {
|
|
||||||
{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
--
|
--
|
||||||
local util = require("__bztitanium__.data-util");
|
local util = require("__bztitanium__.data-util");
|
||||||
|
|
||||||
|
util.add_fluid_mining()
|
||||||
-- Space Age
|
-- Space Age
|
||||||
if mods["space-age"] then
|
if mods["space-age"] then
|
||||||
util.replace_some_ingredient("space-platform-foundation", "steel-plate", 15, util.me.titanium_plate, 15)
|
util.replace_some_ingredient("space-platform-foundation", "steel-plate", 15, util.me.titanium_plate, 15)
|
||||||
|
|
@ -18,11 +19,11 @@ if mods["space-age"] then
|
||||||
util.replace_ingredient("express-transport-belt", "iron-gear-wheel", "titanium-plate", 2)
|
util.replace_ingredient("express-transport-belt", "iron-gear-wheel", "titanium-plate", 2)
|
||||||
util.replace_ingredient("bulk-inserter", "iron-gear-wheel", "titanium-plate", 3)
|
util.replace_ingredient("bulk-inserter", "iron-gear-wheel", "titanium-plate", 3)
|
||||||
util.add_prerequisite("logistics-3", "titanium-processing")
|
util.add_prerequisite("logistics-3", "titanium-processing")
|
||||||
util.set_tech_recipe("logistics-3", {{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
util.set_tech_recipe("logistics-3", util.ALC)
|
||||||
util.add_prerequisite("bulk-inserter", "titanium-processing")
|
util.add_prerequisite("bulk-inserter", "titanium-processing")
|
||||||
util.set_tech_recipe("bulk-inserter", {{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
util.set_tech_recipe("bulk-inserter", util.ALC)
|
||||||
util.set_tech_recipe("inserter-capacity-bonus-1", {{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
util.set_tech_recipe("inserter-capacity-bonus-1", util.ALC)
|
||||||
util.set_tech_recipe("inserter-capacity-bonus-2", {{"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}})
|
util.set_tech_recipe("inserter-capacity-bonus-2", util.ALC)
|
||||||
end
|
end
|
||||||
|
|
||||||
if (not mods["bobplates"]) then
|
if (not mods["bobplates"]) then
|
||||||
|
|
@ -32,6 +33,10 @@ if (not mods["bobplates"]) then
|
||||||
-- Generally, steel-based equipment techs require solar panel tech, so only require
|
-- Generally, steel-based equipment techs require solar panel tech, so only require
|
||||||
-- titanium processing for that.
|
-- titanium processing for that.
|
||||||
util.add_prerequisite("solar-panel-equipment", util.me.titanium_processing)
|
util.add_prerequisite("solar-panel-equipment", util.me.titanium_processing)
|
||||||
|
util.set_tech_recipe("solar-panel-equipment", util.ALC)
|
||||||
|
util.set_tech_recipe("belt-immunity-equipment", util.ALC)
|
||||||
|
util.set_tech_recipe("night-vision-equipment", util.ALC)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- All equipment that uses steel now uses titanium. Who wants to carry around steel!
|
-- All equipment that uses steel now uses titanium. Who wants to carry around steel!
|
||||||
|
|
|
||||||
|
|
@ -68,7 +68,7 @@ data:extend({
|
||||||
} or nil,
|
} or nil,
|
||||||
},
|
},
|
||||||
research_trigger = {type="mine-entity", entity="titanium-ore"},
|
research_trigger = {type="mine-entity", entity="titanium-ore"},
|
||||||
prerequisites = {"lubricant"},
|
prerequisites = {"lubricant", "uranium-mining"},
|
||||||
order = "b-b"
|
order = "b-b"
|
||||||
},
|
},
|
||||||
-- mods["TheBigFurnace"] and {
|
-- mods["TheBigFurnace"] and {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue