diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..bbf3e21 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,3 @@ +[*] +indent_style = space +indent_size = 2 \ No newline at end of file diff --git a/Bio_Industries_2/changelog.txt b/Bio_Industries_2/changelog.txt index 454cfb6..b149076 100644 --- a/Bio_Industries_2/changelog.txt +++ b/Bio_Industries_2/changelog.txt @@ -1,4 +1,25 @@ --------------------------------------------------------------------------------------------------- +Version: 2.0.30 +Date: 05.11.2025 + Bug Fixes: + - Fix icon scales +--------------------------------------------------------------------------------------------------- +Version: 2.0.29 +Date: 02.11.2025 + Bug Fixes: + - Remove settings check for wooden rails +--------------------------------------------------------------------------------------------------- +Version: 2.0.28 +Date: 01.11.2025 + Changes: + - Add wooden rails again (thanks MAGGen) +--------------------------------------------------------------------------------------------------- +Version: 2.0.27 +Date: 21.10.2025 + Changes: + - Brazilian translation improvements (thanks Slondo) + - Upscaled graphics of the huge wooden power poles +--------------------------------------------------------------------------------------------------- Version: 2.0.26 Date: 21.10.2025 Changes: diff --git a/Bio_Industries_2/graphics/entities/wood_products/huge-wooden-pole.png b/Bio_Industries_2/graphics/entities/wood_products/huge-wooden-pole.png index 98c76f0..5b8fa12 100644 Binary files a/Bio_Industries_2/graphics/entities/wood_products/huge-wooden-pole.png and b/Bio_Industries_2/graphics/entities/wood_products/huge-wooden-pole.png differ diff --git a/Bio_Industries_2/info.json b/Bio_Industries_2/info.json index c56a238..1b23b6e 100644 --- a/Bio_Industries_2/info.json +++ b/Bio_Industries_2/info.json @@ -1,6 +1,6 @@ { "name": "Bio_Industries_2", - "version": "2.0.26", + "version": "2.0.30", "factorio_version": "2.0", "title": "Bio Industries", "author": "TheSAguy - Had a few Ideas, Pi-C (Programming Genius), Snouz (Graphics Wizard), Cackling Fiend - Conversion to F2.0", diff --git a/Bio_Industries_2/prototypes/Bio_Farm/item.lua b/Bio_Industries_2/prototypes/Bio_Farm/item.lua index 23f3026..b12cece 100644 --- a/Bio_Industries_2/prototypes/Bio_Farm/item.lua +++ b/Bio_Industries_2/prototypes/Bio_Farm/item.lua @@ -13,10 +13,10 @@ data:extend( name = "bi-seed", icons = { {icon = ICONPATH .. "bio_seed.png", icon_size = 64, }}, pictures = { - { size = 64, filename = ICONPATHMIPS.."bio_seed_1.png", scale = 0.25, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."bio_seed_2.png", scale = 0.25, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."bio_seed_3.png", scale = 0.25, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."bio_seed_4.png", scale = 0.25, mipmap_count = 4 } + { size = 64, filename = ICONPATHMIPS.."bio_seed_1.png", scale = 0.48, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."bio_seed_2.png", scale = 0.46, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."bio_seed_3.png", scale = 0.45, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."bio_seed_4.png", scale = 0.43, mipmap_count = 4 } }, category = "biofarm-mod-greenhouse", subgroup = "bio-bio-farm", @@ -35,15 +35,15 @@ data:extend( localised_description = {"entity-description.seedling"}, icons = { {icon = ICONPATH .. "Seedling.png", icon_size = 64, }}, pictures = { - { size = 64, filename = ICONPATHMIPS.."seedling_1.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_2.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_3.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_4.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_5.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_6.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_7.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_8.png", scale = 0.25, mipmap_count = 9 }, - { size = 64, filename = ICONPATHMIPS.."seedling_9.png", scale = 0.25, mipmap_count = 9 } + { size = 64, filename = ICONPATHMIPS.."seedling_1.png", scale = 0.57, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_2.png", scale = 0.52, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_3.png", scale = 0.47, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_4.png", scale = 0.52, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_5.png", scale = 0.62, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_6.png", scale = 0.52, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_7.png", scale = 0.72, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_8.png", scale = 0.52, mipmap_count = 9 }, + { size = 64, filename = ICONPATHMIPS.."seedling_9.png", scale = 0.47, mipmap_count = 9 } }, subgroup = "bio-bio-farm", order = "x[bi]-b[bi-seedling]", @@ -114,10 +114,10 @@ data:extend( name = "bi-woodpulp", icons = { {icon = ICONPATH .. "woodpulp_64.png", icon_size = 64, }}, pictures = { - { size = 64, filename = ICONPATHMIPS.."woodpulp_1.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."woodpulp_2.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."woodpulp_3.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."woodpulp_4.png", scale = 0.2, mipmap_count = 4 } + { size = 64, filename = ICONPATHMIPS.."woodpulp_1.png", scale = 0.55, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."woodpulp_2.png", scale = 0.53, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."woodpulp_3.png", scale = 0.51, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."woodpulp_4.png", scale = 0.49, mipmap_count = 4 } }, fuel_value = "1MJ", fuel_category = "chemical", @@ -147,10 +147,10 @@ data:extend( name = "bi-ash", icons = { {icon = ICONPATH .. "ash.png", icon_size = 64, }}, pictures = { - { size = 64, filename = ICONPATHMIPS.."ash_1.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."ash_2.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."ash_3.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."ash_4.png", scale = 0.2, mipmap_count = 4 } + { size = 64, filename = ICONPATHMIPS.."ash_1.png", scale = 0.42, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."ash_2.png", scale = 0.42, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."ash_3.png", scale = 0.42, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."ash_4.png", scale = 0.42, mipmap_count = 4 } }, subgroup = "raw-material", order = "a[bi]-a-b[bi-ash]", @@ -164,10 +164,10 @@ data:extend( name = "wood-charcoal", icons = { {icon = ICONPATH .. "charcoal.png", icon_size = 64, }}, pictures = { - { size = 64, filename = ICONPATHMIPS.."charcoal_1.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."charcoal_2.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."charcoal_3.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."charcoal_4.png", scale = 0.2, mipmap_count = 4 } + { size = 64, filename = ICONPATHMIPS.."charcoal_1.png", scale = 0.49, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."charcoal_2.png", scale = 0.5, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."charcoal_3.png", scale = 0.5, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."charcoal_4.png", scale = 0.51, mipmap_count = 4 } }, fuel_value = "6MJ", fuel_category = "chemical", @@ -199,10 +199,10 @@ data:extend( name = "stone-crushed", icons = { {icon = ICONPATH .. "crushed-stone.png", icon_size = 64, }}, pictures = { - { size = 64, filename = ICONPATHMIPS.."crush_1.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."crush_2.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."crush_3.png", scale = 0.2, mipmap_count = 4 }, - { size = 64, filename = ICONPATHMIPS.."crush_4.png", scale = 0.2, mipmap_count = 4 } + { size = 64, filename = ICONPATHMIPS.."crush_1.png", scale = 0.44, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."crush_2.png", scale = 0.45, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."crush_3.png", scale = 0.45, mipmap_count = 4 }, + { size = 64, filename = ICONPATHMIPS.."crush_4.png", scale = 0.46, mipmap_count = 4 } }, subgroup = "raw-material", order = "a[bi]-a-z[stone-crushed]", diff --git a/Bio_Industries_2/prototypes/Bio_Tweaks/recipe.lua b/Bio_Industries_2/prototypes/Bio_Tweaks/recipe.lua index bc3cef5..7639a50 100644 --- a/Bio_Industries_2/prototypes/Bio_Tweaks/recipe.lua +++ b/Bio_Industries_2/prototypes/Bio_Tweaks/recipe.lua @@ -5,7 +5,7 @@ local ICONPATH = BioInd.modRoot .. "/graphics/icons/" log("BI.Settings.BI_Game_Tweaks_Disassemble: " .. tostring(BI.Settings.BI_Game_Tweaks_Disassemble)) if BI.Settings.BI_Game_Tweaks_Disassemble then -log("Enabling disassemble recipes!") + log("Enabling disassemble recipes!") --- Bio Tweaks data:extend({ -- Item subgroup @@ -20,8 +20,8 @@ log("Enabling disassemble recipes!") { type = "recipe", name = "bi-burner-mining-drill-disassemble", - localised_description = {"recipe-description.bi-disassemble-recipes"}, - icons = { {icon = ICONPATH .. "burner-mining-drill_disassemble.png", icon_size = 64, } }, + localised_description = { "recipe-description.bi-disassemble-recipes" }, + icons = { { icon = ICONPATH .. "burner-mining-drill_disassemble.png", icon_size = 64, } }, category = "advanced-crafting", subgroup = "bio-disassemble", order = "a[Disassemble]-a[bi-burner-mining-drill-disassemble]", @@ -31,20 +31,19 @@ log("Enabling disassemble recipes!") allow_decomposition = false, energy_required = 2, ingredients = { - {type = "item", name = "burner-mining-drill", amount = 1}, + { type = "item", name = "burner-mining-drill", amount = 1 }, }, results = { - {type="item", name="stone", amount=4}, - {type="item", name="iron-plate", amount=4} + { type = "item", name = "stone", amount = 4 }, + { type = "item", name = "iron-plate", amount = 4 } }, main_product = "", }, ----- { type = "recipe", name = "bi-burner-inserter-disassemble", - localised_description = {"recipe-description.bi-disassemble-recipes"}, - icons = { {icon = ICONPATH .. "burner_inserter_disassemble.png", icon_size = 64, } }, + localised_description = { "recipe-description.bi-disassemble-recipes" }, + icons = { { icon = ICONPATH .. "burner_inserter_disassemble.png", icon_size = 64, } }, category = "advanced-crafting", subgroup = "bio-disassemble", order = "a[Disassemble]-b[bi-burner-inserter-disassemble]", @@ -54,19 +53,18 @@ log("Enabling disassemble recipes!") allow_decomposition = false, energy_required = 2, ingredients = { - {type = "item", name = "burner-inserter", amount = 1}, + { type = "item", name = "burner-inserter", amount = 1 }, }, results = { - {type="item", name="iron-plate", amount=2}, + { type = "item", name = "iron-plate", amount = 2 }, }, main_product = "", }, ----- { type = "recipe", name = "bi-long-handed-inserter-disassemble", - localised_description = {"recipe-description.bi-disassemble-recipes"}, - icons = { {icon = ICONPATH .. "long_handed_inserter_disassemble.png", icon_size = 64, } }, + localised_description = { "recipe-description.bi-disassemble-recipes" }, + icons = { { icon = ICONPATH .. "long_handed_inserter_disassemble.png", icon_size = 64, } }, category = "advanced-crafting", subgroup = "bio-disassemble", order = "a[Disassemble]-c[bi-long-handed-inserter-disassemble]", @@ -76,21 +74,20 @@ log("Enabling disassemble recipes!") allow_decomposition = false, energy_required = 2, ingredients = { - {type = "item", name = "long-handed-inserter", amount = 1}, + { type = "item", name = "long-handed-inserter", amount = 1 }, }, results = { - {type="item", name="iron-gear-wheel", amount=1}, - {type="item", name="iron-plate", amount=1}, - {type="item", name="electronic-circuit", amount=1}, + { type = "item", name = "iron-gear-wheel", amount = 1 }, + { type = "item", name = "iron-plate", amount = 1 }, + { type = "item", name = "electronic-circuit", amount = 1 }, }, main_product = "", }, ---- { type = "recipe", name = "bi-stone-furnace-disassemble", - localised_description = {"recipe-description.bi-disassemble-recipes"}, - icons = { {icon = ICONPATH .. "stone_furnace_disassemble.png", icon_size = 64, } }, + localised_description = { "recipe-description.bi-disassemble-recipes" }, + icons = { { icon = ICONPATH .. "stone_furnace_disassemble.png", icon_size = 64, } }, category = "advanced-crafting", subgroup = "bio-disassemble", order = "a[Disassemble]-d[bi-stone-furnace-disassemble]", @@ -100,19 +97,18 @@ log("Enabling disassemble recipes!") allow_decomposition = false, energy_required = 2, ingredients = { - {type = "item", name = "stone-furnace", amount = 1}, + { type = "item", name = "stone-furnace", amount = 1 }, }, results = { - {type="item", name="stone", amount=3}, + { type = "item", name = "stone", amount = 3 }, }, main_product = "", }, ---- { type = "recipe", name = "bi-steel-furnace-disassemble", - localised_description = {"recipe-description.bi-disassemble-recipes"}, - icons = { {icon = ICONPATH .. "steel-furnace_disassemble.png", icon_size = 64, } }, + localised_description = { "recipe-description.bi-disassemble-recipes" }, + icons = { { icon = ICONPATH .. "steel-furnace_disassemble.png", icon_size = 64, } }, category = "advanced-crafting", subgroup = "bio-disassemble", order = "a[Disassemble]-e[bi-steel-furnace-disassemble]", @@ -122,14 +118,38 @@ log("Enabling disassemble recipes!") allow_decomposition = false, energy_required = 2, ingredients = { - {type = "item", name = "steel-furnace", amount = 1}, + { type = "item", name = "steel-furnace", amount = 1 }, }, results = { - {type="item", name="steel-plate", amount=4}, - {type="item", name="stone-brick", amount=4} + { type = "item", name = "steel-plate", amount = 4 }, + { type = "item", name = "stone-brick", amount = 4 } }, main_product = "", }, - + }) -end \ No newline at end of file +end + +local SET = settings.startup["BI_Game_Tweaks_Production_Science"].value +if SET and not mods["Krastorio2"] then + data:extend({ + { + type = "recipe", + name = "bi-production-science-pack", + enabled = false, + energy_required = 21, + ingredients = { + { type = "item", name = "electric-furnace", amount = 1 }, + { type = "item", name = "productivity-module", amount = 1 }, + { type = "item", name = "bi-rail-wood", amount = 40 } + }, + results = { { type = "item", name = "production-science-pack", amount = 3 } }, + }, + }) + --~ BI_Functions.lib.allow_productivity("bi-production-science-pack") + --~ thxbob.lib.tech.add_recipe_unlock("production-science-pack", "bi-production-science-pack") + BioInd.writeDebug("Added alternative recipe for Production science packs.") +else + BioInd.writeDebug("Didn't add alternative recipe for Production science packs! (\"Krastorio\": %s\tSetting: %s", + { (mods["Krastorio2"] and "active" or "not active"), (SET and "enabled" or "disabled") }) +end diff --git a/Bio_Industries_2/prototypes/Wood_Products/entities.lua b/Bio_Industries_2/prototypes/Wood_Products/entities.lua index a76a204..6315f33 100644 --- a/Bio_Industries_2/prototypes/Wood_Products/entities.lua +++ b/Bio_Industries_2/prototypes/Wood_Products/entities.lua @@ -372,19 +372,19 @@ data:extend({ percent = 10 } }, - collision_box = {{-0.3, -0.3}, {0.3, 0.3}}, - selection_box = {{-0.5, -0.5}, {0.5, 0.5}}, + collision_box = {{-0.35, -0.35}, {0.25, 0.25}}, + selection_box = {{-0.55, -0.55}, {0.45, 0.45}}, drawing_box = {{-1, -7}, {1, 0.5}}, maximum_wire_distance = 64, -- Factorio Max supply_area_distance = 2, -- This is the radius, so the supply area is 4x4. pictures = { filename = WOODPATH .. "huge-wooden-pole.png", priority = "high", - width = 182, - height = 167, + width = 546, + height = 501, direction_count = 4, shift = {3, -3.45}, - scale = 1.5, + scale = 0.5, }, connection_points = { { diff --git a/Bio_Industries_2/prototypes/Wood_Products/rail.lua b/Bio_Industries_2/prototypes/Wood_Products/rail.lua index 97c7da1..c6fc630 100644 --- a/Bio_Industries_2/prototypes/Wood_Products/rail.lua +++ b/Bio_Industries_2/prototypes/Wood_Products/rail.lua @@ -1,27 +1,18 @@ -require ("prototypes.Wood_Products.rail-pictures-wood") +require("prototypes.Wood_Products.rail-pictures-wood") local BioInd = require('common')('Bio_Industries_2') -local ICONPATH = BioInd.modRoot .. "/graphics/icons/" local ICONPATH_E = BioInd.modRoot .. "/graphics/icons/entity/" local item_sounds = require("__base__.prototypes.item_sounds") - - -local hit_effects = require ("__base__.prototypes.entity.hit-effects") -local sounds = require("__base__.prototypes.entity.sounds") +local hit_effects = require("__base__.prototypes.entity.hit-effects") local tile_sounds = require("__base__.prototypes.tile.tile-sounds") -local simulations = require("__base__.prototypes.factoriopedia-simulations") - - if BI.Settings.BI_Game_Tweaks_Recipe then - - - data:extend({ - ---- ITEM - { +data:extend({ + ---- ITEM + { type = "rail-planner", name = "bi-rail-wood", - icons = { {icon = ICONPATH_E .. "rail-wood.png", icon_size = 64, } }, - localised_name = {"item-name.bi-rail-wood"}, + icons = { { icon = ICONPATH_E .. "rail-wood.png", icon_size = 64, } }, + localised_name = { "item-name.bi-rail-wood" }, subgroup = "train-transport", order = "a[rail]-0[rail]", inventory_move_sound = item_sounds.train_inventory_move, @@ -29,51 +20,74 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") drop_sound = item_sounds.train_inventory_move, place_result = "bi-straight-rail-wood", stack_size = 100, - rails = - { + rails = { "bi-straight-rail-wood", "bi-curved-rail-a-wood", "bi-curved-rail-b-wood", "bi-half-diagonal-rail-wood" }, - manual_length_limit = 22.5 -- 2*(Curved-A) + 2*(Curved-B) + their planner penalty + margin + manual_length_limit = 22.5 -- 2*(Curved-A) + 2*(Curved-B) + their planner penalty + margin + }, + + ---- Recipe + { + type = "recipe", + name = "bi-rail-wood", + localised_name = { "entity-name.bi-rail-wood" }, + localised_description = { "entity-description.bi-rail-wood" }, + icons = { { icon = ICONPATH_E .. "rail-wood.png", icon_size = 64, } }, + enabled = false, + ingredients = { + { type = "item", name = "wood", amount = 6 }, + { type = "item", name = "stone", amount = 1 }, + { type = "item", name = "steel-plate", amount = 1 }, + { type = "item", name = "iron-stick", amount = 1 }, + }, + results = { { type = "item", name = "bi-rail-wood", amount = 2 } }, + main_product = "", + requester_paste_multiplier = 4, + --~ always_show_made_in = true, + --~ allow_decomposition = false, + allow_as_intermediate = false, -- Added for 0.18.34/1.1.4 + always_show_made_in = false, -- Changed for 0.18.34/1.1.4 + allow_decomposition = true, -- Changed for 0.18.34/1.1.4 + subgroup = "transport", + order = "a[train-system]-a[rail]", + -- This is a custom property for use by "Krastorio 2" (it will change + -- ingredients/results; used for wood/wood pulp) + mod = "Bio_Industries", + }, + { + type = "recipe", + name = "bi-rail-wood-to-concrete", + icons = { { icon = ICONPATH_E .. "rail-wood-to-concrete.png", icon_size = 64, } }, + enabled = false, + ingredients = { + { type = "item", name = "bi-rail-wood", amount = 2 }, + { type = "item", name = "stone-brick", amount = 6 }, + + }, + results = { { type = "item", name = "rail", amount = 2 } } }, ----- Recipe - { - type = "recipe", - name = "bi-rail-wood-to-concrete", - icons = { {icon = ICONPATH_E .. "rail-wood-to-concrete.png", icon_size = 64, } }, - enabled = false, - ingredients = - { - {type = "item", name = "bi-rail-wood", amount = 2}, - {type = "item", name = "stone-brick", amount = 6}, - }, - results = {{type="item", name="rail", amount=2}} - }, - - --- Entity - - { + + { type = "straight-rail", name = "bi-straight-rail-wood", order = "a[ground-rail]-a[bi-straight-rail-wood]", icon = ICONPATH_E .. "straight-rail-wood.png", - localised_name = {"entity-name.bi-straight-rail-wood"}, - collision_box = {{-1, -1}, {1, 1}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes - flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, - minable = {mining_time = 0.2, result = "bi-rail-wood", count = 1}, + localised_name = { "entity-name.bi-straight-rail-wood" }, + collision_box = { { -1, -1 }, { 1, 1 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes + flags = { "placeable-neutral", "player-creation", "building-direction-8-way" }, + minable = { mining_time = 0.2, result = "bi-rail-wood", count = 1 }, max_health = 200, corpse = "straight-rail-remnants", - dying_explosion = - { + dying_explosion = { name = "rail-explosion" }, - resistances = - { + resistances = { { type = "fire", percent = 100 @@ -84,45 +98,46 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") } }, -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged - selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, + selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } }, damaged_trigger_effect = hit_effects.wall(), pictures = new_rail_pictures_wood("straight"), - placeable_by = {item = "bi-rail-wood", count = 1}, + placeable_by = { item = "bi-rail-wood", count = 1 }, walking_sound = tile_sounds.walking.rails, extra_planner_goal_penalty = -4, - factoriopedia_alternative = "straight-rail" + factoriopedia_alternative = "straight-rail", + -- for upgrade planer (fast rail change wood/iron) + next_upgrade = "straight-rail", + fast_replaceable_group = "straight-rail", }, - + { type = "half-diagonal-rail", name = "bi-half-diagonal-rail-wood", order = "a[ground-rail]-b[bi-half-diagonal-rail-wood]", deconstruction_alternative = "bi-straight-rail-wood", icon = ICONPATH_E .. "curved-rail-wood.png", - localised_name = {"entity-name.bi-half-diagonal-rail-wood"}, - collision_box = {{-0.75, -2.236}, {0.75, 2.236}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes + localised_name = { "entity-name.bi-half-diagonal-rail-wood" }, + collision_box = { { -0.75, -2.236 }, { 0.75, 2.236 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes tile_height = 2, extra_planner_goal_penalty = -4, - flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, - minable = {mining_time = 0.2, result = "bi-rail-wood", count = 2}, + flags = { "placeable-neutral", "player-creation", "building-direction-8-way" }, + minable = { mining_time = 0.2, result = "bi-rail-wood", count = 2 }, max_health = 200, corpse = "half-diagonal-rail-remnants", - dying_explosion = - { + dying_explosion = { { name = "rail-explosion", - offset = {0.9, 2.2} + offset = { 0.9, 2.2 } }, { name = "rail-explosion" }, { name = "rail-explosion", - offset = {-1.2, -2} + offset = { -1.2, -2 } } }, - resistances = - { + resistances = { { type = "fire", percent = 100 @@ -133,13 +148,16 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") } }, -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged - selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, + selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } }, damaged_trigger_effect = hit_effects.wall(), pictures = new_rail_pictures_wood("half-diagonal"), - placeable_by = {item = "bi-rail-wood", count = 2}, + placeable_by = { item = "bi-rail-wood", count = 2 }, walking_sound = tile_sounds.walking.rails, extra_planner_penalty = 0, - factoriopedia_alternative = "straight-rail" + factoriopedia_alternative = "straight-rail", + -- for upgrade planer (fast rail change wood/iron) + next_upgrade = "half-diagonal-rail", + fast_replaceable_group = "half-diagonal-rail", }, { type = "curved-rail-a", @@ -147,28 +165,26 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") order = "a[ground-rail]-c[bi-curved-rail-a-wood]", deconstruction_alternative = "bi-straight-rail-wood", icon = ICONPATH_E .. "curved-rail-wood.png", - localised_name = {"entity-name.bi-curved-rail-a-wood"}, - collision_box = {{-0.75, -2.516}, {0.75, 2.516}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes - flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, - minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3}, + localised_name = { "entity-name.bi-curved-rail-a-wood" }, + collision_box = { { -0.75, -2.516 }, { 0.75, 2.516 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes + flags = { "placeable-neutral", "player-creation", "building-direction-8-way" }, + minable = { mining_time = 0.2, result = "bi-rail-wood", count = 3 }, max_health = 200, corpse = "curved-rail-a-remnants", - dying_explosion = - { + dying_explosion = { { name = "rail-explosion", - offset = {0.9, 2.2} + offset = { 0.9, 2.2 } }, { name = "rail-explosion" }, { name = "rail-explosion", - offset = {-1.2, -2} + offset = { -1.2, -2 } } }, - resistances = - { + resistances = { { type = "fire", percent = 100 @@ -179,14 +195,17 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") } }, -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged - selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, + selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } }, damaged_trigger_effect = hit_effects.wall(), pictures = new_rail_pictures_wood("curved-a"), - placeable_by = {item = "bi-rail-wood", count = 3}, + placeable_by = { item = "bi-rail-wood", count = 3 }, walking_sound = tile_sounds.walking.rails, extra_planner_penalty = 0.5, deconstruction_marker_positions = rail_8shifts_vector(-0.248, -0.533), - factoriopedia_alternative = "straight-rail" + factoriopedia_alternative = "straight-rail", + -- for upgrade planer (fast rail change wood/iron) + next_upgrade = "curved-rail-a", + fast_replaceable_group = "curved-rail-a", }, { type = "curved-rail-b", @@ -194,28 +213,26 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") order = "a[ground-rail]-d[bi-curved-rail-b-wood]", deconstruction_alternative = "bi-straight-rail-wood", icon = ICONPATH_E .. "curved-rail-wood.png", - localised_name = {"entity-name.bi-curved-rail-b-wood"}, - collision_box = {{-0.75, -2.441}, {0.75, 2.441}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes - flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, - minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3}, + localised_name = { "entity-name.bi-curved-rail-b-wood" }, + collision_box = { { -0.75, -2.441 }, { 0.75, 2.441 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes + flags = { "placeable-neutral", "player-creation", "building-direction-8-way" }, + minable = { mining_time = 0.2, result = "bi-rail-wood", count = 3 }, max_health = 200, corpse = "curved-rail-b-remnants", - dying_explosion = - { + dying_explosion = { { name = "rail-explosion", - offset = {0.9, 2.2} + offset = { 0.9, 2.2 } }, { name = "rail-explosion" }, { name = "rail-explosion", - offset = {-1.2, -2} + offset = { -1.2, -2 } } }, - resistances = - { + resistances = { { type = "fire", percent = 100 @@ -226,18 +243,16 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations") } }, -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged - selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, + selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } }, damaged_trigger_effect = hit_effects.wall(), pictures = new_rail_pictures_wood("curved-b"), - placeable_by = {item = "bi-rail-wood", count = 3}, + placeable_by = { item = "bi-rail-wood", count = 3 }, walking_sound = tile_sounds.walking.rails, extra_planner_penalty = 0.5, deconstruction_marker_positions = rail_8shifts_vector(-0.309, -0.155), - factoriopedia_alternative = "straight-rail" + factoriopedia_alternative = "straight-rail", + -- for upgrade planer (fast rail change wood/iron) + next_upgrade = "curved-rail-b", + fast_replaceable_group = "curved-rail-b", }, -}) - - - end - - +}) diff --git a/sources/graphics/entities/wood_products/huge-wooden-pole.afphoto b/sources/graphics/entities/wood_products/huge-wooden-pole.afphoto new file mode 100644 index 0000000..60c01bc Binary files /dev/null and b/sources/graphics/entities/wood_products/huge-wooden-pole.afphoto differ