diff --git a/.luacheckrc b/.luacheckrc index e30dca6..38c2559 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -9,8 +9,8 @@ globals = { read_globals = { -- Builtin table = {fields = {"copy"}}, - "ItemStack", "vector", - + "ItemStack", "vector", "default", + -- Mod deps "intllib", "screwdriver", diff --git a/api.lua b/api.lua index ee0e976..9c710b2 100644 --- a/api.lua +++ b/api.lua @@ -21,16 +21,16 @@ signs_lib.standard_xoffs = 4 signs_lib.standard_yoffs = 0 signs_lib.standard_cpl = 35 -signs_lib.standard_wood_groups = table.copy(minetest.registered_items["default:sign_wall_wood"].groups) +signs_lib.standard_wood_groups = table.copy(default and minetest.registered_items["default:sign_wall_wood"].groups or {}) signs_lib.standard_wood_groups.sign = 1 signs_lib.standard_wood_groups.attached_node = nil -signs_lib.standard_steel_groups = table.copy(minetest.registered_items["default:sign_wall_steel"].groups) +signs_lib.standard_steel_groups = table.copy(default and minetest.registered_items["default:sign_wall_steel"].groups or {}) signs_lib.standard_steel_groups.sign = 1 signs_lib.standard_steel_groups.attached_node = nil -signs_lib.standard_wood_sign_sounds = table.copy(minetest.registered_items["default:sign_wall_wood"].sounds) -signs_lib.standard_steel_sign_sounds = table.copy(minetest.registered_items["default:sign_wall_steel"].sounds) +signs_lib.standard_wood_sign_sounds = table.copy(default and minetest.registered_items["default:sign_wall_wood"].sounds or {}) +signs_lib.standard_steel_sign_sounds = table.copy(default and minetest.registered_items["default:sign_wall_steel"].sounds or {}) signs_lib.default_text_scale = {x=10, y=10} diff --git a/compat.lua b/compat.lua index b9a04a7..137d77e 100644 --- a/compat.lua +++ b/compat.lua @@ -1,16 +1,17 @@ +if minetest.get_modpath("default") then + local default_fences = { + "default:fence_wood", + "default:fence_acacia_wood", + "default:fence_aspen_wood", + "default:fence_junglewood", + "default:fence_pine_wood" + } -local default_fences = { - "default:fence_wood", - "default:fence_acacia_wood", - "default:fence_aspen_wood", - "default:fence_junglewood", - "default:fence_pine_wood" -} - -for _, n in ipairs(default_fences) do - minetest.override_item(n, { - check_for_pole = true - }) + for _, n in ipairs(default_fences) do + minetest.override_item(n, { + check_for_pole = true + }) + end end if minetest.get_modpath("cottages") then diff --git a/mod.conf b/mod.conf index 82af361..cdc185b 100644 --- a/mod.conf +++ b/mod.conf @@ -1,6 +1,5 @@ name = signs_lib author = VanessaE -depends = default -optional_depends = intllib, screwdriver, streetspoles, streetlamps, cottages, prefab_redo +optional_depends = intllib, screwdriver, streetspoles, streetlamps, cottages, prefab_redo, default description = Adds signs with readable text. min_minetest_version = 5.4.0 diff --git a/standard_signs.lua b/standard_signs.lua index 8d7a9e7..91e9be8 100644 --- a/standard_signs.lua +++ b/standard_signs.lua @@ -1,60 +1,61 @@ -- Definitions for standard minetest_game wooden and steel wall signs -signs_lib.register_sign("default:sign_wall_wood", { - description = "Wooden wall sign", - inventory_image = "signs_lib_sign_wall_wooden_inv.png", - tiles = { - "signs_lib_sign_wall_wooden.png", - "signs_lib_sign_wall_wooden_edges.png", - -- items 3 - 5 are not set, so signs_lib will use its standard pole - -- mount, hanging, and yard sign stick textures. - }, - entity_info = "standard", - allow_hanging = true, - allow_widefont = true, - allow_onpole = true, - allow_onpole_horizontal = true, - allow_yard = true, - use_texture_alpha = "clip", -}) +if minetest.get_modpath("default") then + signs_lib.register_sign("default:sign_wall_wood", { + description = "Wooden wall sign", + inventory_image = "signs_lib_sign_wall_wooden_inv.png", + tiles = { + "signs_lib_sign_wall_wooden.png", + "signs_lib_sign_wall_wooden_edges.png", + -- items 3 - 5 are not set, so signs_lib will use its standard pole + -- mount, hanging, and yard sign stick textures. + }, + entity_info = "standard", + allow_hanging = true, + allow_widefont = true, + allow_onpole = true, + allow_onpole_horizontal = true, + allow_yard = true, + use_texture_alpha = "clip", + }) -signs_lib.register_sign("default:sign_wall_steel", { - description = "Steel wall sign", - inventory_image = "signs_lib_sign_wall_steel_inv.png", - tiles = { - "signs_lib_sign_wall_steel.png", - "signs_lib_sign_wall_steel_edges.png", - nil, -- not set, so it'll use the standard pole mount texture - nil, -- not set, so it'll use the standard hanging chains texture - "default_steel_block.png" -- for the yard sign's stick - }, - groups = signs_lib.standard_steel_groups, - sounds = signs_lib.standard_steel_sign_sounds, - locked = true, - entity_info = "standard", - allow_hanging = true, - allow_widefont = true, - allow_onpole = true, - allow_onpole_horizontal = true, - allow_yard = true, - use_texture_alpha = "clip", -}) + signs_lib.register_sign("default:sign_wall_steel", { + description = "Steel wall sign", + inventory_image = "signs_lib_sign_wall_steel_inv.png", + tiles = { + "signs_lib_sign_wall_steel.png", + "signs_lib_sign_wall_steel_edges.png", + nil, -- not set, so it'll use the standard pole mount texture + nil, -- not set, so it'll use the standard hanging chains texture + "default_steel_block.png" -- for the yard sign's stick + }, + groups = signs_lib.standard_steel_groups, + sounds = signs_lib.standard_steel_sign_sounds, + locked = true, + entity_info = "standard", + allow_hanging = true, + allow_widefont = true, + allow_onpole = true, + allow_onpole_horizontal = true, + allow_yard = true, + use_texture_alpha = "clip", + }) -minetest.register_alias("signs:sign_hanging", "default:sign_wood_hanging") -minetest.register_alias("basic_signs:hanging_sign", "default:sign_wood_hanging") -minetest.register_alias("signs:sign_yard", "default:sign_wood_yard") -minetest.register_alias("basic_signs:yard_sign", "default:sign_wood_yard") + minetest.register_alias("signs:sign_hanging", "default:sign_wood_hanging") + minetest.register_alias("basic_signs:hanging_sign", "default:sign_wood_hanging") + minetest.register_alias("signs:sign_yard", "default:sign_wood_yard") + minetest.register_alias("basic_signs:yard_sign", "default:sign_wood_yard") -minetest.register_alias("default:sign_wall_wood_onpole", "default:sign_wood_onpole") -minetest.register_alias("default:sign_wall_wood_onpole_horiz", "default:sign_wood_onpole_horiz") -minetest.register_alias("default:sign_wall_wood_hanging", "default:sign_wood_hanging") -minetest.register_alias("default:sign_wall_wood_yard", "default:sign_wood_yard") - -minetest.register_alias("default:sign_wall_steel_onpole", "default:sign_steel_onpole") -minetest.register_alias("default:sign_wall_steel_onpole_horiz", "default:sign_steel_onpole_horiz") -minetest.register_alias("default:sign_wall_steel_hanging", "default:sign_steel_hanging") -minetest.register_alias("default:sign_wall_steel_yard", "default:sign_steel_yard") + minetest.register_alias("default:sign_wall_wood_onpole", "default:sign_wood_onpole") + minetest.register_alias("default:sign_wall_wood_onpole_horiz", "default:sign_wood_onpole_horiz") + minetest.register_alias("default:sign_wall_wood_hanging", "default:sign_wood_hanging") + minetest.register_alias("default:sign_wall_wood_yard", "default:sign_wood_yard") + minetest.register_alias("default:sign_wall_steel_onpole", "default:sign_steel_onpole") + minetest.register_alias("default:sign_wall_steel_onpole_horiz", "default:sign_steel_onpole_horiz") + minetest.register_alias("default:sign_wall_steel_hanging", "default:sign_steel_hanging") + minetest.register_alias("default:sign_wall_steel_yard", "default:sign_steel_yard") +end table.insert(signs_lib.lbm_restore_nodes, "signs:sign_hanging") table.insert(signs_lib.lbm_restore_nodes, "basic_signs:hanging_sign")