From 77af2295ae217ccf0ae35ea8b9ab80661e323676 Mon Sep 17 00:00:00 2001 From: SwissalpS Date: Wed, 14 Oct 2020 10:22:12 +0000 Subject: [PATCH] add description of item in frame / on pedestal lets players brag about their tools and is useful for better overview. --- itemframes/init.lua | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/itemframes/init.lua b/itemframes/init.lua index 6fcc60df..78c1d0cd 100644 --- a/itemframes/init.lua +++ b/itemframes/init.lua @@ -153,12 +153,19 @@ minetest.register_node("itemframes:frame",{ drop_item(pos,node) local s = itemstack:take_item() meta:set_string("item",s:to_string()) - local description = "" local item_meta = s:get_meta() - if item_meta then - description = item_meta:get_string("description") or "" + local description = item_meta:get_string("description") + if description == "" then + local item_name = s:get_name() + if minetest.registered_items[item_name] + and minetest.registered_items[item_name].description + then + description = minetest.registered_items[item_name].description + else + description = item_name + end end - meta:set_string("infotext", S("Item frame (owned by @1)\n@2", name, description)) + meta:set_string("infotext", S("Item frame (owned by @1)", name) .. "\n" .. description) update_item(pos,node) end return itemstack @@ -223,12 +230,19 @@ minetest.register_node("itemframes:pedestal",{ drop_item(pos,node) local s = itemstack:take_item() meta:set_string("item",s:to_string()) - local description = "" local item_meta = s:get_meta() - if item_meta then - description = item_meta:get_string("description") or "" + local description = item_meta:get_string("description") + if description == "" then + local item_name = s:get_name() + if minetest.registered_items[item_name] + and minetest.registered_items[item_name].description + then + description = minetest.registered_items[item_name].description + else + description = item_name + end end - meta:set_string("infotext", S("Pedestal (owned by @1)\n@2", name, description)) + meta:set_string("infotext", S("Pedestal (owned by @1)", name) .. "\n" .. description) update_item(pos,node) end return itemstack @@ -313,3 +327,4 @@ if minetest.get_modpath("mesecons_mvps") then mesecon.register_mvps_stopper("itemframes:frame") mesecon.register_mvps_stopper("itemframes:pedestal") end +