diff --git a/mods/HUD/mcl_inventory/creative.lua b/mods/HUD/mcl_inventory/creative.lua index d66aa06d2..1c85c125e 100644 --- a/mods/HUD/mcl_inventory/creative.lua +++ b/mods/HUD/mcl_inventory/creative.lua @@ -339,14 +339,6 @@ function mcl_inventory.set_creative_formspec(player, start_i, pagenum, inv_size, if name == "inv" then inv_bg = "crafting_inventory_creative_survival.png" - -- Show armor and player image - local player_preview - if minetest.settings:get_bool("3d_player_preview", true) then - player_preview = mcl_player.get_player_formspec_model(player, 3.9, 1.4, 1.2333, 2.4666, "") - else - player_preview = "image[3.9,1.4;1.2333,2.4666;"..mcl_player.player_get_preview(player).."]" - end - -- Background images for armor slots (hide if occupied) local armor_slot_imgs = "" local inv = player:get_inventory() @@ -385,7 +377,7 @@ function mcl_inventory.set_creative_formspec(player, start_i, pagenum, inv_size, mcl_formspec.get_itemslot_bg(1.5,2.025,1,1).. armor_slot_imgs.. -- player preview - player_preview.. + mcl_player.get_player_formspec_model(player, 3.9, 1.4, 1.2333, 2.4666, "").. -- crafting guide button "image_button[9,1;1,1;craftguide_book.png;__mcl_craftguide;]".. "tooltip[__mcl_craftguide;"..F(S("Recipe book")).."]".. diff --git a/mods/HUD/mcl_inventory/init.lua b/mods/HUD/mcl_inventory/init.lua index 0d411502d..f2cb2e523 100644 --- a/mods/HUD/mcl_inventory/init.lua +++ b/mods/HUD/mcl_inventory/init.lua @@ -60,14 +60,6 @@ local function set_inventory(player, armor_change_only) inv:set_width("craft", 2) inv:set_size("craft", 4) - -- Show armor and player image - local player_preview - if minetest.settings:get_bool("3d_player_preview", true) then - player_preview = mcl_player.get_player_formspec_model(player, 1.0, 0.0, 2.25, 4.5, "") - else - player_preview = "image[1.1,0.2;2,4;"..mcl_player.player_get_preview(player).."]" - end - local armor_slots = {"helmet", "chestplate", "leggings", "boots"} local armor_slot_imgs = "" for a=1,4 do @@ -82,7 +74,7 @@ local function set_inventory(player, armor_change_only) local form = "size[9,8.75]".. "background[-0.19,-0.25;9.41,9.49;crafting_formspec_bg.png]".. - player_preview.. + mcl_player.get_player_formspec_model(player, 1.0, 0.0, 2.25, 4.5, "").. --armor "list[current_player;armor;0,0;1,1;1]".. "list[current_player;armor;0,1;1,1;2]".. diff --git a/mods/ITEMS/mcl_armor/API.md b/mods/ITEMS/mcl_armor/API.md index ede33ebb9..06292aab4 100644 --- a/mods/ITEMS/mcl_armor/API.md +++ b/mods/ITEMS/mcl_armor/API.md @@ -48,7 +48,7 @@ mcl_armor.register_set({ enchantability = 15, --this define how much each piece of armor protect the player - --these points will be shown in the HUD (chestplate bar above the health bar) + --these points will be shown in the HUD (chestplate bar above the health bar) points = { head = 1, torso = 3, @@ -87,16 +87,6 @@ mcl_armor.register_set({ end, }, - --WARNING: 2d preview is deprecated and will be removed soon - --specify textures that will be shown in player inventory then you disabled the 3d player inventory preview - --its similar to how works the textures field - previews = { - head = "dummy_texture.png", --default: "_helmet__preview.png" - torso = "dummy_texture.png", --default: "_chestplate__preview.png" - legs = "dummy_texture.png", --default: "_leggings__preview.png" - feet = "dummy_texture.png", --default: "_boots__preview.png" - }, - --inventory textures aren't definable using a table similar to textures or previews --you are forced to use the default texture names which are: --head: "_inv_helmet_.png @@ -134,12 +124,12 @@ mcl_armor.register_set({ craft_material = "mcl_mobitems:leather", --this is used to generate cooking crafts for each piece of armor - --if set to nil no craft will be added + --if set to nil no craft will be added cook_material = "mcl_core:gold_nugget", --cooking any piece of this armor will output a gold nugged --this is used for allowing each piece of the armor to be repaired by using an anvil with repair_material as aditionnal material --it basicaly set the _repair_material item field of each piece of the armor - --if set to nil no repair material will be added + --if set to nil no repair material will be added repair_material = "mcl_core:iron_ingot", }) ``` @@ -179,7 +169,7 @@ minetest.register_tool("dummy_mod:random_armor", { }, --these fields should be initialised like that in most cases - --mcl_armor.equip_on_use is a function that try to equip the piece of armor you have in hand inside the right armor slot if the slot is empty + --mcl_armor.equip_on_use is a function that try to equip the piece of armor you have in hand inside the right armor slot if the slot is empty on_place = mcl_armor.equip_on_use, on_secondary_use = mcl_armor.equip_on_use, @@ -263,7 +253,7 @@ mcl_armor.register_protection_enchantment({ max_level = 4, --which enchants this enchant will not be compatible with - --each of these values is a enchant id + --each of these values is a enchant id incompatible = {blast_protection = true, fire_protection = true, projectile_protection = true}, --how much will the enchant consume from the enchantability group of the armor item @@ -284,7 +274,7 @@ mcl_armor.register_protection_enchantment({ factor = 1, --restrict damage to one type - --allow the enchant to only protect of one type of damage + --allow the enchant to only protect of one type of damage damage_type = "magic", --restrict damage to one category diff --git a/mods/ITEMS/mcl_armor/api.lua b/mods/ITEMS/mcl_armor/api.lua index d58b5e666..6ec1b377b 100644 --- a/mods/ITEMS/mcl_armor/api.lua +++ b/mods/ITEMS/mcl_armor/api.lua @@ -94,7 +94,6 @@ function mcl_armor.register_set(def) local on_unequip_callbacks = def.on_unequip_callbacks or {} local on_break_callbacks = def.on_break_callbacks or {} local textures = def.textures or {} - local previews = def.previews or {} local durabilities = def.durabilities or {} local element_groups = def.element_groups or {} @@ -134,7 +133,6 @@ function mcl_armor.register_set(def) _on_break = on_break_callbacks[name] or def.on_break, _mcl_armor_element = name, _mcl_armor_texture = textures[name] or modname .. "_" .. itemname .. ".png", - _mcl_armor_preview = previews[name] or modname .. "_" .. itemname .. "_preview.png", }) if def.craft_material then @@ -221,17 +219,6 @@ function mcl_armor.update(obj) end end - local preview = def._mcl_armor_preview - - if obj:is_player() and preview then - if type(preview) == "function" then - preview = preview(obj, itemstack) - end - if preview then - info.preview = "(player.png^[opacity:0^" .. def._mcl_armor_preview .. ")" .. (info.preview and "^" .. info.preview or "" ) - end - end - info.points = info.points + minetest.get_item_group(itemname, "mcl_armor_points") local mob_range_mob = def._mcl_armor_mob_range_mob @@ -254,8 +241,6 @@ function mcl_armor.update(obj) info.texture = info.texture or "blank.png" if obj:is_player() then - info.preview = info.preview or "blank.png" - mcl_armor.update_player(obj, info) else local luaentity = obj:get_luaentity() diff --git a/mods/ITEMS/mcl_armor/player.lua b/mods/ITEMS/mcl_armor/player.lua index 48fdb381f..99e23efdd 100644 --- a/mods/ITEMS/mcl_armor/player.lua +++ b/mods/ITEMS/mcl_armor/player.lua @@ -63,7 +63,7 @@ mcl_player.player_register_model("mcl_armor_character_female.b3d", { }) function mcl_armor.update_player(player, info) - mcl_player.player_set_armor(player, info.texture, info.preview) + mcl_player.player_set_armor(player, info.texture) local meta = player:get_meta() meta:set_int("mcl_armor:armor_points", info.points) diff --git a/mods/ITEMS/mcl_enchanting/engine.lua b/mods/ITEMS/mcl_enchanting/engine.lua index f505c055e..7be1d7244 100644 --- a/mods/ITEMS/mcl_enchanting/engine.lua +++ b/mods/ITEMS/mcl_enchanting/engine.lua @@ -280,9 +280,6 @@ function mcl_enchanting.initialize() if new_def._mcl_armor_texture and not type(new_def._mcl_armor_texture) == "function" then new_def._mcl_armor_texture = new_def._mcl_armor_texture .. mcl_enchanting.overlay end - if new_def._mcl_armor_preview and not type(new_def._mcl_armor_preview) == "function" then - new_def._mcl_armor_preview = new_def._mcl_armor_preview .. mcl_enchanting.overlay - end new_def._mcl_enchanting_enchanted_tool = new_name new_def.after_use = get_after_use_callback(itemdef) diff --git a/mods/ITEMS/mcl_farming/pumpkin.lua b/mods/ITEMS/mcl_farming/pumpkin.lua index 45ac2f611..5b488fb84 100644 --- a/mods/ITEMS/mcl_farming/pumpkin.lua +++ b/mods/ITEMS/mcl_farming/pumpkin.lua @@ -123,7 +123,6 @@ pumpkin_face_base_def._mcl_armor_mob_range_mob = "mobs_mc:enderman" pumpkin_face_base_def._mcl_armor_element = "head" pumpkin_face_base_def._mcl_armor_texture = "mcl_farming_pumpkin_face.png" -pumpkin_face_base_def._mcl_armor_preview = "mcl_farming_pumpkin_face_preview.png" pumpkin_face_base_def.on_construct = function(pos) -- Attempt to spawn iron golem or snow golem diff --git a/mods/ITEMS/mcl_farming/textures/mcl_farming_pumpkin_face_preview.png b/mods/ITEMS/mcl_farming/textures/mcl_farming_pumpkin_face_preview.png deleted file mode 100644 index a151fcab6..000000000 Binary files a/mods/ITEMS/mcl_farming/textures/mcl_farming_pumpkin_face_preview.png and /dev/null differ diff --git a/mods/ITEMS/mcl_heads/init.lua b/mods/ITEMS/mcl_heads/init.lua index 78356de71..c14079393 100644 --- a/mods/ITEMS/mcl_heads/init.lua +++ b/mods/ITEMS/mcl_heads/init.lua @@ -113,7 +113,6 @@ local function addhead(name, texture, desc, longdesc, rangemob, rangefactor) _mcl_armor_mob_range_factor = rangefactor, _mcl_armor_element = "head", _mcl_armor_texture = "mcl_heads_" .. name .. ".png", - _mcl_armor_preview = "mcl_heads_" .. name .. "_preview.png", _mcl_blast_resistance = 1, _mcl_hardness = 1, }) diff --git a/mods/ITEMS/mcl_heads/textures/mcl_heads_creeper_preview.png b/mods/ITEMS/mcl_heads/textures/mcl_heads_creeper_preview.png deleted file mode 100644 index 120f0b53e..000000000 Binary files a/mods/ITEMS/mcl_heads/textures/mcl_heads_creeper_preview.png and /dev/null differ diff --git a/mods/ITEMS/mcl_heads/textures/mcl_heads_skeleton_preview.png b/mods/ITEMS/mcl_heads/textures/mcl_heads_skeleton_preview.png deleted file mode 100644 index 70d6d5cab..000000000 Binary files a/mods/ITEMS/mcl_heads/textures/mcl_heads_skeleton_preview.png and /dev/null differ diff --git a/mods/ITEMS/mcl_heads/textures/mcl_heads_steve_preview.png b/mods/ITEMS/mcl_heads/textures/mcl_heads_steve_preview.png deleted file mode 100644 index 906eb5b93..000000000 Binary files a/mods/ITEMS/mcl_heads/textures/mcl_heads_steve_preview.png and /dev/null differ diff --git a/mods/ITEMS/mcl_heads/textures/mcl_heads_wither_skeleton_preview.png b/mods/ITEMS/mcl_heads/textures/mcl_heads_wither_skeleton_preview.png deleted file mode 100644 index dbc9b3629..000000000 Binary files a/mods/ITEMS/mcl_heads/textures/mcl_heads_wither_skeleton_preview.png and /dev/null differ diff --git a/mods/ITEMS/mcl_heads/textures/mcl_heads_zombie_preview.png b/mods/ITEMS/mcl_heads/textures/mcl_heads_zombie_preview.png deleted file mode 100644 index ff1e0b26c..000000000 Binary files a/mods/ITEMS/mcl_heads/textures/mcl_heads_zombie_preview.png and /dev/null differ diff --git a/mods/PLAYER/mcl_player/init.lua b/mods/PLAYER/mcl_player/init.lua index 0dfe53976..4824bc9e3 100644 --- a/mods/PLAYER/mcl_player/init.lua +++ b/mods/PLAYER/mcl_player/init.lua @@ -95,37 +95,18 @@ local function set_texture(player, index, texture) player:set_properties({textures = textures}) end -local function set_preview(player, field, preview) - player:get_meta():set_string("mcl_player:" .. field .. "_preview", preview) -end - -function mcl_player.player_set_skin(player, texture, preview) +function mcl_player.player_set_skin(player, texture) set_texture(player, 1, texture) - set_preview(player, "skin", preview) end -function mcl_player.player_set_armor(player, texture, preview) +function mcl_player.player_set_armor(player, texture) set_texture(player, 2, texture) - set_preview(player, "armor", preview) end function mcl_player.player_set_wielditem(player, texture) set_texture(player, 3, texture) end -function mcl_player.player_get_preview(player) - local preview = player:get_meta():get_string("mcl_player:skin_preview") - if preview == "" then - preview = "player.png" - end - local armor_preview = player:get_meta():set_string("mcl_player:armor_preview") - if armor_preview ~= "" then - preview = preview .. "^" .. armor_preview - end - return preview - -end - function mcl_player.get_player_formspec_model(player, x, y, w, h, fsname) local name = player:get_player_name() local model = player_model[name] diff --git a/mods/PLAYER/mcl_skins/.gitignore b/mods/PLAYER/mcl_skins/.gitignore new file mode 100644 index 000000000..6edbd2834 --- /dev/null +++ b/mods/PLAYER/mcl_skins/.gitignore @@ -0,0 +1,4 @@ +!textures/mcl_skins_character_1.png +textures/mcl_skins_character_* +!meta/mcl_skins_character_1.txt +meta/mcl_skins_character_* \ No newline at end of file diff --git a/mods/PLAYER/mcl_skins/init.lua b/mods/PLAYER/mcl_skins/init.lua index 6d5461a98..485e342b1 100644 --- a/mods/PLAYER/mcl_skins/init.lua +++ b/mods/PLAYER/mcl_skins/init.lua @@ -3,7 +3,7 @@ local modname = minetest.get_current_modname() mcl_skins = { - skins = {}, list = {}, previews = {}, meta = {}, has_preview = {}, + skins = {}, list = {}, meta = {}, modpath = minetest.get_modpath(modname), skin_count = 0, -- counter of _custom_ skins (all skins except character.png) } @@ -18,10 +18,8 @@ while true do if id == 0 then skin = "character" - mcl_skins.has_preview[id] = true else skin = "mcl_skins_character_" .. id - local preview = "mcl_skins_player_" .. id -- Does skin file exist? f = io.open(mcl_skins.modpath .. "/textures/" .. skin .. ".png") @@ -31,20 +29,12 @@ while true do break end f:close() - - -- Does skin preview file exist? - local file_preview = io.open(mcl_skins.modpath .. "/textures/" .. preview .. ".png") - if file_preview == nil then - minetest.log("warning", "[mcl_skins] Player skin #"..id.." does not have preview image (player_"..id..".png)") - mcl_skins.has_preview[id] = false - else - mcl_skins.has_preview[id] = true - file_preview:close() - end end mcl_skins.list[id] = skin + local metafile + -- does metadata exist for that skin file ? if id == 0 then metafile = "mcl_skins_character.txt" @@ -89,12 +79,11 @@ function mcl_skins.set_player_skin(player, skin_id) return false end local playername = player:get_player_name() - local skin, preview + local skin if skin_id == nil or type(skin_id) ~= "number" or skin_id < 0 or skin_id > mcl_skins.skin_count then return false elseif skin_id == 0 then skin = "character" - preview = "player" mcl_player.player_set_model(player, "mcl_armor_character.b3d") else skin = "mcl_skins_character_" .. tostring(skin_id) @@ -104,16 +93,9 @@ function mcl_skins.set_player_skin(player, skin_id) else mcl_player.player_set_model(player, "mcl_armor_character.b3d") end - if mcl_skins.has_preview[skin_id] then - preview = "mcl_skins_player_" .. tostring(skin_id) - else - -- Fallback preview image if preview image is missing - preview = "mcl_skins_player_dummy" - end end --local skin_file = skin .. ".png" mcl_skins.skins[playername] = skin - mcl_skins.previews[playername] = preview player:get_meta():set_string("mcl_skins:skin_id", tostring(skin_id)) mcl_skins.update_player_skin(player) if has_mcl_inventory then @@ -131,7 +113,7 @@ function mcl_skins.update_player_skin(player) return end local playername = player:get_player_name() - mcl_player.player_set_skin(player, mcl_skins.skins[playername] .. ".png", mcl_skins.previews[playername] .. ".png") + mcl_player.player_set_skin(player, mcl_skins.skins[playername] .. ".png") end -- load player skin on join @@ -259,7 +241,11 @@ function mcl_skins.show_formspec(playername) formspec = formspec .. ";" .. selected .. ";false]" - formspec = formspec .. "image[0,0;1.35,2.7;" .. mcl_skins.previews[playername] .. ".png]" + local player = minetest.get_player_by_name(playername) + if player then + --maybe the function could accept both player object and player name? + formspec = formspec .. mcl_player.get_player_formspec_model(player, 0, 0, 1.35, 2.7, "mcl_skins:skin_select") + end if meta then if meta.name and meta.name ~= "" then diff --git a/mods/PLAYER/mcl_skins/textures/mcl_skins_player_1.png b/mods/PLAYER/mcl_skins/textures/mcl_skins_player_1.png deleted file mode 100644 index 3d7af2a98..000000000 Binary files a/mods/PLAYER/mcl_skins/textures/mcl_skins_player_1.png and /dev/null differ diff --git a/mods/PLAYER/mcl_skins/textures/mcl_skins_player_dummy.png b/mods/PLAYER/mcl_skins/textures/mcl_skins_player_dummy.png deleted file mode 100644 index d1f7dc20a..000000000 Binary files a/mods/PLAYER/mcl_skins/textures/mcl_skins_player_dummy.png and /dev/null differ diff --git a/settingtypes.txt b/settingtypes.txt index 542711675..8a0ebcce8 100644 --- a/settingtypes.txt +++ b/settingtypes.txt @@ -97,9 +97,6 @@ fire_animation_frames (Fire Animation Frames) int 8 # Whether to animate chests when open / close animated_chests (Animated chests) bool true -# Whether to preview the player in inventory in 3D (requires Minetest 5.4) -3d_player_preview (3D Player preview) bool true - # The maximum number of boss bars to simultaniously display on the screen max_bossbars (Maximum Boss bars) int 5