From c3bed5d5c2a60036377d4922a17742f3f0f9bd5e Mon Sep 17 00:00:00 2001 From: SX Date: Mon, 27 Apr 2020 07:49:16 +0300 Subject: [PATCH] #14 HV digicables --- technic/machines/HV/cables.lua | 24 ++++++++++ technic/machines/register/cables.lua | 45 +++++++++++------- technic/textures/technic_hv_digi_cable.png | Bin 0 -> 5604 bytes .../textures/technic_hv_digi_cable_wield.png | Bin 0 -> 2262 bytes 4 files changed, 52 insertions(+), 17 deletions(-) create mode 100644 technic/textures/technic_hv_digi_cable.png create mode 100644 technic/textures/technic_hv_digi_cable_wield.png diff --git a/technic/machines/HV/cables.lua b/technic/machines/HV/cables.lua index e084cf0..00397e5 100644 --- a/technic/machines/HV/cables.lua +++ b/technic/machines/HV/cables.lua @@ -1,3 +1,4 @@ +local S = technic.getter minetest.register_craft({ output = 'technic:hv_cable 3', @@ -10,3 +11,26 @@ minetest.register_craft({ technic.register_cable("HV", 3/16) +minetest.register_craft({ + output = 'technic:hv_digi_cable 1', + recipe = { + {'digilines:wire_std_00000000', 'digilines:wire_std_00000000', 'digilines:wire_std_00000000'}, + {'digilines:wire_std_00000000', 'technic:hv_cable', 'digilines:wire_std_00000000'}, + {'digilines:wire_std_00000000', 'digilines:wire_std_00000000', 'digilines:wire_std_00000000'}, + } +}) + +technic.register_cable("HV", 3/16, S("HV Cable (digiline)"), "_digi", { + digiline = { + wire = { + rules = { + {x = 1, y = 0, z = 0}, + {x =-1, y = 0, z = 0}, + {x = 0, y = 1, z = 0}, + {x = 0, y =-1, z = 0}, + {x = 0, y = 0, z = 1}, + {x = 0, y = 0, z =-1} + } + } + } +}) diff --git a/technic/machines/register/cables.lua b/technic/machines/register/cables.lua index 542a275..a8a746e 100644 --- a/technic/machines/register/cables.lua +++ b/technic/machines/register/cables.lua @@ -130,9 +130,20 @@ local function item_place_override_node(itemstack, placer, pointed, node) return itemstack end -function technic.register_cable(tier, size) +local function override_table(target, source) + if target and source then + for k,v in pairs(source) do + target[k] = v + end + end + return target +end + +function technic.register_cable(tier, size, description, prefix, override_cable, override_cable_plate) + prefix = prefix or "" + override_cable_plate = override_cable_plate or override_cable local ltier = string.lower(tier) - cable_tier["technic:"..ltier.."_cable"] = tier + cable_tier["technic:"..ltier..prefix.."_cable"] = tier local groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, ["technic_"..ltier.."_cable"] = 1} @@ -148,14 +159,14 @@ function technic.register_cable(tier, size) connect_right = {-size, -size, -size, 0.5, size, size}, -- x+ } - minetest.register_node("technic:"..ltier.."_cable", { + minetest.register_node("technic:"..ltier..prefix.."_cable", override_table({ 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", + tiles = {"technic_"..ltier..prefix.."_cable.png"}, + inventory_image = "technic_"..ltier..prefix.."_cable_wield.png", + wield_image = "technic_"..ltier..prefix.."_cable_wield.png", groups = groups, sounds = default.node_sound_wood_defaults(), - drop = "technic:"..ltier.."_cable", + drop = "technic:"..ltier..prefix.."_cable", paramtype = "light", sunlight_propagates = true, drawtype = "nodebox", @@ -164,7 +175,7 @@ function technic.register_cable(tier, size) "group:technic_"..ltier, "group:technic_all_tiers"}, on_construct = clear_networks, on_destruct = clear_networks, - }) + }, override_cable)) local xyz = { ["-x"] = 1, @@ -192,10 +203,10 @@ function technic.register_cable(tier, size) for p, i in pairs(xyz) do local def = { description = S("%s Cable Plate"):format(tier), - tiles = {"technic_"..ltier.."_cable.png"}, + tiles = {"technic_"..ltier..prefix.."_cable.png"}, groups = table.copy(groups), sounds = default.node_sound_wood_defaults(), - drop = "technic:"..ltier.."_cable_plate_1", + drop = "technic:"..ltier..prefix.."_cable_plate_1", paramtype = "light", sunlight_propagates = true, drawtype = "nodebox", @@ -244,7 +255,7 @@ function technic.register_cable(tier, size) if num == nil then num = 1 end return item_place_override_node( itemstack, placer, pointed_thing, - {name = "technic:"..ltier.."_cable_plate_"..num} + {name = "technic:"..ltier..prefix.."_cable_plate_"..num} ) end else @@ -261,15 +272,15 @@ function technic.register_cable(tier, size) num = num + dir num = (num >= 1 and num) or num + 6 num = (num <= 6 and num) or num - 6 - minetest.swap_node(pos, {name = "technic:"..ltier.."_cable_plate_"..num}) + minetest.swap_node(pos, {name = "technic:"..ltier..prefix.."_cable_plate_"..num}) end - minetest.register_node("technic:"..ltier.."_cable_plate_"..i, def) - cable_tier["technic:"..ltier.."_cable_plate_"..i] = tier + minetest.register_node("technic:"..ltier..prefix.."_cable_plate_"..i, override_table(def, override_cable_plate)) + cable_tier["technic:"..ltier..prefix.."_cable_plate_"..i] = tier end - local c = "technic:"..ltier.."_cable" + local c = "technic:"..ltier..prefix.."_cable" minetest.register_craft({ - output = "technic:"..ltier.."_cable_plate_1 5", + output = "technic:"..ltier..prefix.."_cable_plate_1 5", recipe = { {"", "", c}, {c , c , c}, @@ -280,7 +291,7 @@ function technic.register_cable(tier, size) minetest.register_craft({ output = c, recipe = { - {"technic:"..ltier.."_cable_plate_1"}, + {"technic:"..ltier..prefix.."_cable_plate_1"}, } }) end diff --git a/technic/textures/technic_hv_digi_cable.png b/technic/textures/technic_hv_digi_cable.png new file mode 100644 index 0000000000000000000000000000000000000000..f1c1e30efb3da8912af2aecf3a193b31093fc613 GIT binary patch literal 5604 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 literal 0 HcmV?d00001