From 5e5275821644e5a7b1786d63b0582d658b8d1e1a Mon Sep 17 00:00:00 2001 From: stujones11 Date: Sun, 4 Aug 2013 22:17:08 +0100 Subject: [PATCH] Add texture transform support --- wieldview/README.txt | 2 ++ wieldview/init.lua | 20 +++++++++++++++----- wieldview/transform.lua | 24 ++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 wieldview/transform.lua diff --git a/wieldview/README.txt b/wieldview/README.txt index 3370d48..21f4194 100644 --- a/wieldview/README.txt +++ b/wieldview/README.txt @@ -12,4 +12,6 @@ default settings: [minetest.conf] # Set number of seconds between visible wielded item updates. wieldview_update_time = 2 +# Show nodes as tiles, disabled by default +wieldview_node_tiles = false diff --git a/wieldview/init.lua b/wieldview/init.lua index dcde368..13da170 100644 --- a/wieldview/init.lua +++ b/wieldview/init.lua @@ -4,23 +4,33 @@ if not update_time then update_time = 2 minetest.setting_set("wieldview_update_time", tostring(update_time)) end +local node_tiles = minetest.setting_getbool("wieldview_node_tiles") +if not node_tiles then + node_tiles = false + minetest.setting_set("wieldview_node_tiles", "false") +end + +dofile(minetest.get_modpath(minetest.get_current_modname()).."/transform.lua") wieldview = { wielded_item = {}, } wieldview.get_item_texture = function(self, item) + local texture = uniskins.default_texture if item ~= "" then if minetest.registered_items[item] then if minetest.registered_items[item].inventory_image ~= "" then - return minetest.registered_items[item].inventory_image - end - if minetest.registered_items[item].tiles then - return minetest.registered_items[item].tiles[1] + texture = minetest.registered_items[item].inventory_image + elseif node_tiles == true and minetest.registered_items[item].tiles then + texture = minetest.registered_items[item].tiles[1] end end + if wieldview_transform[item] then + texture = texture.."^[transform"..wieldview_transform[item] + end end - return uniskins.default_texture + return texture end wieldview.update_wielded_item = function(self, player) diff --git a/wieldview/transform.lua b/wieldview/transform.lua new file mode 100644 index 0000000..cdf8a05 --- /dev/null +++ b/wieldview/transform.lua @@ -0,0 +1,24 @@ +-- Wielded Item Transformations - http://dev.minetest.net/texture + +wieldview_transform = { + ["default:torch"]="R270", + ["default:sapling"]="R270", + ["flowers:dandelion_white"]="R270", + ["flowers:dandelion_yellow"]="R270", + ["flowers:geranium"]="R270", + ["flowers:rose"]="R270", + ["flowers:tulip"]="R270", + ["flowers:viola"]="R270", + ["bucket:bucket_empty"]="R270", + ["bucket:bucket_water"]="R270", + ["bucket:bucket_lava"]="R270", + ["screwdriver:screwdriver"]="R270", + ["screwdriver:screwdriver1"]="R270", + ["screwdriver:screwdriver2"]="R270", + ["screwdriver:screwdriver3"]="R270", + ["screwdriver:screwdriver4"]="R270", + ["vessels:glass_bottle"]="R270", + ["vessels:drinking_glass"]="R270", + ["vessels:steel_bottle"]="R270", +} +