From 12d0c6522bbca906910aae0321cbaa7eb48db8c2 Mon Sep 17 00:00:00 2001 From: Zefram <zefram@fysh.org> Date: Wed, 30 Jul 2014 21:28:30 +0200 Subject: [PATCH] Correct breakability of sandstone CNC nodes --- technic/machines/register/cables.lua | 29 ++++++++++++++++------------- 1 files changed, 16 insertions(+), 13 deletions(-) diff --git a/technic/machines/register/cables.lua b/technic/machines/register/cables.lua index 9fbd0fd..9ec1cfa 100644 --- a/technic/machines/register/cables.lua +++ b/technic/machines/register/cables.lua @@ -1,6 +1,7 @@ -technic.cables = {} +local S = technic.getter +technic.cables = {} function technic.register_cable(tier, size) local ltier = string.lower(tier) @@ -21,7 +22,7 @@ end minetest.register_node("technic:"..ltier.."_cable"..id, { - description = tier.." Cable", + description = S("%s Cable"):format(tier), tiles = {"technic_"..ltier.."_cable.png"}, inventory_image = "technic_"..ltier.."_cable_wield.png", wield_image = "technic_"..ltier.."_cable_wield.png", @@ -35,6 +36,12 @@ 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)) @@ -52,13 +59,11 @@ end end - minetest.register_on_placenode(function(pos, node) for tier, machine_list in pairs(technic.machines) do - for machine_name, _ in pairs(machine_list) do - if node.name == machine_name then - technic.update_cables(pos, tier, true) - end + if machine_list[node.name] ~= nil then + technic.update_cables(pos, tier, true) + technic.networks = {} end end end) @@ -66,14 +71,12 @@ minetest.register_on_dignode(function(pos, node) for tier, machine_list in pairs(technic.machines) do - for machine_name, _ in pairs(machine_list) do - if node.name == machine_name then - technic.update_cables(pos, tier, true) - end + if machine_list[node.name] ~= nil then + technic.update_cables(pos, tier, true) + technic.networks = {} end end end) - function technic.get_cable_id(links) return (links[6] * 1) + (links[5] * 2) @@ -141,7 +144,7 @@ local box_center = {-size, -size, -size, size, size, size} local box_y1 = {-size, -size, -size, size, 0.5, size} -- y+ local box_x1 = {-size, -size, -size, 0.5, size, size} -- x+ - local box_z1 = {-size, -size, size, size, size, 0.5} -- z+ + local box_z1 = {-size, -size, size, size, size, 0.5} -- z+ local box_z2 = {-size, -size, -0.5, size, size, size} -- z- local box_y2 = {-size, -0.5, -size, size, size, size} -- y- local box_x2 = {-0.5, -size, -size, size, size, size} -- x- -- Gitblit v1.8.0