From 6e8fe4280dea338f11f23dd78624bf0eb79e0793 Mon Sep 17 00:00:00 2001 From: Brevven Date: Sun, 2 Jan 2022 13:42:29 -0800 Subject: [PATCH] rocket engine nozzle --- changelog.txt | 5 ++++ data-util.lua | 44 ++++++++++++++++++++++++++++++------ info.json | 6 ++--- zirconium-recipe-updates.lua | 3 +++ 4 files changed, 48 insertions(+), 10 deletions(-) diff --git a/changelog.txt b/changelog.txt index 72af29e..af3877b 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,9 @@ --------------------------------------------------------------------------------------------------- +Version: 0.4.0 +Date: 2021-01-03 + Changes: + - Tungsten sets basic rocket-engine-nozzle recipe, this mod updates it with zirconia +--------------------------------------------------------------------------------------------------- Version: 0.3.2 Date: 2021-12-31 Features: diff --git a/data-util.lua b/data-util.lua index f030e1d..b840c3d 100644 --- a/data-util.lua +++ b/data-util.lua @@ -8,6 +8,15 @@ local util = {} util.me = me util.get_setting = util.me.get_setting +util.titanium_plate = "" +util.titanium_processing = "" + +if mods["FactorioExtended-Plus-Core"] then + util.titanium_plate = "titanium-alloy" +else + util.titanium_plate = "titanium-plate" +end + function util.fe_plus(sub) if mods["FactorioExtended-Plus-"..sub] then return true @@ -334,7 +343,7 @@ function util.remove_raw(t, name) end -- Multiply energy required -function util.multiply_time(recipe, factor) +function util.multiply_time(recipe_name, factor) if me.bypass[recipe_name] then return end if data.raw.recipe[recipe_name] then multiply_time(data.raw.recipe[recipe_name], factor) @@ -351,19 +360,40 @@ function multiply_time(recipe, factor) end end +-- Add to energy required +function util.add_time(recipe_name, amount) + log("Doing ".. recipe_name) + log(amount) + if me.bypass[recipe_name] then return end + log(1) + if data.raw.recipe[recipe_name] then + add_time(data.raw.recipe[recipe_name], amount) + add_time(data.raw.recipe[recipe_name].normal, amount) + add_time(data.raw.recipe[recipe_name].expensive, amount) + end +end + +function add_time(recipe, amount) + if recipe then + if recipe.energy_required then + recipe.energy_required = recipe.energy_required + amount + end + end +end + -- Set recipe category -function util.set_category(recipe, category) +function util.set_category(recipe_name, category) if me.bypass[recipe_name] then return end - if data.raw.recipe[recipe] then - data.raw.recipe[recipe].category = category + if data.raw.recipe[recipe_name] then + data.raw.recipe[recipe_name].category = category end end -- Set recipe subgroup -function util.set_subgroup(recipe, subgroup) +function util.set_subgroup(recipe_name, subgroup) if me.bypass[recipe_name] then return end - if data.raw.recipe[recipe] then - data.raw.recipe[recipe].subgroup = subgroup + if data.raw.recipe[recipe_name] then + data.raw.recipe[recipe_name].subgroup = subgroup end end diff --git a/info.json b/info.json index 103851b..6efdfd0 100644 --- a/info.json +++ b/info.json @@ -1,6 +1,6 @@ { "name": "bzzirconium", - "version": "0.3.2", + "version": "0.4.0", "factorio_version": "1.1", "title": "Zirconium", "author": "Brevven", @@ -16,8 +16,8 @@ "? bzsilicon", "? bzlead", "? bztitanium >= 0.12.4", - "? bztungsten >= 0.2.1" + "? bztungsten >= 0.5.0" ], - "description": "Adds zircon, zirconia, zirconium, and cermet to the base game." + "description": "Adds zircon, zirconia, zirconium, and cermet to the base game.\n\nCompatible with Krastorio 2, Space Exploration, FE+, and more. A standalone piece of BZ Mods." } diff --git a/zirconium-recipe-updates.lua b/zirconium-recipe-updates.lua index 4cf7b0e..86965eb 100644 --- a/zirconium-recipe-updates.lua +++ b/zirconium-recipe-updates.lua @@ -25,6 +25,9 @@ if not mods.bztungsten then util.add_ingredient("nuclear-fuel", "zirconium-plate", 1) end +util.add_ingredient("rocket-engine-nozzle", "zirconia", 1) +util.add_to_product("rocket-engine-nozzle", "rocket-engine-nozzle", 1) +util.add_time("rocket-engine-nozzle", 5) if util.me.use_cermet() then util.add_ingredient("rocket-control-unit", "cermet", 1)