From 0fc2f7e592af24211d3de62c1383959f94402841 Mon Sep 17 00:00:00 2001 From: PreLeyZero Date: Tue, 7 Jun 2022 20:16:16 +0200 Subject: [PATCH] new recipes for kerosene to rocket fuel --- changelog.txt | 9 ++++++ prototypes/248k_techs.lua | 8 ++++++ prototypes/electronic/el_solar.lua | 10 +++++-- prototypes/fi_recipes.lua | 40 ++++++++++++++++++++++++++ prototypes/fission/fi_crafter.lua | 9 ++++-- prototypes/gravitation/gr_crafter.lua | 9 ++++-- ressources/icons/fi_rocket_1.png | Bin 0 -> 8357 bytes ressources/icons/fi_rocket_2.png | Bin 0 -> 8332 bytes scripts/krastorio2/overhaul.lua | 2 ++ 9 files changed, 79 insertions(+), 8 deletions(-) create mode 100644 ressources/icons/fi_rocket_1.png create mode 100644 ressources/icons/fi_rocket_2.png diff --git a/changelog.txt b/changelog.txt index a995bf8..127fe86 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,13 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.26 +Date: 07.06.2022 + Features: + - added rocket fuel recipes from kerosene + + Bugfixes: + - added upgradeability for solar panel and assembling machines + - fixed startup bug with new roboport prototype attribute +--------------------------------------------------------------------------------------------------- Version: 1.0.25 Date: 01.06.2022 Features: diff --git a/prototypes/248k_techs.lua b/prototypes/248k_techs.lua index f6c3057..c94ba43 100644 --- a/prototypes/248k_techs.lua +++ b/prototypes/248k_techs.lua @@ -1728,6 +1728,14 @@ data:extend({ type = 'unlock-recipe', recipe = 'fi_solid_2_recipe', }, + { + type = 'unlock-recipe', + recipe = 'fi_rocket_fuel_1_recipe', + }, + { + type = 'unlock-recipe', + recipe = 'fi_rocket_fuel_2_recipe', + }, }, unit = { count = '100', diff --git a/prototypes/electronic/el_solar.lua b/prototypes/electronic/el_solar.lua index a1ba222..af0f061 100644 --- a/prototypes/electronic/el_solar.lua +++ b/prototypes/electronic/el_solar.lua @@ -54,14 +54,15 @@ data:extend({ }, max_health = 150, corpse = 'small-remnants', - collision_box = {{-1.4,-1.4},{1.4,1.4}}, - selection_box = {{-1.5,-1.5},{1.5,1.5}}, + collision_box = data.raw['solar-panel']['solar-panel'].collision_box, + selection_box = data.raw['solar-panel']['solar-panel'].selection_box, --energy energy_source = { type = 'electric', usage_priority = 'solar', input_flow_limit = '0W', }, + fast_replaceable_group = 'solar-panel', production = solar_output(), --picture picture = { @@ -73,3 +74,8 @@ data:extend({ map_color = {r=1.7,g=1.7,b=1.7}, }, }) + +if data.raw["solar-panel"]["solar-panel"] then + data.raw["solar-panel"]["solar-panel"].next_upgrade = "el_solar_entity" + data.raw["solar-panel"]["solar-panel"].fast_replaceable_group = "solar-panel" +end \ No newline at end of file diff --git a/prototypes/fi_recipes.lua b/prototypes/fi_recipes.lua index b4775b6..d604aae 100644 --- a/prototypes/fi_recipes.lua +++ b/prototypes/fi_recipes.lua @@ -1495,4 +1495,44 @@ data:extend({ subgroup = 'fluid-recipes', order = 'b[fluid-chemistry]-e[solid-fuel-from-heavy-oil]-b', }, + { + name = 'fi_rocket_fuel_2_recipe', + type = 'recipe', + enabled = 'false', + category = 'chemistry', + main_product = 'rocket-fuel', + icon = sprite('icons/fi_rocket_1.png'), + icon_size = 64, + ingredients = { + {type="fluid", name="el_desulfurized_kerosene", amount=30}, + {type="item", name="solid-fuel", amount=10}, + }, + results = { + {type="item", name="rocket-fuel", amount=1}, + }, + result_count = 1, + energy_required = 30, + subgroup = 'fluid-recipes', + order = 'b[fluid-chemistry]-e[solid-fuel-from-heavy-oil]-c', + }, + { + name = 'fi_rocket_fuel_1_recipe', + type = 'recipe', + enabled = 'false', + category = 'chemistry', + main_product = 'rocket-fuel', + icon = sprite('icons/fi_rocket_2.png'), + icon_size = 64, + ingredients = { + {type="fluid", name="el_kerosene", amount=20}, + {type="item", name="solid-fuel", amount=10}, + }, + results = { + {type="item", name="rocket-fuel", amount=1}, + }, + result_count = 1, + energy_required = 30, + subgroup = 'fluid-recipes', + order = 'b[fluid-chemistry]-e[solid-fuel-from-heavy-oil]-d', + }, }) \ No newline at end of file diff --git a/prototypes/fission/fi_crafter.lua b/prototypes/fission/fi_crafter.lua index ac42351..27fac61 100644 --- a/prototypes/fission/fi_crafter.lua +++ b/prototypes/fission/fi_crafter.lua @@ -33,13 +33,14 @@ data:extend({ flags = {"player-creation","placeable-neutral"}, max_health = 300, corpse = 'big-remnants', - collision_box = {{-1.4,-1.4},{1.4,1.4}}, - selection_box = {{-1.5,-1.5},{1.5,1.5}}, + collision_box = data.raw['assembling-machine']['assembling-machine-1'].collision_box, + selection_box = data.raw['assembling-machine']['assembling-machine-1'].selection_box, map_color = {r=0, g=0, b=1, a=1}, minable = { mining_time = 1, result = 'fi_crafter_item', }, + fast_replaceable_group = "assembling-machine", crafting_categories = {'advanced-crafting','crafting','smelting','fi_crafting_category'}, crafting_speed = 3.5, energy_source = { @@ -105,4 +106,6 @@ data:extend({ apparent_volume = 0.7, }, }, -}) \ No newline at end of file +}) + +data.raw['assembling-machine']['assembling-machine-3'].next_upgrade = 'fi_crafter_entity' \ No newline at end of file diff --git a/prototypes/gravitation/gr_crafter.lua b/prototypes/gravitation/gr_crafter.lua index 863e85e..cd866d3 100644 --- a/prototypes/gravitation/gr_crafter.lua +++ b/prototypes/gravitation/gr_crafter.lua @@ -33,13 +33,14 @@ data:extend({ flags = {"player-creation","placeable-neutral"}, max_health = 300, corpse = 'big-remnants', - collision_box = {{-1.4,-1.4},{1.4,1.4}}, - selection_box = {{-1.5,-1.5},{1.5,1.5}}, + collision_box = data.raw['assembling-machine']['assembling-machine-1'].collision_box, + selection_box = data.raw['assembling-machine']['assembling-machine-1'].selection_box, map_color = {r=0, g=0, b=1, a=1}, minable = { mining_time = 1, result = 'gr_crafter_item', }, + fast_replaceable_group = "assembling-machine", crafting_categories = {'advanced-crafting','crafting','smelting','fi_crafting_category'}, crafting_speed = 10, energy_source = { @@ -100,4 +101,6 @@ data:extend({ apparent_volume = 0.7, }, }, -}) \ No newline at end of file +}) + +data.raw['assembling-machine']['fi_crafter_entity'].next_upgrade = 'gr_crafter_entity' \ No newline at end of file diff --git a/ressources/icons/fi_rocket_1.png b/ressources/icons/fi_rocket_1.png new file mode 100644 index 0000000000000000000000000000000000000000..61e7c564306566f35d7bbb66b696c23aa49a4f18 GIT binary patch literal 8357 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