diff --git a/mods/lzr_laser/blocks.lua b/mods/lzr_laser/blocks.lua index a76ddb0..ec7e995 100644 --- a/mods/lzr_laser/blocks.lua +++ b/mods/lzr_laser/blocks.lua @@ -129,10 +129,12 @@ local register_element = function(subname, def, options) if options.allow_take then local def_takable = table.copy(def_core) + def_takable.tiles = def.tiles_takable_off def_takable.groups.takable = 1 def_takable.groups.dig_immediate = 3 def_takable.description = S("@1 (takable)", def.description) local def_takable_on = table.copy(def_core_on) + def_takable_on.tiles = def.tiles_takable_on def_takable_on.groups.takable = 1 def_takable_on.groups.dig_immediate = 3 def_takable_on.description = S("@1 (takable, active)", def.description) @@ -146,6 +148,22 @@ register_element("mirror", { description = S("Mirror"), paramtype2 = "facedir", tiles_off = { + "lzr_laser_mirror_top.png^lzr_laser_fixed.png", + "lzr_laser_mirror_top.png^[transformFY^lzr_laser_fixed.png", + "lzr_laser_mirror_hole.png^lzr_laser_fixed.png", + "lzr_laser_mirror_block.png^lzr_laser_fixed.png", + "lzr_laser_mirror_block.png^lzr_laser_fixed.png", + "lzr_laser_mirror_hole.png^lzr_laser_fixed.png", + }, + tiles_on = { + "lzr_laser_mirror_on_top.png^lzr_laser_fixed.png", + "lzr_laser_mirror_on_top.png^[transformFY^lzr_laser_fixed.png", + "lzr_laser_mirror_on_hole.png^lzr_laser_fixed.png", + "lzr_laser_mirror_on_block.png^lzr_laser_fixed.png", + "lzr_laser_mirror_on_block.png^lzr_laser_fixed.png", + "lzr_laser_mirror_on_hole.png^lzr_laser_fixed.png", + }, + tiles_takable_off = { "lzr_laser_mirror_top.png", "lzr_laser_mirror_top.png^[transformFY", "lzr_laser_mirror_hole.png", @@ -153,7 +171,7 @@ register_element("mirror", { "lzr_laser_mirror_block.png", "lzr_laser_mirror_hole.png", }, - tiles_on = { + tiles_takable_on = { "lzr_laser_mirror_on_top.png", "lzr_laser_mirror_on_top.png^[transformFY", "lzr_laser_mirror_on_hole.png", @@ -161,6 +179,7 @@ register_element("mirror", { "lzr_laser_mirror_on_block.png", "lzr_laser_mirror_on_hole.png", }, + groups = { rotatable = 1, laser_block = 1 }, sounds = lzr_sounds.node_sound_glass_defaults({ _rotate = {name = "lzr_laser_mirror_rotate", gain = 1.0}, @@ -170,7 +189,7 @@ register_element("mirror", { register_element("transmissive_mirror", { description = S("Transissive Mirror"), paramtype2 = "facedir", - tiles_off = { + tiles_takable_off = { "lzr_laser_transmissive_mirror_top.png", "lzr_laser_transmissive_mirror_top.png^[transformFY", "lzr_laser_transmissive_mirror_hole.png", @@ -178,7 +197,7 @@ register_element("transmissive_mirror", { "lzr_laser_transmissive_mirror_block.png", "lzr_laser_transmissive_mirror_hole.png", }, - tiles_on = { + tiles_takable_on = { "lzr_laser_transmissive_mirror_on_top.png", "lzr_laser_transmissive_mirror_on_top.png^[transformFY", "lzr_laser_transmissive_mirror_on_hole.png", @@ -186,6 +205,22 @@ register_element("transmissive_mirror", { "lzr_laser_transmissive_mirror_on_block.png", "lzr_laser_transmissive_mirror_on_hole.png", }, + tiles_off = { + "lzr_laser_transmissive_mirror_top.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_top.png^[transformFY^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_hole.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_block.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_block.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_hole.png^lzr_laser_fixed.png", + }, + tiles_on = { + "lzr_laser_transmissive_mirror_on_top.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_on_top.png^[transformFY^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_on_hole.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_on_block.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_on_block.png^lzr_laser_fixed.png", + "lzr_laser_transmissive_mirror_on_hole.png^lzr_laser_fixed.png", + }, groups = { rotatable = 1, laser_block = 1 }, sounds = lzr_sounds.node_sound_glass_defaults({ _rotate = {name = "lzr_laser_mirror_rotate", gain = 1.0}, @@ -197,21 +232,38 @@ register_element("transmissive_mirror", { register_element("emitter", { description = S("Emitter"), paramtype2 = "facedir", + tiles_takable_off = { + "lzr_laser_emitter.png", + "lzr_laser_emitter.png", + "lzr_laser_emitter.png", + "lzr_laser_emitter.png", + "lzr_laser_emitter.png", + "lzr_laser_emitter_front.png", + }, + tiles_takable_on = { + "lzr_laser_emitter_on.png", + "lzr_laser_emitter_on.png", + "lzr_laser_emitter_on.png", + "lzr_laser_emitter_on.png", + "lzr_laser_emitter_on.png", + "lzr_laser_emitter_on_front.png", + + }, tiles_off = { - "lzr_laser_emitter.png", - "lzr_laser_emitter.png", - "lzr_laser_emitter.png", - "lzr_laser_emitter.png", - "lzr_laser_emitter.png", - "lzr_laser_emitter_front.png", + "lzr_laser_emitter.png^lzr_laser_fixed.png", + "lzr_laser_emitter.png^lzr_laser_fixed.png", + "lzr_laser_emitter.png^lzr_laser_fixed.png", + "lzr_laser_emitter.png^lzr_laser_fixed.png", + "lzr_laser_emitter.png^lzr_laser_fixed.png", + "lzr_laser_emitter_front.png^lzr_laser_fixed.png", }, tiles_on = { - "lzr_laser_emitter_on.png", - "lzr_laser_emitter_on.png", - "lzr_laser_emitter_on.png", - "lzr_laser_emitter_on.png", - "lzr_laser_emitter_on.png", - "lzr_laser_emitter_on_front.png", + "lzr_laser_emitter_on.png^lzr_laser_fixed.png", + "lzr_laser_emitter_on.png^lzr_laser_fixed.png", + "lzr_laser_emitter_on.png^lzr_laser_fixed.png", + "lzr_laser_emitter_on.png^lzr_laser_fixed.png", + "lzr_laser_emitter_on.png^lzr_laser_fixed.png", + "lzr_laser_emitter_on_front.png^lzr_laser_fixed.png", }, on_rightclick = function(pos, node) @@ -236,20 +288,20 @@ register_element("detector", { description = S("Detector"), paramtype2 = "facedir", tiles_off = { - "lzr_laser_detector.png", - "lzr_laser_detector.png", - "lzr_laser_detector.png", - "lzr_laser_detector.png", - "lzr_laser_detector.png", - "lzr_laser_detector_front.png", + "lzr_laser_detector.png", + "lzr_laser_detector.png", + "lzr_laser_detector.png", + "lzr_laser_detector.png", + "lzr_laser_detector.png", + "lzr_laser_detector_front.png", }, tiles_on = { - "lzr_laser_detector_on.png", - "lzr_laser_detector_on.png", - "lzr_laser_detector_on.png", - "lzr_laser_detector_on.png", - "lzr_laser_detector_on.png", - "lzr_laser_detector_on_front.png", + "lzr_laser_detector_on.png", + "lzr_laser_detector_on.png", + "lzr_laser_detector_on.png", + "lzr_laser_detector_on.png", + "lzr_laser_detector_on.png", + "lzr_laser_detector_on_front.png", }, groups = { laser_block = 1 }, sounds = lzr_sounds.node_sound_wood_defaults(), diff --git a/mods/lzr_laser/textures/lzr_laser_fixed.png b/mods/lzr_laser/textures/lzr_laser_fixed.png new file mode 100644 index 0000000..d071eed Binary files /dev/null and b/mods/lzr_laser/textures/lzr_laser_fixed.png differ