diff --git a/LICENSE.txt b/LICENSE.txt
index 4e3ed2d..44e096b 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1,16 +1,16 @@
- TRAINBLOCKS: Adds signs fitting the advtrains theme
- Copyright (C) 2018 maxx, LuLa, gpcf
- Copyright (C) 2024 1F616EMO
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
+ TRAINBLOCKS: Adds signs fitting the advtrains theme
+ Copyright (C) 2018 maxx, LuLa, gpcf
+ Copyright (C) 2024 1F616EMO
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see .
\ No newline at end of file
diff --git a/alias.lua b/alias.lua
index 1093e54..0fb1344 100644
--- a/alias.lua
+++ b/alias.lua
@@ -1,26 +1,26 @@
--- trainblocks/alias.lua
--- For compactibility with advtrains_subwayblocks
---[[
- Copyright (C) 2018 maxx, LuLa, gpcf
- Copyright (C) 2024 1F616EMO
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see .
-]]
-
-for count = 1, 10, 1 do
- minetest.register_alias("advtrains_subwayblocks:line" .. count, "trainblocks:line" .. count)
-end
-
-minetest.register_alias("advtrains_subwayblocks:germany", "trainblocks:subwayblock")
-minetest.register_alias("advtrains_subwayblocks:mr", "trainblocks:mr")
+-- trainblocks/alias.lua
+-- For compactibility with advtrains_subwayblocks
+--[[
+ Copyright (C) 2018 maxx, LuLa, gpcf
+ Copyright (C) 2024 1F616EMO
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+]]
+
+for count = 1, 10, 1 do
+ minetest.register_alias("advtrains_subwayblocks:line" .. count, "trainblocks:line" .. count)
+end
+
+minetest.register_alias("advtrains_subwayblocks:germany", "trainblocks:subwayblock")
+minetest.register_alias("advtrains_subwayblocks:mr", "trainblocks:mr")
diff --git a/init.lua b/init.lua
index 335f3a9..dd748e4 100644
--- a/init.lua
+++ b/init.lua
@@ -1,421 +1,421 @@
--- trainblocks/init.lua
--- Adds signs fitting the advtrains theme
---[[
- Copyright (C) 2018 maxx, LuLa, gpcf
- Copyright (C) 2020, 2021 Montandalar/Blockhead
- Copyright (C) 2024 1F616EMO
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see .
-]]
-
-local S = minetest.get_translator("trainblocks")
-
-minetest.register_node("trainblocks:subwayblock", {
- description = S("Subway block"),
- light_source = 8,
- tiles = {
- "down_subwayblock.png",
- "down_subwayblock.png",
- "front_subwayblock.png",
- "front_subwayblock.png",
- "front_subwayblock.png",
- "front_subwayblock.png"
- },
- is_ground_content = true,
- groups = { cracky = 3 },
- drop = "trainblocks:subwayblock"
-})
-
-do
- -- Add a setting for legacy sbahnblock textures
- -- from https://github.com/Montandalar/trainblocks/commit/0fa3f52123bfe5aea386f987e7204c94aba72725
-
- local sbahncolorize = ""
- if minetest.settings:get_bool("trainblocks_legacy_sbahnblock", false) then
- sbahncolorize = "^[colorize:#00DF11FF"
- end --00E876FF
-
- minetest.register_node("trainblocks:sbahnblock", {
- description = S("S-Bahn block"),
- light_source = 8,
- tiles = {
- "down_sbahnblock.png",
- "down_sbahnblock.png" .. sbahncolorize,
- "front_sbahnblock.png",
- "front_sbahnblock.png",
- "front_sbahnblock.png",
- "front_sbahnblock.png"
- },
- is_ground_content = true,
- groups = { cracky = 3 },
- drop = "trainblocks:sbahnblock"
- })
-end
-
--- Platform 0 from https://github.com/Montandalar/trainblocks/commit/12a365d1c280d2b106621a8088229ee50937c488
--- Bonus: Line 0
-for count = 0, 10, 1 do
- minetest.register_node("trainblocks:line" .. count, {
- description = S("Line sign @1", count),
- tiles = { "front_line" .. count .. ".png" },
- drawtype = "nodebox",
- paramtype2 = "wallmounted",
- legacy_wallmounted = true,
- paramtype = "light",
- light_source = 12,
- sunlight_propagates = true,
- is_ground_content = false,
- walkable = false,
- groups = {
- choppy = 2,
- attached_node = 1,
- flammable = 2,
- oddly_breakable_by_hand = 3,
- not_blocking_trains = 1,
- },
- node_box = {
- type = "wallmounted",
- wall_top = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 },
- wall_bottom = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 },
- wall_side = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 },
- }
- })
-
- minetest.register_node("trainblocks:platformsign" .. count, {
- description = S("Platform sign @1", count),
- drawtype = "nodebox",
- tiles = { "front_platform" .. count .. ".png" },
- inventory_image = "inventory_platform" .. count .. ".png",
- light_source = 5,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- node_box = {
- type = "fixed",
- fixed = {
- { -4 / 16, -4 / 16, 6 / 16, 4 / 16, 4 / 16, 8 / 16 },
- },
- },
-
- })
-end
-
-minetest.register_node("trainblocks:subwaysignL", {
- description = S("Subway Sign (Left)"),
- tiles = {
- "subway_sign3.png",
- "subway_sign3.png",
- "subway_sign3.png",
- "subway_sign3.png",
- "subway_sign2.png",
- "subway_sign2.png^[transformFX",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
-})
-
-minetest.register_node("trainblocks:subwaysignR", {
- description = S("Subway Sign (Right)"),
- tiles = {
- "subway_sign3.png",
- "subway_sign3.png",
- "subway_sign3.png",
- "subway_sign3.png",
- "subway_sign2.png",
- "subway_sign2.png",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
-})
-
-minetest.register_node("trainblocks:sbahnsignL", {
- description = S("S-Bahn Sign (Left)"),
- tiles = {
- "sbahn_sign3.png",
- "sbahn_sign3.png",
- "sbahn_sign3.png",
- "sbahn_sign3.png",
- "sbahn_sign2l.png",
- "sbahn_sign2l.png^[transformFX",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
-})
-
-minetest.register_node("trainblocks:sbahnsignR", {
- description = S("S-Bahn Sign (Right)"),
- tiles = {
- "sbahn_sign3.png",
- "sbahn_sign3.png",
- "sbahn_sign3.png",
- "sbahn_sign3.png",
- "sbahn_sign2.png",
- "sbahn_sign2.png",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
-})
-
-minetest.register_node("trainblocks:stationsignL", {
- description = S("Station Sign (Left)"),
- tiles = {
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign2.png",
- "station_sign2.png^[transformFX",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
-})
-
-minetest.register_node("trainblocks:stationsignR", {
- description = S("Station Sign (Right)"),
- tiles = {
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign2.png",
- "station_sign2.png",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
-})
-
-minetest.register_node("trainblocks:station_block", {
- description = S("Station Block"),
- light_source = 8,
- tiles = {
- "down_station_sign.png",
- "down_station_sign.png",
- "front_station_sign.png",
- "front_station_sign.png",
- "front_station_sign.png",
- "front_station_sign.png"
- },
- is_ground_content = true,
- groups = { cracky = 3 },
- drop = "trainblocks:station_block"
-})
-
-minetest.register_node("trainblocks:mr", {
- description = S("Mountain Railway Block"),
- light_source = 8,
- tiles = {
- "down_mr.png",
- "down_mr.png",
- "front_mr.png",
- "front_mr.png",
- "front_mr.png",
- "front_mr.png"
- },
- is_ground_content = true,
- groups = { cracky = 3 },
- drop = "trainblocks:sbahnblock"
-})
-
--- Modern station blocks
--- from https://github.com/Montandalar/trainblocks/commit/12a365d1c280d2b106621a8088229ee50937c488
-
-minetest.register_node("trainblocks:stationsignL_modern", {
- description = S("Modern Station Sign (Left)"),
- tiles = {
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign2_modern.png",
- "station_sign2_modern.png^[transformFX",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
-
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = { cracky = 3 },
-})
-
-minetest.register_node("trainblocks:stationsignR_modern", {
- description = S("Modern Station Sign (Right)"),
- tiles = {
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign3.png",
- "station_sign2_modern.png",
- "station_sign2_modern.png",
- },
- drawtype = "nodebox",
- node_box = {
- type = "fixed",
- fixed = {
- { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
- },
- },
-
- paramtype2 = "facedir",
- paramtype = 'light',
- light_source = 6,
- is_ground_content = false,
- groups = { cracky = 3 },
-})
-
-minetest.register_node("trainblocks:station_block_modern", {
- description = S("Modern Station Block"),
- light_source = 8,
- tiles = {
- "down_station_sign.png",
- "down_station_sign.png",
- "front_station_sign_modern.png",
- "front_station_sign_modern.png",
- "front_station_sign_modern.png",
- "front_station_sign_modern.png",
- },
- is_ground_content = true,
- groups = { cracky = 3 },
- drop = "trainblocks:station_block"
-})
-
--- "No Pedestrains" signs
--- from https://github.com/Montandalar/trainblocks/commit/3e00d5cf40759c085deccc915f1fa6fb2c092523
--- train blocking fix from https://github.com/Montandalar/trainblocks/commit/a312afc27c2967e0ba04d6b4da3a074cf54f73df
-
-local box_flat = {
- type = "fixed",
- fixed = { -0.5000, -0.4375, -0.5000, 0.5000, -0.4375, 0.5000 }
-}
-
-local pedsigns = {
- { name = "no_pedestrians", desc = S("No Pedestrians Sign") },
- { name = "durchgang_verboten", desc = S("No Pedestrians Sign (German)") }
-}
-
-for _, v in pairs(pedsigns) do
- minetest.register_node("trainblocks:" .. v.name, {
- description = v.desc,
- light_source = 2,
- drawtype = "signlike",
- paramtype = "light",
- paramtype2 = "wallmounted",
- tiles = { v.name .. ".png" },
- inventory_image = v.name .. ".png",
- wield_image = v.name .. ".png",
- groups = {
- cracky = 3,
- not_blocking_trains = 1,
- },
- drop = "trainblocks:" .. v.name,
- is_ground_content = true,
- node_box = box_flat,
- selection_box = box_flat,
- })
-end
-
--- Add a setting to disable crafting recipes
--- from https://github.com/Montandalar/trainblocks/commit/15e2b88f44671aa68d1a758a6aca363b602a1282
-if not minetest.settings:get_bool('trainblocks_disable_recipes', false) then
- dofile(minetest.get_modpath("trainblocks") .. "/craft.lua")
-end
-
-dofile(minetest.get_modpath("trainblocks") .. "/alias.lua")
+-- trainblocks/init.lua
+-- Adds signs fitting the advtrains theme
+--[[
+ Copyright (C) 2018 maxx, LuLa, gpcf
+ Copyright (C) 2020, 2021 Montandalar/Blockhead
+ Copyright (C) 2024 1F616EMO
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+]]
+
+local S = minetest.get_translator("trainblocks")
+
+minetest.register_node("trainblocks:subwayblock", {
+ description = S("Subway block"),
+ light_source = 8,
+ tiles = {
+ "down_subwayblock.png",
+ "down_subwayblock.png",
+ "front_subwayblock.png",
+ "front_subwayblock.png",
+ "front_subwayblock.png",
+ "front_subwayblock.png"
+ },
+ is_ground_content = true,
+ groups = { cracky = 3 },
+ drop = "trainblocks:subwayblock"
+})
+
+do
+ -- Add a setting for legacy sbahnblock textures
+ -- from https://github.com/Montandalar/trainblocks/commit/0fa3f52123bfe5aea386f987e7204c94aba72725
+
+ local sbahncolorize = ""
+ if minetest.settings:get_bool("trainblocks_legacy_sbahnblock", false) then
+ sbahncolorize = "^[colorize:#00DF11FF"
+ end --00E876FF
+
+ minetest.register_node("trainblocks:sbahnblock", {
+ description = S("S-Bahn block"),
+ light_source = 8,
+ tiles = {
+ "down_sbahnblock.png",
+ "down_sbahnblock.png" .. sbahncolorize,
+ "front_sbahnblock.png",
+ "front_sbahnblock.png",
+ "front_sbahnblock.png",
+ "front_sbahnblock.png"
+ },
+ is_ground_content = true,
+ groups = { cracky = 3 },
+ drop = "trainblocks:sbahnblock"
+ })
+end
+
+-- Platform 0 from https://github.com/Montandalar/trainblocks/commit/12a365d1c280d2b106621a8088229ee50937c488
+-- Bonus: Line 0
+for count = 0, 10, 1 do
+ minetest.register_node("trainblocks:line" .. count, {
+ description = S("Line sign @1", count),
+ tiles = { "front_line" .. count .. ".png" },
+ drawtype = "nodebox",
+ paramtype2 = "wallmounted",
+ legacy_wallmounted = true,
+ paramtype = "light",
+ light_source = 12,
+ sunlight_propagates = true,
+ is_ground_content = false,
+ walkable = false,
+ groups = {
+ choppy = 2,
+ attached_node = 1,
+ flammable = 2,
+ oddly_breakable_by_hand = 3,
+ not_blocking_trains = 1,
+ },
+ node_box = {
+ type = "wallmounted",
+ wall_top = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 },
+ wall_bottom = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 },
+ wall_side = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 },
+ }
+ })
+
+ minetest.register_node("trainblocks:platformsign" .. count, {
+ description = S("Platform sign @1", count),
+ drawtype = "nodebox",
+ tiles = { "front_platform" .. count .. ".png" },
+ inventory_image = "inventory_platform" .. count .. ".png",
+ light_source = 5,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -4 / 16, -4 / 16, 6 / 16, 4 / 16, 4 / 16, 8 / 16 },
+ },
+ },
+
+ })
+end
+
+minetest.register_node("trainblocks:subwaysignL", {
+ description = S("Subway Sign (Left)"),
+ tiles = {
+ "subway_sign3.png",
+ "subway_sign3.png",
+ "subway_sign3.png",
+ "subway_sign3.png",
+ "subway_sign2.png",
+ "subway_sign2.png^[transformFX",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+})
+
+minetest.register_node("trainblocks:subwaysignR", {
+ description = S("Subway Sign (Right)"),
+ tiles = {
+ "subway_sign3.png",
+ "subway_sign3.png",
+ "subway_sign3.png",
+ "subway_sign3.png",
+ "subway_sign2.png",
+ "subway_sign2.png",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+})
+
+minetest.register_node("trainblocks:sbahnsignL", {
+ description = S("S-Bahn Sign (Left)"),
+ tiles = {
+ "sbahn_sign3.png",
+ "sbahn_sign3.png",
+ "sbahn_sign3.png",
+ "sbahn_sign3.png",
+ "sbahn_sign2l.png",
+ "sbahn_sign2l.png^[transformFX",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+})
+
+minetest.register_node("trainblocks:sbahnsignR", {
+ description = S("S-Bahn Sign (Right)"),
+ tiles = {
+ "sbahn_sign3.png",
+ "sbahn_sign3.png",
+ "sbahn_sign3.png",
+ "sbahn_sign3.png",
+ "sbahn_sign2.png",
+ "sbahn_sign2.png",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+})
+
+minetest.register_node("trainblocks:stationsignL", {
+ description = S("Station Sign (Left)"),
+ tiles = {
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign2.png",
+ "station_sign2.png^[transformFX",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+})
+
+minetest.register_node("trainblocks:stationsignR", {
+ description = S("Station Sign (Right)"),
+ tiles = {
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign2.png",
+ "station_sign2.png",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+})
+
+minetest.register_node("trainblocks:station_block", {
+ description = S("Station Block"),
+ light_source = 8,
+ tiles = {
+ "down_station_sign.png",
+ "down_station_sign.png",
+ "front_station_sign.png",
+ "front_station_sign.png",
+ "front_station_sign.png",
+ "front_station_sign.png"
+ },
+ is_ground_content = true,
+ groups = { cracky = 3 },
+ drop = "trainblocks:station_block"
+})
+
+minetest.register_node("trainblocks:mr", {
+ description = S("Mountain Railway Block"),
+ light_source = 8,
+ tiles = {
+ "down_mr.png",
+ "down_mr.png",
+ "front_mr.png",
+ "front_mr.png",
+ "front_mr.png",
+ "front_mr.png"
+ },
+ is_ground_content = true,
+ groups = { cracky = 3 },
+ drop = "trainblocks:sbahnblock"
+})
+
+-- Modern station blocks
+-- from https://github.com/Montandalar/trainblocks/commit/12a365d1c280d2b106621a8088229ee50937c488
+
+minetest.register_node("trainblocks:stationsignL_modern", {
+ description = S("Modern Station Sign (Left)"),
+ tiles = {
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign2_modern.png",
+ "station_sign2_modern.png^[transformFX",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = { cracky = 3 },
+})
+
+minetest.register_node("trainblocks:stationsignR_modern", {
+ description = S("Modern Station Sign (Right)"),
+ tiles = {
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign3.png",
+ "station_sign2_modern.png",
+ "station_sign2_modern.png",
+ },
+ drawtype = "nodebox",
+ node_box = {
+ type = "fixed",
+ fixed = {
+ { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 },
+ },
+ },
+
+ paramtype2 = "facedir",
+ paramtype = 'light',
+ light_source = 6,
+ is_ground_content = false,
+ groups = { cracky = 3 },
+})
+
+minetest.register_node("trainblocks:station_block_modern", {
+ description = S("Modern Station Block"),
+ light_source = 8,
+ tiles = {
+ "down_station_sign.png",
+ "down_station_sign.png",
+ "front_station_sign_modern.png",
+ "front_station_sign_modern.png",
+ "front_station_sign_modern.png",
+ "front_station_sign_modern.png",
+ },
+ is_ground_content = true,
+ groups = { cracky = 3 },
+ drop = "trainblocks:station_block"
+})
+
+-- "No Pedestrains" signs
+-- from https://github.com/Montandalar/trainblocks/commit/3e00d5cf40759c085deccc915f1fa6fb2c092523
+-- train blocking fix from https://github.com/Montandalar/trainblocks/commit/a312afc27c2967e0ba04d6b4da3a074cf54f73df
+
+local box_flat = {
+ type = "fixed",
+ fixed = { -0.5000, -0.4375, -0.5000, 0.5000, -0.4375, 0.5000 }
+}
+
+local pedsigns = {
+ { name = "no_pedestrians", desc = S("No Pedestrians Sign") },
+ { name = "durchgang_verboten", desc = S("No Pedestrians Sign (German)") }
+}
+
+for _, v in pairs(pedsigns) do
+ minetest.register_node("trainblocks:" .. v.name, {
+ description = v.desc,
+ light_source = 2,
+ drawtype = "signlike",
+ paramtype = "light",
+ paramtype2 = "wallmounted",
+ tiles = { v.name .. ".png" },
+ inventory_image = v.name .. ".png",
+ wield_image = v.name .. ".png",
+ groups = {
+ cracky = 3,
+ not_blocking_trains = 1,
+ },
+ drop = "trainblocks:" .. v.name,
+ is_ground_content = true,
+ node_box = box_flat,
+ selection_box = box_flat,
+ })
+end
+
+-- Add a setting to disable crafting recipes
+-- from https://github.com/Montandalar/trainblocks/commit/15e2b88f44671aa68d1a758a6aca363b602a1282
+if not minetest.settings:get_bool('trainblocks_disable_recipes', false) then
+ dofile(minetest.get_modpath("trainblocks") .. "/craft.lua")
+end
+
+dofile(minetest.get_modpath("trainblocks") .. "/alias.lua")