Rail Graphic update

This commit is contained in:
TheSAguy 2025-09-06 10:09:27 -07:00 committed by Simon Brodtmann
parent 7905b45347
commit c9bce1c6d9
11 changed files with 307 additions and 10 deletions

View file

@ -1,4 +1,9 @@
--------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------
Version: 2.0.12
Date: 05.09.2025
Changes:
- Updated Wood Rail Graphic. No more ugly Tint. (Thanks Snouz!)
---------------------------------------------------------------------------------------------------
Version: 2.0.11 Version: 2.0.11
Date: 04.09.2025 Date: 04.09.2025
Bug Fixes: Bug Fixes:

View file

@ -537,7 +537,8 @@ if BI.Settings.BI_Game_Tweaks_Recipe then
thxbob.lib.recipe.add_new_ingredient("bi-rail-wood", { type = "item", name = "stone-crushed", amount = 6 }) thxbob.lib.recipe.add_new_ingredient("bi-rail-wood", { type = "item", name = "stone-crushed", amount = 6 })
end end
-- vanilla rail recipe update -- vanilla rail update
--- Recipe
thxbob.lib.recipe.remove_ingredient("rail", "iron-stick") thxbob.lib.recipe.remove_ingredient("rail", "iron-stick")
thxbob.lib.recipe.add_new_ingredient("rail", { type = "item", name = "concrete", amount = 2 }) thxbob.lib.recipe.add_new_ingredient("rail", { type = "item", name = "concrete", amount = 2 })
data.raw["legacy-straight-rail"]["legacy-straight-rail"].icon = ICONPATH_E .. "rail-concrete.png" data.raw["legacy-straight-rail"]["legacy-straight-rail"].icon = ICONPATH_E .. "rail-concrete.png"
@ -547,6 +548,25 @@ if BI.Settings.BI_Game_Tweaks_Recipe then
thxbob.lib.tech.add_recipe_unlock("railway", "bi-rail-wood") thxbob.lib.tech.add_recipe_unlock("railway", "bi-rail-wood")
thxbob.lib.tech.add_recipe_unlock("railway", "bi-rail-wood-to-concrete") thxbob.lib.tech.add_recipe_unlock("railway", "bi-rail-wood-to-concrete")
--- Update Vanilla Images - Look more like concrete
require("prototypes.Wood_Products.rail-pictures-vanilla")
data.raw["straight-rail"]["straight-rail"].pictures = new_rail_pictures_vanilla("straight")
data.raw["half-diagonal-rail"]["half-diagonal-rail"].pictures = new_rail_pictures_vanilla("half-diagonal")
data.raw["curved-rail-a"]["curved-rail-a"].pictures = new_rail_pictures_vanilla("curved-a")
data.raw["curved-rail-b"]["curved-rail-b"].pictures = new_rail_pictures_vanilla("curved-b")
--- remnants
data.raw["rail-remnants"]["straight-rail-remnants"].pictures = new_rail_remnants_pictures_vanilla("straight")
data.raw["rail-remnants"]["half-diagonal-rail-remnants"].pictures = new_rail_remnants_pictures_vanilla("half-diagonal")
data.raw["rail-remnants"]["curved-rail-a-remnants"].pictures = new_rail_remnants_pictures_vanilla("curved-a")
data.raw["rail-remnants"]["curved-rail-b-remnants"].pictures = new_rail_remnants_pictures_vanilla("curved-b")
--- Let me try and remove decoratives at the same time (Does not seem to work...)
data.raw["rail-planner"]["bi-rail-wood"].decorative_removal_probability = 1.0
data.raw["straight-rail"]["straight-rail"].decorative_removal_probability = 1.0
data.raw["half-diagonal-rail"]["half-diagonal-rail"].decorative_removal_probability = 1.0
data.raw["curved-rail-a"]["curved-rail-a"].decorative_removal_probability = 1.0
data.raw["curved-rail-b"]["curved-rail-b"].decorative_removal_probability = 1.0
end end

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 MiB

View file

