diff --git a/technic/machines/register/cables.lua b/technic/machines/register/cables.lua index 95dcaea..70da6d6 100644 --- a/technic/machines/register/cables.lua +++ b/technic/machines/register/cables.lua @@ -67,7 +67,7 @@ local function clear_networks(pos) local tier = network.tier -- Actually add it to the (cached) network - -- This is similar to check_node_subp + -- !! IMPORTANT: ../switching_station.lua -> check_node_subp() must be kept in sync technic.cables[minetest.hash_node_position(pos)] = network_id pos.visited = 1 if technic.is_tier_cable(node.name, tier) then @@ -76,7 +76,7 @@ local function clear_networks(pos) elseif technic.machines[tier][node.name] then -- Found a machine local eu_type = technic.machines[tier][node.name] - meta:set_string(tier.."_network", string.format("%X", network_id)) + meta:set_string(tier.."_network", string.format("%.20g", network_id)) if eu_type == technic.producer then table.insert(network.PR_nodes, pos) elseif eu_type == technic.receiver then diff --git a/technic/machines/switching_station.lua b/technic/machines/switching_station.lua index e97e761..521e2f8 100644 --- a/technic/machines/switching_station.lua +++ b/technic/machines/switching_station.lua @@ -117,6 +117,7 @@ local function add_cable_node(nodes, pos, network_id, queue) end -- Generic function to add found connected nodes to the right classification array +-- !! IMPORTANT: register/cables.lua -> clear_networks() must be kept in sync local check_node_subp = function(network, pos, machines, sw_pos, from_below, network_id, queue) technic.get_or_load_node(pos) local name = minetest.get_node(pos).name @@ -134,7 +135,7 @@ local check_node_subp = function(network, pos, machines, sw_pos, from_below, net --dprint(name.." is a "..machines[name]) local meta = minetest.get_meta(pos) -- Normal tostring() does not have enough precision, neither does meta:set_int() - -- Bug: Cannot use hexadecimal notation for compression (LuaJIT Windows bug, #911) + -- Lua 5.1 bug: Cannot use hexadecimal notation for compression (see LuaJIT #911) meta:set_string(network.tier.."_network", string.format("%.20g", network_id)) if eu_type == technic.producer then