From 3bc33616a2926e165a4e5ed02019ae82e962156a Mon Sep 17 00:00:00 2001 From: Gergely POLONKAI Date: Sun, 23 Nov 2025 16:52:10 +0100 Subject: [PATCH] Create the basics of the node Signed-off-by: Gergely POLONKAI --- init.lua | 60 +++++++++++++++++++++++++++++++++++++++++++++ locale/template.txt | 2 ++ mod.conf | 6 +++++ 3 files changed, 68 insertions(+) create mode 100644 init.lua create mode 100644 locale/template.txt create mode 100644 mod.conf diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..5351853 --- /dev/null +++ b/init.lua @@ -0,0 +1,60 @@ +local S = minetest.get_translator(minetest.get_current_modname()) + +local node_defaults = { + description = S("Mesecons Clock"), + drawtype = "nodebox", + use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "opaque" or nil, + walkable = true, + selection_box = { + type = "fixed", + fixed = { -8/16, -8/16, -8/16, 8/16, -7/16, 8/16 }, + }, + node_box = { + type = "fixed", + fixed = { + { -8/16, -8/16, -8/16, 8/16, -7/16, 8/16 }, + { -6/16, -7/16, -6/16, 6/16, -6/16, 6/16 }, + }, + }, + paramtype = "light", + paramtype2 = "facedir", + sunlight_propagates = true, + is_ground_content = false, + sounds = mesecon.node_sound.stone, + on_blast = mesecon.on_blastnode, + drop = "mesecons_clock:clock_off", +} +local off_state = { + inventory_image = "jeija_gate_off.png^meseclock.png", + wield_image = "jeija_gate_off.png^meseclock.png", + tiles = { + "jeija_microcontroller_bottom.png^meseclock_output_off.png^jeija_gate_off.png^meseclock.png", + "jeija_microcontroller_bottom.png^meseclock_output_off.png", + "jeija_gate_side.png^jeija_gate_side_output_off.png", + "jeija_gate_side.png^jeija_gate_side_output_off.png", + "jeija_gate_side.png^jeija_gate_side_output_off.png", + "jeija_gate_side.png^jeija_gate_side_output_off.png", + }, + groups = { bendy = 2, snappy = 1, dig_immediate = 2 }, + mesecons = { + receptor = { state = mesecon.state.off }, + }, +} +local on_state = { + inventory_image = "jeija_gate_on.png^meseclock.png", + wield_image = "jeija_gate_on.png^meseclock.png", + tiles = { + "jeija_microcontroller_bottom.png^meseclock_output_on.png^jeija_gate_on.png^meseclock.png", + "jeija_microcontroller_bottom.png^meseclock_output_on.png", + "jeija_gate_side.png^jeija_gate_side_output_on.png", + "jeija_gate_side.png^jeija_gate_side_output_on.png", + "jeija_gate_side.png^jeija_gate_side_output_on.png", + "jeija_gate_side.png^jeija_gate_side_output_on.png", + }, + groups = { bendy = 2, snappy = 1, dig_immediate = 2, not_in_creative_inventory = 1 }, + mesecons = { + receptor = { state = mesecon.state.on }, + }, +} + +mesecon.register_node("mesecons_clock:clock", node_defaults, off_state, on_state) diff --git a/locale/template.txt b/locale/template.txt new file mode 100644 index 0000000..f064a8c --- /dev/null +++ b/locale/template.txt @@ -0,0 +1,2 @@ +# textdomain: mesecons_clock +Mesecons Clock= diff --git a/mod.conf b/mod.conf new file mode 100644 index 0000000..fec193e --- /dev/null +++ b/mod.conf @@ -0,0 +1,6 @@ +name = mesecons_clock +title = Mesecons Clock +description = Adds a configurable mesecons clock +depends = mesecons, mesecons_delayer +optional_depends = mesecons_blinkyplant +author = Gergely Polonkai \ No newline at end of file