From 7daf0478ff12a28a870fdb94e7ea62eb442d8437 Mon Sep 17 00:00:00 2001 From: unknown <24964441+wsor4035@users.noreply.github.com> Date: Sat, 23 Apr 2022 21:12:02 -0400 Subject: [PATCH] add fake fire --- fake_fire/.luacheckrc | 19 ---------- fake_fire/init.lua | 86 ++++++++++++++++++++++++++++--------------- fake_fire/mod.conf | 2 +- 3 files changed, 57 insertions(+), 50 deletions(-) delete mode 100644 fake_fire/.luacheckrc diff --git a/fake_fire/.luacheckrc b/fake_fire/.luacheckrc deleted file mode 100644 index bc95a84a..00000000 --- a/fake_fire/.luacheckrc +++ /dev/null @@ -1,19 +0,0 @@ -unused_args = false -allow_defined_top = true -max_comment_line_length = 999 - -read_globals = { - "DIR_DELIM", - "minetest", "core", - "unpack", - "dump", - table = { fields = { "copy", "getn" } }, - "vector", "nodeupdate", - "VoxelManip", "VoxelArea", - "PseudoRandom", "ItemStack", - "default", -} - -globals = { -} - diff --git a/fake_fire/init.lua b/fake_fire/init.lua index 660bd0e3..d4f516b6 100644 --- a/fake_fire/init.lua +++ b/fake_fire/init.lua @@ -172,6 +172,11 @@ local sbox = { fixed = { -8/16, -8/16, -8/16, 8/16, -6/16, 8/16}, } +local wtex = "default_junglewood.png" +if not minetest.get_modpath("default") then + wtex = "[combine:16x16^[noalpha^[colorize:#563d2d" +end + minetest.register_node("fake_fire:fancy_fire", { inventory_image = "fancy_fire_inv.png", description = S("Fancy Fire"), @@ -189,7 +194,7 @@ minetest.register_node("fake_fire:fancy_fire", { selection_box = sbox, tiles = { "basic_materials_concrete_block.png", - "default_junglewood.png", + wtex, "fake_fire_empty_tile.png" }, on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) @@ -226,23 +231,39 @@ minetest.register_node("fake_fire:embers", { light_source = 9, groups = {crumbly=3}, paramtype = "light", - sounds = default.node_sound_dirt_defaults(), + _sound_def = { + key = "node_sound_dirt_defaults", + }, }) +local sandstone_tex = "default_sandstone.png" +if not minetest.get_modpath("default") then + local sname = minetest.registered_nodes["mapgen_stone"].name + local names = sname:split(":") + local nitem = string.gsub(names[2], "stone", "sandstone") + if minetest.registered_nodes[names[1]..":"..nitem] then + sandstone_tex = minetest.registered_nodes[names[1]..":"..nitem].tiles[1] + else + sandstone_tex = "[combine:16x16^[noalpha^[colorize:#fefebe" + end +end + -- CHIMNEYS local materials = { - { "stone", S("Stone chimney top") }, - { "sandstone", S("Sandstone chimney top") }, + { "stone", S("Stone chimney top"), minetest.registered_nodes["mapgen_stone"].tiles[1] }, + { "sandstone", S("Sandstone chimney top"), sandstone_tex }, } for _, mat in ipairs(materials) do - local name, desc = unpack(mat) + local name, desc, tex = unpack(mat) minetest.register_node("fake_fire:chimney_top_"..name, { description = desc, - tiles = {"default_"..name..".png^chimney_top.png", "default_"..name..".png"}, + tiles = {tex.."^chimney_top.png", tex}, groups = {snappy=3}, paramtype = "light", - sounds = default.node_sound_stone_defaults(), + _sound_def = { + key = "node_sound_stone_defaults", + }, drawtype = "nodebox", node_box = { type = "fixed", @@ -258,37 +279,42 @@ for _, mat in ipairs(materials) do end }) - minetest.register_craft({ - type = "shapeless", - output = 'fake_fire:chimney_top_'..name, - recipe = {"default:torch", "stairs:slab_"..name} - }) + if minetest.get_modpath("default") then + minetest.register_craft({ + type = "shapeless", + output = 'fake_fire:chimney_top_'..name, + recipe = {"default:torch", "stairs:slab_"..name} + }) + end end minetest.register_alias("fake_fire:flint_and_steel", "fire:flint_and_steel") -minetest.override_item("default:ice", { - on_ignite = function(pos, igniter) - local flame_pos = {x = pos.x, y = pos.y + 1, z = pos.z} - if minetest.get_node(flame_pos).name == "air" then - minetest.set_node(flame_pos, {name = "fake_fire:ice_fire"}) +if minetest.get_modpath("default") then + minetest.override_item("default:ice", { + on_ignite = function(pos, igniter) + local flame_pos = {x = pos.x, y = pos.y + 1, z = pos.z} + if minetest.get_node(flame_pos).name == "air" then + minetest.set_node(flame_pos, {name = "fake_fire:ice_fire"}) + end end - end -}) + }) +end -- CRAFTS +if minetest.get_modpath("default") then + minetest.register_craft({ + type = "shapeless", + output = 'fake_fire:embers', + recipe = {"default:torch", "group:wood", "default:torch"} + }) -minetest.register_craft({ - type = "shapeless", - output = 'fake_fire:embers', - recipe = {"default:torch", "group:wood", "default:torch"} -}) - -minetest.register_craft({ - type = "shapeless", - output = 'fake_fire:fancy_fire', - recipe = {"default:torch", "building_blocks:sticks", "default:torch" } -}) + minetest.register_craft({ + type = "shapeless", + output = 'fake_fire:fancy_fire', + recipe = {"default:torch", "building_blocks:sticks", "default:torch" } + }) +end -- ALIASES diff --git a/fake_fire/mod.conf b/fake_fire/mod.conf index 39f9dd45..7db49176 100644 --- a/fake_fire/mod.conf +++ b/fake_fire/mod.conf @@ -1,2 +1,2 @@ name = fake_fire -depends = default, basic_materials +depends = homedecor_common