This commit is contained in:
A.C.M 2023-06-07 21:47:38 +02:00
parent 5ffbad8afb
commit f145e30bb2
3 changed files with 37 additions and 7 deletions

@ -16,6 +16,9 @@ The function to register your own ghoststones are integrated.<br>
Move your Download to the Mods-Folder.<br>
## Version
V 1.6
## Depends
default<br>

@ -14,7 +14,7 @@ stealthnode.revision = "6"
local modpath = minetest.get_modpath("mesecons_stealthnodes")
local S = minetest.get_translator(minetest.get_current_modname())
stealhnode.S = S
stealthnode.S = S
dofile(modpath .. "/register.lua")
dofile(modpath .. "/nodes.lua")

@ -119,19 +119,45 @@ function stealthnode.register_conductnode(modname, node)
if not nodedef then
local message = "[MOD] " .. minetest.get_current_modname() .. ": "
.. node_name .. " not found to register a conductnode."
.. node_name .. " not found to register a stealthnode."
print(message)
minetest.log("warning", message)
return
end
local conductnode_name = "mesecons_stealthnode:" .. modname .. "_" .. node
local stealthnode_name = "mesecons_stealthnode:" .. modname .. "_" .. node .. "_conducting"
local node_groups = copy_table(nodedef.groups) or {}
node_groups.mesecons_stealthnode = 1
minetest.register_node(":" .. conductnode_name, {
minetest.register_node(":" .. stealthnode_name, {
description = S("Conducting") .. " " .. nodedef.description,
drawtype = nodedef.drawtype,
tiles = nodedef.tiles,
use_texture_alpha = nodedef.use_texture_alpha,
paramtype = nodedef.paramtype,
paramtype2 = nodedef.paramtype2,
is_ground_content = false,
sunlight_propagates = nodedef.sunlight_propagates,
node_box = nodedef.node_box,
mesh = nodedef.mesh,
selection_box = nodedef.selection_box,
collision_box = nodedef.collision_box,
sounds = nodedef.sounds,
groups = node_groups,
inventory_image = nodedef.inventory_image,
drop = stealthnode_name,
mesecons = {
conductor = {
state = mesecon.state.off,
rules = mesecon.rules.alldirs,
onstate = stealthnode_name .. "_on",
}
},
on_blast = mesecon.on_blastnode,
})
minetest.register_node(":" .. stealthnode_name .. "_on", {
drawtype = nodedef.drawtype,
tiles = nodedef.tiles,
use_texture_alpha = nodedef.use_texture_alpha,
@ -148,18 +174,19 @@ function stealthnode.register_conductnode(modname, node)
inventory_image = nodedef.inventory_image,
mesecons = {
conductor = {
state = mesecon.state.off,
state = mesecon.state.on,
rules = mesecon.rules.alldirs,
offstate = stealthnode_name,
}
},
on_blast = mesecon.on_blastnode,
})
minetest.register_craft({
output = conductnode_name .. " 4",
output = stealthnode_name .. "_off" .. " 4",
recipe = {
{"default:tin_ingot", node_name, "default:tin_ingot"},
{node_name, "mesecons:wire_00000000_off", node_name},
{node_name, "group:mesecon_conductor_craftable", node_name},
{"default:tin_ingot", node_name, "default:tin_ingot"},
}
})