@ -1,6 +1,6 @@
{ {
"name": "Bio_Industries_2", "name": "Bio_Industries_2",
"version": "2.0.11", "version": "2.0.12",
"factorio_version": "2.0", "factorio_version": "2.0",
"title": "Bio Industries", "title": "Bio Industries",
"author": "TheSAguy - Had a few Ideas, Pi-C (Programming Genius), Snouz (Graphics Wizard), Cackling Fiend - Conversion to F2.0", "author": "TheSAguy - Had a few Ideas, Pi-C (Programming Genius), Snouz (Graphics Wizard), Cackling Fiend - Conversion to F2.0",

View file

@ -34,6 +34,7 @@ bi-power-to-rail-pole=Powered rails connector
bi-rail-power=Powered rails bi-rail-power=Powered rails
bi-rail-wood-bridge=Wooden rail bridge bi-rail-wood-bridge=Wooden rail bridge
bi-rail-wood=Wooden rails bi-rail-wood=Wooden rails
bi-straight-rail-wood=Wooden rails
bi-curved-rail-a-wood=Wooden rails bi-curved-rail-a-wood=Wooden rails
bi-curved-rail-b-wood=Wooden rails bi-curved-rail-b-wood=Wooden rails
bi-half-diagonal-rail-wood=Wooden rails bi-half-diagonal-rail-wood=Wooden rails

View file

@ -0,0 +1,267 @@
local util = require("util")
local ground_rail_render_layers =
{
stone_path_lower = "rail-stone-path-lower",
stone_path = "rail-stone-path",
tie = "rail-tie",
screw = "rail-screw",
metal = "rail-metal"
}
local rail_segment_visualisation_endings =
{
filename = "__base__/graphics/entity/rails/rail/rail-segment-visualisations-endings.png",
priority = "extra-high",
flags = { "low-object" },
width = 64,
height = 64,
scale = 0.5,
direction_count = 16,
frame_count = 6,
usage = "rail"
}
local function make_new_rail_pictures(keys, elems, max_variations)
local function make_sprite_definition(filename, elem, key, variation_count)
return
{
filename = filename,
priority = elem.priority or "extra-high",
flags = elem.mipmap and { "trilinear-filtering" } or { "low-object" },
draw_as_shadow = elem.draw_as_shadow,
allow_forced_downscale = elem.allow_forced_downscale,
width = key[3][1],
height = key[3][2],
x = key[2][1],
y = key[2][2],
scale = 0.5;
shift = util.by_pixel(key[4][1], key[4][2]),
variation_count = variation_count,
usage = "rail"
}
end
local res = {}
for _ , key in ipairs(keys) do
local part = {}
local variation_count = key[5] or 1
if max_variations then
variation_count = math.min(variation_count, max_variations)
end
if (variation_count > 0) then
for _ , elem in ipairs(elems) do
local layers = nil
local variations = variation_count;
if (elem[1] == "segment_visualisation_middle") then
variations = nil
end
if (type(elem[2]) == "table") then
layers = { layers = {} }
for _, subelem in ipairs(elem[2]) do
table.insert(layers.layers, make_sprite_definition(subelem[1], subelem, key, variations))
end
else
layers = make_sprite_definition(elem[2], elem, key, variations)
end
if (elem[1] ~= nil) then
part[elem[1]] = layers
else
part = layers
end
end
end
res[key[1]] = part
end
return res
end
function new_rail_pictures_vanilla(rail_type)
local keys
local NOT_USED_POSITION = {0, 0}
local NOT_USED_SIZE = {1, 1}
local NOT_USED_SHIFT = {0, 0}
if rail_type == "straight" then
keys =
{
{"north", { 0, 256 }, {256, 256}, {0,0}, 8},
{"northeast", { 0, 2048 }, {384, 384}, {0,0}, 3},
{"east", { 0, 0 }, {256, 256}, {0,0}, 8},
{"southeast", { 0, 896 }, {384, 384}, {0,0}, 3},
{"south", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"southwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"west", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"northwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0}
}
elseif rail_type == "half-diagonal" then
keys =
{
{"north", { 0, 1280 }, {384, 384}, {0,0}, 3},
{"northeast", { 0, 1664 }, {384, 384}, {0,0}, 3},
{"east", { 0, 2432 }, {384, 384}, {0,0}, 3},
{"southeast", { 0, 512 }, {384, 384}, {0,0}, 3},
{"south", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"southwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"west", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"northwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0}
}
elseif rail_type == "curved-a" then
keys =
{
{"north", { 2048, 3 * 512 }, {512, 512}, {0,0}, 4},-- piece 04
{"northeast", { 2048, 12 * 512 }, {512, 512}, {0,0}, 4},-- piece 13
{"east", { 2048, 7 * 512 }, {512, 512}, {0,0}, 4},-- piece 08
{"southeast", { 2048, 0 * 512 }, {512, 512}, {0,0}, 4},-- piece 01
{"south", { 2048, 11 * 512 }, {512, 512}, {0,0}, 4},-- piece 12
{"southwest", { 2048, 4 * 512 }, {512, 512}, {0,0}, 4},-- piece 05
{"west", { 2048, 15 * 512 }, {512, 512}, {0,0}, 4},-- piece 16
{"northwest", { 2048, 8 * 512 }, {512, 512}, {0,0}, 4},-- piece 09
}
elseif rail_type == "curved-b" then
keys =
{
{"north", { 2048, 2 * 512 }, {512, 512}, {0,0}, 4},-- piece 03
{"northeast", { 2048, 13 * 512 }, {512, 512}, {0,0}, 4},-- piece 14
{"east", { 2048, 6 * 512 }, {512, 512}, {0,0}, 4},-- piece 07
{"southeast", { 2048, 1 * 512 }, {512, 512}, {0,0}, 4},-- piece 02
{"south", { 2048, 10 * 512 }, {512, 512}, {0,0}, 4},-- piece 11
{"southwest", { 2048, 5 * 512 }, {512, 512}, {0,0}, 4},-- piece 06
{"west", { 2048, 14 * 512 }, {512, 512}, {0,0}, 4},-- piece 15
{"northwest", { 2048, 9 * 512 }, {512, 512}, {0,0}, 4},-- piece 10
}
end
local elems =
{
{ "metals", "__base__/graphics/entity/rails/rail/rail-metals.png", mipmap = true },
{ "backplates", "__base__/graphics/entity/rails/rail/rail-backplates.png", mipmap = true },
{ "ties", "__Bio_Industries_2__/graphics/entities/wood_products/rails/new_rail/rail-ties-concrete.png" },
{ "stone_path", "__base__/graphics/entity/rails/rail/rail-stone-path-inside.png" },
{ "stone_path_background", "__base__/graphics/entity/rails/rail/rail-stone-path.png" },
{ "segment_visualisation_middle", "__base__/graphics/entity/rails/rail/rail-segment-visualisations-middle.png" },
}
local res = make_new_rail_pictures(keys, elems)
res["rail_endings"] =
{
sheets =
{
{
filename = "__base__/graphics/entity/rails/rail/rail-endings-background.png",
priority = "high",
flags = { "low-object" },
width = 256,
height = 256,
scale = 0.5,
usage = "rail"
},
{
filename = "__base__/graphics/entity/rails/rail/rail-endings-foreground.png",
priority = "high",
flags = { "trilinear-filtering" },
width = 256,
height = 256,
scale = 0.5,
usage = "rail"
}
}
}
res["render_layers"] = ground_rail_render_layers
res["segment_visualisation_endings"] = rail_segment_visualisation_endings
return res
end
function new_rail_remnants_pictures_vanilla(rail_type)
local keys
local NOT_USED_POSITION = {0, 0}
local NOT_USED_SIZE = {1, 1}
local NOT_USED_SHIFT = {0, 0}
if rail_type == "straight" then
keys =
{
{"north", { 0, 256 }, {256, 256}, {0,0}, 8},
{"northeast", { 0, 2048 }, {384, 384}, {0,0}, 3},
{"east", { 0, 0 }, {256, 256}, {0,0}, 8},
{"southeast", { 0, 896 }, {384, 384}, {0,0}, 3},
{"south", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"southwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"west", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"northwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0}
}
elseif rail_type == "half-diagonal" then
keys =
{
{"north", { 0, 1280 }, {384, 384}, {0,0}, 3},
{"northeast", { 0, 1664 }, {384, 384}, {0,0}, 3},
{"east", { 0, 2432 }, {384, 384}, {0,0}, 3},
{"southeast", { 0, 512 }, {384, 384}, {0,0}, 3},
{"south", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"southwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"west", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0},
{"northwest", NOT_USED_POSITION, NOT_USED_SIZE, NOT_USED_SHIFT, 0}
}
elseif rail_type == "curved-a" then
keys =
{
{"north", { 2048, 3 * 512 }, {512, 512}, {0,0}, 4},-- piece 04
{"northeast", { 2048, 12 * 512 }, {512, 512}, {0,0}, 4},-- piece 13
{"east", { 2048, 7 * 512 }, {512, 512}, {0,0}, 4},-- piece 08
{"southeast", { 2048, 0 * 512 }, {512, 512}, {0,0}, 4},-- piece 01
{"south", { 2048, 11 * 512 }, {512, 512}, {0,0}, 4},-- piece 12
{"southwest", { 2048, 4 * 512 }, {512, 512}, {0,0}, 4},-- piece 05
{"west", { 2048, 15 * 512 }, {512, 512}, {0,0}, 4},-- piece 16
{"northwest", { 2048, 8 * 512 }, {512, 512}, {0,0}, 4},-- piece 09
}
elseif rail_type == "curved-b" then
keys =
{
{"north", { 2048, 2 * 512 }, {512, 512}, {0,0}, 4},-- piece 03
{"northeast", { 2048, 13 * 512 }, {512, 512}, {0,0}, 4},-- piece 14
{"east", { 2048, 6 * 512 }, {512, 512}, {0,0}, 4},-- piece 07
{"southeast", { 2048, 1 * 512 }, {512, 512}, {0,0}, 4},-- piece 02
{"south", { 2048, 10 * 512 }, {512, 512}, {0,0}, 4},-- piece 11
{"southwest", { 2048, 5 * 512 }, {512, 512}, {0,0}, 4},-- piece 06
{"west", { 2048, 14 * 512 }, {512, 512}, {0,0}, 4},-- piece 15
{"northwest", { 2048, 9 * 512 }, {512, 512}, {0,0}, 4},-- piece 10
}
end
local elems =
{
{ "metals", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-metals.png", mipmap = true, allow_forced_downscale = true },
{ "backplates", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-backplates.png", mipmap = true, allow_forced_downscale = true },
{ "ties", "__Bio_Industries_2__/graphics/entities/wood_products/rails/new_rail/rail-remnants-ties-concrete.png" , allow_forced_downscale = true },
{ "stone_path", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-stone-path-inside.png" , allow_forced_downscale = true },
{ "stone_path_background", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-stone-path.png" , allow_forced_downscale = true }
}
local res = make_new_rail_pictures(keys, elems)
res["rail_endings"] =
{
sheets =
{
{
filename = "__base__/graphics/entity/rails/rail/rail-endings-background.png",
priority = "high",
flags = { "low-object" },
width = 256,
height = 256,
scale = 0.5,
usage = "rail"
},
{
filename = "__base__/graphics/entity/rails/rail/rail-endings-foreground.png",
priority = "high",
flags = { "trilinear-filtering" },
width = 256,
height = 256,
scale = 0.5,
usage = "rail"
}
}
}
res["render_layers"] = ground_rail_render_layers
return res
end

View file

@ -21,7 +21,7 @@ local rail_segment_visualisation_endings =
scale = 0.5, scale = 0.5,
direction_count = 16, direction_count = 16,
frame_count = 6, frame_count = 6,
tint = wood_tint, -- tint = wood_tint,
usage = "rail" usage = "rail"
} }
@ -41,7 +41,7 @@ local function make_new_rail_pictures_wood(keys, elems, max_variations)
scale = 0.5; scale = 0.5;
shift = util.by_pixel(key[4][1], key[4][2]), shift = util.by_pixel(key[4][1], key[4][2]),
variation_count = variation_count, variation_count = variation_count,
tint = wood_tint, -- tint = wood_tint,
usage = "rail" usage = "rail"
} }
end end
@ -140,7 +140,7 @@ function new_rail_pictures_wood(rail_type)
{ {
{ "metals", "__base__/graphics/entity/rails/rail/rail-metals.png", mipmap = true }, { "metals", "__base__/graphics/entity/rails/rail/rail-metals.png", mipmap = true },
{ "backplates", "__base__/graphics/entity/rails/rail/rail-backplates.png", mipmap = true }, { "backplates", "__base__/graphics/entity/rails/rail/rail-backplates.png", mipmap = true },
{ "ties", "__base__/graphics/entity/rails/rail/rail-ties.png" }, { "ties", "__Bio_Industries_2__/graphics/entities/wood_products/rails/new_rail/rail-ties-wood.png" },
{ "stone_path", "__base__/graphics/entity/rails/rail/rail-stone-path-inside.png" }, { "stone_path", "__base__/graphics/entity/rails/rail/rail-stone-path-inside.png" },
{ "stone_path_background", "__base__/graphics/entity/rails/rail/rail-stone-path.png" }, { "stone_path_background", "__base__/graphics/entity/rails/rail/rail-stone-path.png" },
{ "segment_visualisation_middle", "__base__/graphics/entity/rails/rail/rail-segment-visualisations-middle.png" }, { "segment_visualisation_middle", "__base__/graphics/entity/rails/rail/rail-segment-visualisations-middle.png" },
@ -158,7 +158,7 @@ function new_rail_pictures_wood(rail_type)
width = 256, width = 256,
height = 256, height = 256,
scale = 0.5, scale = 0.5,
tint = wood_tint, -- tint = wood_tint,
usage = "rail" usage = "rail"
}, },
{ {
@ -168,7 +168,7 @@ function new_rail_pictures_wood(rail_type)
width = 256, width = 256,
height = 256, height = 256,
scale = 0.5, scale = 0.5,
tint = wood_tint, -- tint = wood_tint,
usage = "rail" usage = "rail"
} }
} }
@ -236,7 +236,7 @@ function new_rail_remnants_pictures(rail_type)
{ {
{ "metals", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-metals.png", mipmap = true, allow_forced_downscale = true }, { "metals", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-metals.png", mipmap = true, allow_forced_downscale = true },
{ "backplates", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-backplates.png", mipmap = true, allow_forced_downscale = true }, { "backplates", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-backplates.png", mipmap = true, allow_forced_downscale = true },
{ "ties", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-ties.png" , allow_forced_downscale = true }, { "ties", "__Bio_Industries_2__/graphics/entities/wood_products/rails/new_rail/rail-remnants-ties-wood.png" , allow_forced_downscale = true },
{ "stone_path", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-stone-path-inside.png" , allow_forced_downscale = true }, { "stone_path", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-stone-path-inside.png" , allow_forced_downscale = true },
{ "stone_path_background", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-stone-path.png" , allow_forced_downscale = true } { "stone_path_background", "__base__/graphics/entity/rails/rail/remnants/rail-remnants-stone-path.png" , allow_forced_downscale = true }
} }
@ -253,7 +253,7 @@ function new_rail_remnants_pictures(rail_type)
width = 256, width = 256,
height = 256, height = 256,
scale = 0.5, scale = 0.5,
tint = wood_tint, -- tint = wood_tint,
usage = "rail" usage = "rail"
}, },
{ {
@ -263,7 +263,7 @@ function new_rail_remnants_pictures(rail_type)
width = 256, width = 256,
height = 256, height = 256,
scale = 0.5, scale = 0.5,
tint = wood_tint, -- tint = wood_tint,
usage = "rail" usage = "rail"
} }
} }

