diff --git a/bags.lua b/bags.lua index c61c982..c1fffb5 100644 --- a/bags.lua +++ b/bags.lua @@ -7,17 +7,19 @@ License: GPLv3 local S = minetest.get_translator("unified_inventory") local F = minetest.formspec_escape +local bags_inv_bg_prefix = "image[-0.1,0.9;10.05," unified_inventory.register_page("bags", { get_formspec = function(player) local player_name = player:get_player_name() return { formspec = table.concat({ - "background[0.06,0.99;7.92,7.52;ui_bags_main_form.png]", + string.gsub(unified_inventory.standard_inv_bg, "YYY", "4.4"), + bags_inv_bg_prefix.."1.175;ui_bags_header.png]", "label[0,0;" .. F(S("Bags")) .. "]", - "button[0,2;2,0.5;bag1;" .. F(S("Bag @1", 1)) .. "]", - "button[2,2;2,0.5;bag2;" .. F(S("Bag @1", 2)) .. "]", - "button[4,2;2,0.5;bag3;" .. F(S("Bag @1", 3)) .. "]", - "button[6,2;2,0.5;bag4;" .. F(S("Bag @1", 4)) .. "]", + "button[0,2.1;2,0.5;bag1;" .. F(S("Bag @1", 1)) .. "]", + "button[2,2.1;2,0.5;bag2;" .. F(S("Bag @1", 2)) .. "]", + "button[4,2.1;2,0.5;bag3;" .. F(S("Bag @1", 3)) .. "]", + "button[6,2.1;2,0.5;bag4;" .. F(S("Bag @1", 4)) .. "]", "listcolors[#00000000;#00000000]", "list[detached:" .. F(player_name) .. "_bags;bag1;0.5,1;1,1;]", "list[detached:" .. F(player_name) .. "_bags;bag2;2.5,1;1,1;]", @@ -47,26 +49,27 @@ for bag_i = 1, 4 do local stack = get_player_bag_stack(player, bag_i) local image = stack:get_definition().inventory_image local fs = { + string.gsub(unified_inventory.standard_inv_bg, "YYY", "4.4"), "image[7,0;1,1;" .. image .. "]", "label[0,0;" .. F(S("Bag @1", bag_i)) .. "]", "listcolors[#00000000;#00000000]", "list[current_player;bag" .. bag_i .. "contents;0,1;8,3;]", "listring[current_name;bag" .. bag_i .. "contents]", - "listring[current_player;main]" + "listring[current_player;main]", } local slots = stack:get_definition().groups.bagslots if slots == 8 then - fs[#fs + 1] = "background[0.06,0.99;7.92,7.52;ui_bags_sm_form.png]" + fs[#fs + 1] = bags_inv_bg_prefix.."1.175;ui_bags_inv_small.png]" elseif slots == 16 then - fs[#fs + 1] = "background[0.06,0.99;7.92,7.52;ui_bags_med_form.png]" + fs[#fs + 1] = bags_inv_bg_prefix.."2.35;ui_bags_inv_medium.png]" elseif slots == 24 then - fs[#fs + 1] = "background[0.06,0.99;7.92,7.52;ui_bags_lg_form.png]" + fs[#fs + 1] = bags_inv_bg_prefix.."3.525;ui_bags_inv_large.png]" end local player_name = player:get_player_name() -- For if statement. if unified_inventory.trash_enabled or unified_inventory.is_creative(player_name) or minetest.get_player_privs(player_name).give then - fs[#fs + 1] = "background[6.06,0;0.92,0.92;ui_bags_trash.png]" + fs[#fs + 1] = "image[6,0;1,1;ui_bags_trash.png]" .. "list[detached:trash;main;6,0.1;1,1;]" end local inv = player:get_inventory() diff --git a/init.lua b/init.lua index 1a80abb..7be101c 100644 --- a/init.lua +++ b/init.lua @@ -44,7 +44,10 @@ unified_inventory = { main_button_y = 9, craft_result_x = 0.3, craft_result_y = 0.5, - form_header_y = 0 + form_header_y = 0, + standard_background = "background[-0.2,-0.2;1,1;ui_form_bg.png;true]", -- the 'true' scales to fill, overrides the 1,1 + standard_inv = "list[current_player;main;0,YYY;8,4;]", -- the YYY's are placeholders which get + standard_inv_bg = "image[-0.1,YYY;10.05,4.70;ui_main_inventory.png]", -- replaced later by string.gsub() } -- Disable default creative inventory diff --git a/internal.lua b/internal.lua index eeab695..78cba2a 100644 --- a/internal.lua +++ b/internal.lua @@ -65,13 +65,13 @@ function unified_inventory.get_formspec(player, page) local formspec = { "size[14,10]", pagedef.formspec_prepend and "" or "no_prepend[]", - "background[-0.19,-0.25;14.4,10.75;ui_form_bg.png]" -- Background + unified_inventory.standard_background -- Background } local n = 4 if draw_lite_mode then formspec[1] = "size[11,7.7]" - formspec[3] = "background[-0.19,-0.2;11.4,8.4;ui_form_bg.png]" + formspec[3] = unified_inventory.standard_background end if unified_inventory.is_creative(player_name) @@ -130,7 +130,7 @@ function unified_inventory.get_formspec(player, page) if fsdata.draw_inventory ~= false then -- Player inventory formspec[n] = "listcolors[#00000000;#00000000]" - formspec[n+1] = "list[current_player;main;0,"..(ui_peruser.formspec_y + 3.5)..";8,4;]" + formspec[n+1] = string.gsub(unified_inventory.standard_inv, "YYY", ui_peruser.formspec_y + 3.5) n = n+2 end diff --git a/register.lua b/register.lua index 017e4af..cfc1d7d 100644 --- a/register.lua +++ b/register.lua @@ -171,7 +171,7 @@ unified_inventory.register_page("craft", { local player_name = player:get_player_name() local formspec = "background[2,"..formspecy..";6,3;ui_crafting_form.png]" - formspec = formspec.."background[0,"..(formspecy + 3.5)..";8,4;ui_main_inventory.png]" + formspec = formspec..string.gsub(unified_inventory.standard_inv_bg, "YYY", (formspecy + 3.4)) formspec = formspec.."label[0,"..formheadery..";" ..F(S("Crafting")).."]" formspec = formspec.."listcolors[#00000000;#00000000]" formspec = formspec.."list[current_player;craftpreview;6,"..formspecy..";1,1;]" @@ -268,7 +268,7 @@ unified_inventory.register_page("craftguide", { local player_name = player:get_player_name() local player_privs = minetest.get_player_privs(player_name) local fs = { - "background[0,"..(formspecy + 3.5)..";8,4;ui_main_inventory.png]", + string.gsub(unified_inventory.standard_inv_bg, "YYY", (formspecy + 3.4)), "label[0,"..formheadery..";" .. F(S("Crafting Guide")) .. "]", "listcolors[#00000000;#00000000]" } diff --git a/textures/ui_bags_header.png b/textures/ui_bags_header.png new file mode 100644 index 0000000..f9bf1dd Binary files /dev/null and b/textures/ui_bags_header.png differ diff --git a/textures/ui_bags_inv_large.png b/textures/ui_bags_inv_large.png new file mode 100644 index 0000000..a3725ee Binary files /dev/null and b/textures/ui_bags_inv_large.png differ diff --git a/textures/ui_bags_inv_medium.png b/textures/ui_bags_inv_medium.png new file mode 100644 index 0000000..5924f54 Binary files /dev/null and b/textures/ui_bags_inv_medium.png differ diff --git a/textures/ui_bags_inv_small.png b/textures/ui_bags_inv_small.png new file mode 100644 index 0000000..6776754 Binary files /dev/null and b/textures/ui_bags_inv_small.png differ diff --git a/textures/ui_bags_lg_form.png b/textures/ui_bags_lg_form.png deleted file mode 100644 index 24dab30..0000000 Binary files a/textures/ui_bags_lg_form.png and /dev/null differ diff --git a/textures/ui_bags_main_form.png b/textures/ui_bags_main_form.png deleted file mode 100644 index 8c168d2..0000000 Binary files a/textures/ui_bags_main_form.png and /dev/null differ diff --git a/textures/ui_bags_med_form.png b/textures/ui_bags_med_form.png deleted file mode 100644 index 27a1591..0000000 Binary files a/textures/ui_bags_med_form.png and /dev/null differ diff --git a/textures/ui_bags_sm_form.png b/textures/ui_bags_sm_form.png deleted file mode 100644 index 6234eb8..0000000 Binary files a/textures/ui_bags_sm_form.png and /dev/null differ diff --git a/textures/ui_bags_trash.png b/textures/ui_bags_trash.png index 0bc11c5..8247130 100644 Binary files a/textures/ui_bags_trash.png and b/textures/ui_bags_trash.png differ diff --git a/textures/ui_form_bg.png b/textures/ui_form_bg.png index d973b34..7111fac 100644 Binary files a/textures/ui_form_bg.png and b/textures/ui_form_bg.png differ diff --git a/textures/ui_main_inventory.png b/textures/ui_main_inventory.png index b7860ca..b9a0545 100644 Binary files a/textures/ui_main_inventory.png and b/textures/ui_main_inventory.png differ diff --git a/textures/ui_misc_form.png b/textures/ui_misc_form.png index 2d6ad01..c6a6057 100644 Binary files a/textures/ui_misc_form.png and b/textures/ui_misc_form.png differ diff --git a/waypoints.lua b/waypoints.lua index e23ef4b..97712b7 100644 --- a/waypoints.lua +++ b/waypoints.lua @@ -23,7 +23,7 @@ unified_inventory.register_page("waypoints", { if not waypoints_temp[player_name] then waypoints_temp[player_name] = {hud = 1} end local waypoints = datastorage.get(player_name, "waypoints") - local formspec = "background[0,4.5;8,4;ui_main_inventory.png]" .. + local formspec = string.gsub(unified_inventory.standard_inv_bg, "YYY", "4.4") .. "image[0,0;1,1;ui_waypoints_icon.png]" .. "label[1,0;" .. F(S("Waypoints")) .. "]"