diff --git a/game_api.txt b/game_api.txt index 99c34a78..0bc10127 100644 --- a/game_api.txt +++ b/game_api.txt @@ -194,6 +194,26 @@ xpanes.register_pane(subname, def) ^ Recipe field only } +Raillike definitions +-------------------- +The following nodes use the group `connect_to_raillike` and will only connect to +raillike nodes within this group and the same group value: + +| Node type | Group value ++-----------------------+---------------------------------- +| default:rail | default.connect_to_raillike.rails + +This is an overview of currently used groups: +| Group value | Description ++---------------------------------------+------------ +| default.connect_to_raillike.rails | Rails + +Example: +If you want to add a new rail type and want it to connect with default:rail, +add `connect_to_raillike=default.connect_to_raillike.rails` into the `groups` table +of your node. + + Default sounds -------------- Sounds inside the default table can be used within the sounds field of node definitions. diff --git a/mods/default/init.lua b/mods/default/init.lua index 3f0efea9..fa015df4 100644 --- a/mods/default/init.lua +++ b/mods/default/init.lua @@ -13,6 +13,10 @@ default.gui_bg = "bgcolor[#080808BB;true]" default.gui_bg_img = "background[5,5;1,1;gui_formbg.png;true]" default.gui_slots = "listcolors[#00000069;#5A5A5A;#141318;#30434C;#FFF]" +-- connect_to_raillike group values +default.connect_to_raillike = {} +default.connect_to_raillike.rails = 2 + function default.get_hotbar_bg(x,y) local out = "" for i=0,7,1 do diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index ac7414b1..ed237c10 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1541,7 +1541,7 @@ minetest.register_node("default:rail", { -- but how to specify the dimensions for curved and sideways rails? fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, - groups = {bendy=2,dig_immediate=2,attached_node=1}, + groups = {bendy=2,dig_immediate=2,attached_node=1,connect_to_raillike=default.connect_to_raillike.rails}, })