View file

@ -76,6 +76,7 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
name = "bi-straight-rail-wood", name = "bi-straight-rail-wood",
order = "a[ground-rail]-a[bi-straight-rail-wood]", order = "a[ground-rail]-a[bi-straight-rail-wood]",
icon = ICONPATH_E .. "straight-rail-wood.png", 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 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"}, flags = {"placeable-neutral", "player-creation", "building-direction-8-way"},
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 1}, minable = {mining_time = 0.2, result = "bi-rail-wood", count = 1},
@ -112,6 +113,7 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
order = "a[ground-rail]-b[bi-half-diagonal-rail-wood]", order = "a[ground-rail]-b[bi-half-diagonal-rail-wood]",
deconstruction_alternative = "bi-straight-rail-wood", deconstruction_alternative = "bi-straight-rail-wood",
icon = ICONPATH_E .. "curved-rail-wood.png", 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 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, tile_height = 2,
extra_planner_goal_penalty = -4, extra_planner_goal_penalty = -4,
@ -159,6 +161,7 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
order = "a[ground-rail]-c[bi-curved-rail-a-wood]", order = "a[ground-rail]-c[bi-curved-rail-a-wood]",
deconstruction_alternative = "bi-straight-rail-wood", deconstruction_alternative = "bi-straight-rail-wood",
icon = ICONPATH_E .. "curved-rail-wood.png", 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 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"}, flags = {"placeable-neutral", "player-creation", "building-direction-8-way"},
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3}, minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3},
@ -205,6 +208,7 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
order = "a[ground-rail]-d[bi-curved-rail-b-wood]", order = "a[ground-rail]-d[bi-curved-rail-b-wood]",
deconstruction_alternative = "bi-straight-rail-wood", deconstruction_alternative = "bi-straight-rail-wood",
icon = ICONPATH_E .. "curved-rail-wood.png", 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 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"}, flags = {"placeable-neutral", "player-creation", "building-direction-8-way"},
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3}, minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3},