Forgot to update on cable add/destroy+use minetest.hash_node_position because else...
authorNovatux <nathanael.courant@laposte.net>
Thu, 29 Aug 2013 16:51:53 +0000 (18:51 +0200)
committerShadowNinja <noreply@gmail.com>
Fri, 4 Oct 2013 14:49:06 +0000 (10:49 -0400)
technic/machines/register/cables.lua
technic/machines/switching_station.lua

index 39b3f08eec80bbfd9c7918d17cde461c5b8759c6..8da650b08a84d50f2c542952ef7e1726499cb3ab 100644 (file)
@@ -35,6 +35,12 @@ function technic.register_cable(tier, size)
                                type = "fixed",
                                fixed = technic.gen_cable_nodebox(x1, y1, z1, x2, y2, z2, size)
                        },
+                       on_construct = function()
+                               technic.networks = {}
+                       end,
+                       on_destruct = function()
+                               technic.networks = {}
+                       end,
                        after_place_node = function(pos)
                                local node = minetest.get_node(pos)
                                technic.update_cables(pos, technic.get_cable_tier(node.name))
index 25310eb32f814f5371b5a8f757da0966dd7c779d..449b4c9bf77d1ade20489c2c724fe1e8b857902d 100644 (file)
@@ -136,7 +136,7 @@ local touch_nodes = function(list, tier)
 end
 
 local get_network = function(pos1, tier)
-       local cached = technic.networks[pos1]
+       local cached = technic.networks[minetest.hash_node_position(pos1)]
        if cached and cached.tier == tier then
                touch_nodes(cached.PR_nodes, tier)
                touch_nodes(cached.BA_nodes, tier)
@@ -153,7 +153,7 @@ local get_network = function(pos1, tier)
                                i, technic.machines[tier], tier)
                i = i + 1
        until all_nodes[i] == nil
-       technic.networks[pos1] = {tier = tier, PR_nodes = PR_nodes, RE_nodes = RE_nodes, BA_nodes = BA_nodes}
+       technic.networks[minetest.hash_node_position(pos1)] = {tier = tier, PR_nodes = PR_nodes, RE_nodes = RE_nodes, BA_nodes = BA_nodes}
        return PR_nodes, BA_nodes, RE_nodes
 end