From 7ca01f9a5b13415d7d585ad25e96edca3ba2229a Mon Sep 17 00:00:00 2001 From: PHIDIAS Date: Tue, 3 Jun 2025 01:57:28 +0900 Subject: [PATCH] . --- PHI-CL/data.lua | 570 +++++++++++++++++++++++------------------------- 1 file changed, 277 insertions(+), 293 deletions(-) diff --git a/PHI-CL/data.lua b/PHI-CL/data.lua index ff85b44..fccb762 100644 --- a/PHI-CL/data.lua +++ b/PHI-CL/data.lua @@ -1331,131 +1331,247 @@ if settings.startup['PHI-CT'].value then }}) end - do - local item = table.deepcopy(data.raw['item']['radar']) - item.name = 'super-radar' - item.place_result = item.name - item.order = 'd[radar]-b[radar]' - item.icons = {{icon = item.icon or '__base__/graphics/icons/radar.png', tint = items['tint'][8], icon_size = item.icon_size or 64, icon_mipmaps = item.icon_mipmaps or 4}} - item.icon = nil - item.icon_size = nil - item.icon_mipmaps = nil - item.localised_name = {'name.super-radar'} - data:extend({item}) + local item = table.deepcopy(data.raw['item']['radar']) + item.name = 'super-radar' + item.place_result = item.name + item.order = 'd[radar]-b[radar]' + item.icons = {{icon = item.icon or '__base__/graphics/icons/radar.png', tint = items['tint'][8], icon_size = item.icon_size or 64, icon_mipmaps = item.icon_mipmaps or 4}} + item.icon = nil + item.icon_size = nil + item.icon_mipmaps = nil + item.localised_name = {'name.super-radar'} + data:extend({item}) - local entity = table.deepcopy(data.raw['radar']['radar']) - entity.name = item.name - entity.minable.result = item.name - entity.max_distance_of_sector_revealed = 35 - entity.max_distance_of_nearby_sector_revealed = 35 - entity.pictures.layers[1].tint = items['tint'][8] - entity.localised_name = {'name.super-radar'} - data:extend({entity}) + local entity = table.deepcopy(data.raw['radar']['radar']) + entity.name = item.name + entity.minable.result = item.name + entity.max_distance_of_sector_revealed = 35 + entity.max_distance_of_nearby_sector_revealed = 35 + entity.pictures.layers[1].tint = items['tint'][8] + entity.localised_name = {'name.super-radar'} + data:extend({entity}) - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = false, - ingredients = {{type = 'item', name = 'electronic-circuit', amount = 5}, {type = 'item', name = 'iron-gear-wheel', amount = 5}, {type = 'item', name = 'iron-plate', amount = 10}}, - results = {{type = 'item', name = item.name, amount = 1}}, - main_product = item.name, - localised_name = {'name.super-radar'} - }}) + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = false, + ingredients = {{type = 'item', name = 'electronic-circuit', amount = 5}, {type = 'item', name = 'iron-gear-wheel', amount = 5}, {type = 'item', name = 'iron-plate', amount = 10}}, + results = {{type = 'item', name = item.name, amount = 1}}, + main_product = item.name, + localised_name = {'name.super-radar'} + }}) + + item = table.deepcopy(data.raw['item']['electric-energy-interface']) + item.name = 'passive-energy-void' + item.place_result = item.name + item.subgroup = 'energy' + item.localised_name = {'name.passive-energy-void'} + data:extend({item}) + + entity = table.deepcopy(data.raw['electric-energy-interface']['electric-energy-interface']) + entity.name = item.name + entity.minable.result = item.name + entity.energy_source.usage_priority = 'tertiary' + entity.energy_source.emissions_per_minute = {pollution = 0} + entity.energy_source.input_flow_limit = '1PW' + entity.energy_source.output_flow_limit = '0W' + entity.energy_source.buffer_capacity = '1PJ' + entity.energy_production = '0W' + entity.energy_usage = '1PW' + entity.gui_mode = 'none' + entity.localised_name = {'name.passive-energy-void'} + data:extend({entity}) + + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = false, + ingredients = {{type = 'item', name = 'accumulator', amount = 1}}, + results = {{type = 'item', name = item.name, amount = 1}}, + main_product = item.name, + localised_name = {'name.passive-energy-void'} + }}) + + item = table.deepcopy(data.raw['item']['linked-chest']) + item.subgroup = 'storage' + item.order = 'a[items]-d[linked-chest]' + item.stack_size = 50 + data:extend({item}) + + entity = table.deepcopy(data.raw['linked-container']['linked-chest']) + entity.circuit_connector = table.deepcopy(data.raw['container']['steel-chest'].circuit_connector) + entity.circuit_wire_max_distance = data.raw['container']['steel-chest'].circuit_wire_max_distance + entity.quality_affects_inventory_size = false + entity.inventory_type = 'with_filters_and_bar' + entity.inventory_size = 48 + entity.gui_mode = 'all' + entity.surface_conditions = nil + data:extend({entity}) + + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = false, + ingredients = {{type = 'item', name = 'steel-chest', amount = 1}}, + results = {{type = 'item', name = item.name, amount = 1}}, + main_product = item.name + }}) + + item = table.deepcopy(data.raw['item']['steel-chest']) + item.name = 'trash-chest' + item.place_result = item.name + item.subgroup = 'storage' + item.order = 'b[storage]-h[trash-chest]' + item.icons = {{icon = item.icon or '__base__/graphics/icons/steel-chest.png', tint = items['tint'][8], icon_size = item.icon_size or 64, icon_mipmaps = item.icon_mipmaps or 4}} + item.icon = nil + item.icon_size = nil + item.icon_mipmaps = nil + item.localised_name = {'name.trash-chest'} + data:extend({item}) + + entity = table.deepcopy(data.raw['container']['steel-chest']) + entity.name = item.name + entity.minable.result = item.name + entity.inventory_type = 'with_filters_and_bar' + entity.inventory_size = 1 + entity.max_logistic_slots = 0 + entity.trash_inventory_size = 0 + entity.type = 'infinity-container' + entity.gui_mode = 'none' + entity.erase_contents_when_mined = true + entity.preserve_contents_when_created = true + entity.quality_affects_inventory_size = false + entity.logistic_mode = nil + entity.next_upgrade = nil + entity.surface_conditions = nil + entity.picture.layers[1].tint = items['tint'][8] + entity.localised_name = {'name.trash-chest'} + data:extend({entity}) + + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = false, + ingredients = {{type = 'item', name = 'steel-chest', amount = 1}}, + results = {{type = 'item', name = item.name, amount = 1}}, + main_product = item.name, + localised_name = {'name.trash-chest'} + }}) + + table.insert(data.raw.technology['steel-processing'].effects, {type = 'unlock-recipe', recipe = item.name}) + + item = table.deepcopy(data.raw['item']['pipe']) + item.name = 'trash-pipe' + item.place_result = item.name + item.subgroup = 'energy-pipe-distribution' + item.order = 'a[pipe]-c[trash-pipe]' + item.icons = {{icon = item.icon or '__base__/graphics/icons/pipe.png', tint = items['tint'][8], icon_size = item.icon_size or 64, icon_mipmaps = item.icon_mipmaps or 4}} + item.icon = nil + item.icon_size = nil + item.icon_mipmaps = nil + item.localised_name = {'name.trash-pipe'} + data:extend({item}) + + entity = table.deepcopy(data.raw['pipe']['pipe']) + entity.name = item.name + entity.minable.result = item.name + entity.type = 'infinity-pipe' + entity.gui_mode = 'none' + entity.erase_contents_when_mined = true + entity.next_upgrade = nil + + for _, v in pairs(entity.pictures) do + v.tint = items['tint'][8] + + if v.hr_version then + v.hr_version.tint = items['tint'][8] + end end - do - local item = table.deepcopy(data.raw['item']['electric-energy-interface']) - item.name = 'passive-energy-void' - item.place_result = item.name - item.subgroup = 'energy' - item.localised_name = {'name.passive-energy-void'} - data:extend({item}) + entity.localised_name = {'name.trash-pipe'} + data:extend({entity}) - local entity = table.deepcopy(data.raw['electric-energy-interface']['electric-energy-interface']) - entity.name = item.name - entity.minable.result = item.name - entity.energy_source.usage_priority = 'tertiary' - entity.energy_source.emissions_per_minute = {pollution = 0} - entity.energy_source.input_flow_limit = '1PW' - entity.energy_source.output_flow_limit = '0W' - entity.energy_source.buffer_capacity = '1PJ' - entity.energy_production = '0W' - entity.energy_usage = '1PW' - entity.gui_mode = 'none' - entity.localised_name = {'name.passive-energy-void'} - data:extend({entity}) + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = false, + ingredients = {{type = 'item', name = 'iron-plate', amount = 1}}, + results = {{type = 'item', name = item.name, amount = 1}}, + main_product = item.name, + localised_name = {'name.trash-pipe'} + }}) - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = false, - ingredients = {{type = 'item', name = 'accumulator', amount = 1}}, - results = {{type = 'item', name = item.name, amount = 1}}, - main_product = item.name, - localised_name = {'name.passive-energy-void'} - }}) - end + table.insert(data.raw.technology['automation'].effects, {type = 'unlock-recipe', recipe = item.name}) - do - local item = table.deepcopy(data.raw['item']['linked-chest']) - item.subgroup = 'storage' - item.order = 'a[items]-d[linked-chest]' - item.stack_size = 50 - data:extend({item}) + item = table.deepcopy(data.raw['item']['boiler']) + item.name = 'electric-boiler' + item.place_result = item.name + item.subgroup = 'energy' + item.order = 'b[steam-power]-a[electric-boiler]' + item.localised_name = {'name.electric-boiler'} + data:extend({item}) - local entity = table.deepcopy(data.raw['linked-container']['linked-chest']) - entity.circuit_connector = table.deepcopy(data.raw['container']['steel-chest'].circuit_connector) - entity.circuit_wire_max_distance = data.raw['container']['steel-chest'].circuit_wire_max_distance - entity.quality_affects_inventory_size = false - entity.inventory_type = 'with_filters_and_bar' - entity.inventory_size = 48 - entity.gui_mode = 'all' - entity.surface_conditions = nil - data:extend({entity}) + entity = table.deepcopy(data.raw['boiler']['boiler']) + entity.name = item.name + entity.energy_consumption = '7200kW' + entity.buffer_capacity = '14400kJ' + entity.target_temperature = 165 + entity.emissions_per_minute = {pollution = 0} + entity.minable.result = entity.name + entity.energy_source = { + type = 'electric', + usage_priority = 'secondary-input', + buffer_capacity = entity.buffer_capacity, + light_flicker = { + color = {r = 0.5, g = 1, b = 1, a = 0.5}, + minimum_light_size = 0.1, + light_intensity_to_size_coefficient = 1 + } + } - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = false, - ingredients = {{type = 'item', name = 'steel-chest', amount = 1}}, - results = {{type = 'item', name = item.name, amount = 1}}, - main_product = item.name - }}) - end + entity.fire_flicker_enabled = false + entity.fire_glow_flicker_enabled = false + entity.fire = {} + entity.localised_name = {'name.electric-boiler'} + data:extend({entity}) - do - local item = table.deepcopy(data.raw['item']['steel-chest']) - item.name = 'trash-chest' + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = true, + ingredients = {{type = 'item', name = 'boiler', amount = 1}, {type = 'item', name = 'electronic-circuit', amount = 1}}, + results = {{type = 'item', name = item.name, amount = 1}}, + main_product = item.name, + localised_name = {'name.electric-boiler'} + }}) + + data.raw['boiler']['boiler'].fast_replaceable_group = 'boiler' + data.raw['boiler']['electric-boiler'].fast_replaceable_group = data.raw['boiler']['electric-boiler'].fast_replaceable_group + + for _, c in pairs({'steel-chest', 'passive-provider-chest', 'active-provider-chest', 'storage-chest', 'buffer-chest', 'requester-chest'}) do + item = table.deepcopy(data.raw['item'][c]) + item.name = 'basic-' .. c item.place_result = item.name item.subgroup = 'storage' - item.order = 'b[storage]-h[trash-chest]' - item.icons = {{icon = item.icon or '__base__/graphics/icons/steel-chest.png', tint = items['tint'][8], icon_size = item.icon_size or 64, icon_mipmaps = item.icon_mipmaps or 4}} - item.icon = nil - item.icon_size = nil - item.icon_mipmaps = nil - item.localised_name = {'name.trash-chest'} + item.order = 'b[storage]-h[basic-' .. c .. ']' + item.localised_name = {'name.basic-' .. c} data:extend({item}) - local entity = table.deepcopy(data.raw['container']['steel-chest']) + entity = (c == 'steel-chest' and table.deepcopy(data.raw['container'][c])) or table.deepcopy(data.raw['logistic-container'][c]) entity.name = item.name entity.minable.result = item.name entity.inventory_type = 'with_filters_and_bar' entity.inventory_size = 1 - entity.max_logistic_slots = 0 - entity.trash_inventory_size = 0 - entity.type = 'infinity-container' - entity.gui_mode = 'none' - entity.erase_contents_when_mined = true - entity.preserve_contents_when_created = true entity.quality_affects_inventory_size = false - entity.logistic_mode = nil - entity.next_upgrade = nil - entity.surface_conditions = nil - entity.picture.layers[1].tint = items['tint'][8] - entity.localised_name = {'name.trash-chest'} + entity.max_logistic_slots = (c == 'steel-chest' and nil) or 1 + entity.trash_inventory_size = (c == 'steel-chest' and nil) or 1 + entity.localised_name = {'name.basic-' .. c} data:extend({entity}) data:extend({{ @@ -1463,153 +1579,23 @@ if settings.startup['PHI-CT'].value then name = item.name, energy_required = 2, enabled = false, - ingredients = {{type = 'item', name = 'steel-chest', amount = 1}}, + ingredients = {{type = 'item', name =c, amount = 1}}, results = {{type = 'item', name = item.name, amount = 1}}, main_product = item.name, - localised_name = {'name.trash-chest'} + localised_name = {'name.basic-' .. c} }}) - - table.insert(data.raw.technology['steel-processing'].effects, {type = 'unlock-recipe', recipe = item.name}) end - do - local item = table.deepcopy(data.raw['item']['pipe']) - item.name = 'trash-pipe' - item.place_result = item.name - item.subgroup = 'energy-pipe-distribution' - item.order = 'a[pipe]-c[trash-pipe]' - item.icons = {{icon = item.icon or '__base__/graphics/icons/pipe.png', tint = items['tint'][8], icon_size = item.icon_size or 64, icon_mipmaps = item.icon_mipmaps or 4}} - item.icon = nil - item.icon_size = nil - item.icon_mipmaps = nil - item.localised_name = {'name.trash-pipe'} - data:extend({item}) + table.insert(data.raw.technology['steel-processing'].effects, {type = 'unlock-recipe', recipe = 'basic-steel-chest'}) - local entity = table.deepcopy(data.raw['pipe']['pipe']) - entity.name = item.name - entity.minable.result = item.name - entity.type = 'infinity-pipe' - entity.gui_mode = 'none' - entity.erase_contents_when_mined = true - entity.next_upgrade = nil - - for _, v in pairs(entity.pictures) do - v.tint = items['tint'][8] - - if v.hr_version then - v.hr_version.tint = items['tint'][8] - end + for _, t in pairs({'construction', 'logistic'}) do + for _, r in pairs({'passive-provider', 'storage'}) do + table.insert(data.raw.technology[t .. '-robotics'].effects, {type = 'unlock-recipe', recipe = 'basic-' .. r .. '-chest'}) end - - entity.localised_name = {'name.trash-pipe'} - data:extend({entity}) - - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = false, - ingredients = {{type = 'item', name = 'iron-plate', amount = 1}}, - results = {{type = 'item', name = item.name, amount = 1}}, - main_product = item.name, - localised_name = {'name.trash-pipe'} - }}) - - table.insert(data.raw.technology['automation'].effects, {type = 'unlock-recipe', recipe = item.name}) end - do - local item = table.deepcopy(data.raw['item']['boiler']) - item.name = 'electric-boiler' - item.place_result = item.name - item.subgroup = 'energy' - item.order = 'b[steam-power]-a[electric-boiler]' - item.localised_name = {'name.electric-boiler'} - data:extend({item}) - - local entity = table.deepcopy(data.raw['boiler']['boiler']) - entity.name = item.name - entity.energy_consumption = '7200kW' - entity.buffer_capacity = '14400kJ' - entity.target_temperature = 165 - entity.emissions_per_minute = {pollution = 0} - entity.minable.result = entity.name - entity.energy_source = { - type = 'electric', - usage_priority = 'secondary-input', - buffer_capacity = entity.buffer_capacity, - light_flicker = { - color = {r = 0.5, g = 1, b = 1, a = 0.5}, - minimum_light_size = 0.1, - light_intensity_to_size_coefficient = 1 - } - } - - entity.fire_flicker_enabled = false - entity.fire_glow_flicker_enabled = false - entity.fire = {} - entity.localised_name = {'name.electric-boiler'} - data:extend({entity}) - - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = true, - ingredients = {{type = 'item', name = 'boiler', amount = 1}, {type = 'item', name = 'electronic-circuit', amount = 1}}, - results = {{type = 'item', name = item.name, amount = 1}}, - main_product = item.name, - localised_name = {'name.electric-boiler'} - }}) - - data.raw['boiler']['boiler'].fast_replaceable_group = 'boiler' - data.raw['boiler']['electric-boiler'].fast_replaceable_group = data.raw['boiler']['electric-boiler'].fast_replaceable_group - end - - do - for _, c in pairs({'steel-chest', 'passive-provider-chest', 'active-provider-chest', 'storage-chest', 'buffer-chest', 'requester-chest'}) do - local item = table.deepcopy(data.raw['item'][c]) - item.name = 'basic-' .. c - item.place_result = item.name - item.subgroup = 'storage' - item.order = 'b[storage]-h[basic-' .. c .. ']' - item.localised_name = {'name.basic-' .. c} - data:extend({item}) - - local entity = (c == 'steel-chest' and table.deepcopy(data.raw['container'][c])) or table.deepcopy(data.raw['logistic-container'][c]) - entity.name = item.name - entity.minable.result = item.name - entity.inventory_type = 'with_filters_and_bar' - entity.inventory_size = 1 - entity.quality_affects_inventory_size = false - entity.max_logistic_slots = (c == 'steel-chest' and nil) or 1 - entity.trash_inventory_size = (c == 'steel-chest' and nil) or 1 - entity.localised_name = {'name.basic-' .. c} - data:extend({entity}) - - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = false, - ingredients = {{type = 'item', name =c, amount = 1}}, - results = {{type = 'item', name = item.name, amount = 1}}, - main_product = item.name, - localised_name = {'name.basic-' .. c} - }}) - end - - table.insert(data.raw.technology['steel-processing'].effects, {type = 'unlock-recipe', recipe = 'basic-steel-chest'}) - - for _, t in pairs({'construction', 'logistic'}) do - for _, r in pairs({'passive-provider', 'storage'}) do - table.insert(data.raw.technology[t .. '-robotics'].effects, {type = 'unlock-recipe', recipe = 'basic-' .. r .. '-chest'}) - end - end - - for _, r in pairs({'active-provider', 'buffer', 'requester'}) do - table.insert(data.raw.technology['logistic-system'].effects, {type = 'unlock-recipe', recipe = 'basic-' .. r .. '-chest'}) - end + for _, r in pairs({'active-provider', 'buffer', 'requester'}) do + table.insert(data.raw.technology['logistic-system'].effects, {type = 'unlock-recipe', recipe = 'basic-' .. r .. '-chest'}) end for _, l in pairs({'loader', 'fast-loader', 'express-loader', 'turbo-loader'}) do @@ -1629,63 +1615,61 @@ if settings.startup['PHI-CT'].value then table.insert(data.raw.technology['logistics-2'].effects, {type = 'unlock-recipe', recipe = 'fast-loader'}) table.insert(data.raw.technology['logistics-3'].effects, {type = 'unlock-recipe', recipe = 'express-loader'}) - do - for _, v in pairs({'underground-belt', 'fast-underground-belt', 'express-underground-belt', 'turbo-underground-belt'}) do - if data.raw.item[v] then - local item = table.deepcopy(data.raw.item[v]) - item.name = v .. '-a' - item.place_result = item.name - item.localised_name = {'phi-cl.combine', {'entity-name.' .. v}, '(II)'} - item.localised_description = {'entity-description.' .. v} - data:extend({item}) + for _, v in pairs({'underground-belt', 'fast-underground-belt', 'express-underground-belt', 'turbo-underground-belt'}) do + if data.raw.item[v] then + item = table.deepcopy(data.raw.item[v]) + item.name = v .. '-a' + item.place_result = item.name + item.localised_name = {'phi-cl.combine', {'entity-name.' .. v}, '(II)'} + item.localised_description = {'entity-description.' .. v} + data:extend({item}) - local entity = table.deepcopy(data.raw['underground-belt'][v]) - entity.name = item.name - entity.minable.result = item.name - entity.next_upgrade = nil - entity.surface_conditions = nil - entity.localised_name = {'phi-cl.combine', {'entity-name.' .. v}, '(II)'} - entity.localised_description = {'entity-description.' .. v} + entity = table.deepcopy(data.raw['underground-belt'][v]) + entity.name = item.name + entity.minable.result = item.name + entity.next_upgrade = nil + entity.surface_conditions = nil + entity.localised_name = {'phi-cl.combine', {'entity-name.' .. v}, '(II)'} + entity.localised_description = {'entity-description.' .. v} - for _, st in pairs({'direction_in', 'direction_out', 'direction_in_side_loading', 'direction_out_side_loading'}) do - entity.structure[st].sheet.filename = items['general']['graphics_location'] .. v .. '.png' - entity.structure[st].sheet.width = 106 - entity.structure[st].sheet.height = 85 - entity.structure[st].sheetshift = {0.15625, 0.0703125} - end - - entity.structure.direction_in.sheet.y = 85 - entity.structure.direction_out.sheet.y = nil - entity.structure.direction_in_side_loading.sheet.y = 85 - entity.structure.direction_out_side_loading.sheet.y = nil - data:extend({entity}) - - data:extend({{ - type = 'recipe', - name = item.name, - energy_required = 2, - enabled = false, - ingredients = {{type = 'item', name = v, amount = 2}}, - results = {{type = 'item', name = item.name, amount = 2}}, - main_product = item.name, - localised_name = {'phi-cl.combine', {'entity-name.' .. v}, '(II)'} - }}) + for _, st in pairs({'direction_in', 'direction_out', 'direction_in_side_loading', 'direction_out_side_loading'}) do + entity.structure[st].sheet.filename = items['general']['graphics_location'] .. v .. '.png' + entity.structure[st].sheet.width = 106 + entity.structure[st].sheet.height = 85 + entity.structure[st].sheetshift = {0.15625, 0.0703125} end - end - data.raw['underground-belt']['underground-belt-a'].next_upgrade = 'fast-underground-belt-a' - data.raw['underground-belt']['fast-underground-belt-a'].next_upgrade = 'express-underground-belt-a' - table.insert(data.raw.technology['logistics'].effects, {type = 'unlock-recipe', recipe = 'underground-belt-a'}) - table.insert(data.raw.technology['logistics-2'].effects, {type = 'unlock-recipe', recipe = 'fast-underground-belt-a'}) - table.insert(data.raw.technology['logistics-3'].effects, {type = 'unlock-recipe', recipe = 'express-underground-belt-a'}) + entity.structure.direction_in.sheet.y = 85 + entity.structure.direction_out.sheet.y = nil + entity.structure.direction_in_side_loading.sheet.y = 85 + entity.structure.direction_out_side_loading.sheet.y = nil + data:extend({entity}) - if mods['space-age'] then - table.insert(data.raw.technology['turbo-transport-belt'].effects, {type = 'unlock-recipe', recipe = 'turbo-loader'}) - data.raw['underground-belt']['express-underground-belt-a'].next_upgrade = 'turbo-underground-belt-a' - table.insert(data.raw.technology['turbo-transport-belt'].effects, {type = 'unlock-recipe', recipe = 'turbo-underground-belt-a'}) + data:extend({{ + type = 'recipe', + name = item.name, + energy_required = 2, + enabled = false, + ingredients = {{type = 'item', name = v, amount = 2}}, + results = {{type = 'item', name = item.name, amount = 2}}, + main_product = item.name, + localised_name = {'phi-cl.combine', {'entity-name.' .. v}, '(II)'} + }}) end end + data.raw['underground-belt']['underground-belt-a'].next_upgrade = 'fast-underground-belt-a' + data.raw['underground-belt']['fast-underground-belt-a'].next_upgrade = 'express-underground-belt-a' + table.insert(data.raw.technology['logistics'].effects, {type = 'unlock-recipe', recipe = 'underground-belt-a'}) + table.insert(data.raw.technology['logistics-2'].effects, {type = 'unlock-recipe', recipe = 'fast-underground-belt-a'}) + table.insert(data.raw.technology['logistics-3'].effects, {type = 'unlock-recipe', recipe = 'express-underground-belt-a'}) + + if mods['space-age'] then + table.insert(data.raw.technology['turbo-transport-belt'].effects, {type = 'unlock-recipe', recipe = 'turbo-loader'}) + data.raw['underground-belt']['express-underground-belt-a'].next_upgrade = 'turbo-underground-belt-a' + table.insert(data.raw.technology['turbo-transport-belt'].effects, {type = 'unlock-recipe', recipe = 'turbo-underground-belt-a'}) + end + for _, t in pairs({'arithmetic-combinator', 'decider-combinator', 'programmable-speaker', 'selector-combinator'}) do data.raw[t][t].energy_source.usage_priority = 'primary-input' end