diff --git a/README.md b/README.md index 2c3e85f..f274edc 100644 --- a/README.md +++ b/README.md @@ -4,9 +4,11 @@ A cleaner, simpler solution to having an advanced inventory in Minetest. -Written by rubenwardy. +Written by rubenwardy.\\ License: MIT +* sfinv_crafting_arrow.png - by paramat, derived from a texture by BlockMen (CC BY-SA 3.0). + ## API It is recommended that you read this link for a good introduction to the sfinv API diff --git a/api.lua b/api.lua index cc1bde5..1dbc44a 100644 --- a/api.lua +++ b/api.lua @@ -5,16 +5,6 @@ sfinv = { enabled = true } -if minetest.features.formspec_prepends then - sfinv.gui_bg = "" - sfinv.gui_bg_img = "" - sfinv.gui_slots = "" -else - sfinv.gui_bg = "bgcolor[#080808BB;true]" - sfinv.gui_bg_img = "background[5,5;1,1;gui_formbg.png;true]" - sfinv.gui_slots = "listcolors[#00000069;#5A5A5A;#141318;#30434C;#FFF]" -end - function sfinv.register_page(name, def) assert(name, "Invalid sfinv page. Requires a name") assert(def, "Invalid sfinv page. Requires a def[inition] table") @@ -46,24 +36,26 @@ function sfinv.get_nav_fs(player, context, nav, current_idx) end end -local theme_main = "bgcolor[#080808BB;true]" .. sfinv.gui_bg .. - sfinv.gui_bg_img - -local theme_inv = sfinv.gui_slots .. [[ - list[current_player;main;0,4.7;8,1;] - list[current_player;main;0,5.85;8,3;8] +local theme_inv = [[ + image[0,5.2;1,1;gui_hb_bg.png] + image[1,5.2;1,1;gui_hb_bg.png] + image[2,5.2;1,1;gui_hb_bg.png] + image[3,5.2;1,1;gui_hb_bg.png] + image[4,5.2;1,1;gui_hb_bg.png] + image[5,5.2;1,1;gui_hb_bg.png] + image[6,5.2;1,1;gui_hb_bg.png] + image[7,5.2;1,1;gui_hb_bg.png] + list[current_player;main;0,5.2;8,1;] + list[current_player;main;0,6.35;8,3;8] ]] function sfinv.make_formspec(player, context, content, show_inv, size) local tmp = { - size or "size[8,8.6]", - theme_main, + size or "size[8,9.1]", sfinv.get_nav_fs(player, context, context.nav_titles, context.nav_idx), + show_inv and theme_inv or "", content } - if show_inv then - tmp[#tmp + 1] = theme_inv - end return table.concat(tmp, "") end @@ -149,6 +141,11 @@ function sfinv.set_page(player, pagename) sfinv.set_player_inventory_formspec(player, context) end +function sfinv.get_page(player) + local context = sfinv.contexts[player:get_player_name()] + return context and context.page or sfinv.get_homepage_name(player) +end + minetest.register_on_joinplayer(function(player) if sfinv.enabled then sfinv.set_player_inventory_formspec(player) diff --git a/description.txt b/description.txt deleted file mode 100644 index c62b967..0000000 --- a/description.txt +++ /dev/null @@ -1 +0,0 @@ -A cleaner, simpler solution to having an advanced inventory in Minetest. diff --git a/init.lua b/init.lua index f030222..71e9ee7 100644 --- a/init.lua +++ b/init.lua @@ -1,22 +1,19 @@ +-- sfinv/init.lua + dofile(minetest.get_modpath("sfinv") .. "/api.lua") +-- Load support for MT game translation. +local S = minetest.get_translator("sfinv") + sfinv.register_page("sfinv:crafting", { - title = "Crafting", + title = S("Crafting"), get = function(self, player, context) return sfinv.make_formspec(player, context, [[ list[current_player;craft;1.75,0.5;3,3;] list[current_player;craftpreview;5.75,1.5;1,1;] - image[4.75,1.5;1,1;gui_furnace_arrow_bg.png^[transformR270] + image[4.75,1.5;1,1;sfinv_crafting_arrow.png] listring[current_player;main] listring[current_player;craft] - image[0,4.75;1,1;gui_hb_bg.png] - image[1,4.75;1,1;gui_hb_bg.png] - image[2,4.75;1,1;gui_hb_bg.png] - image[3,4.75;1,1;gui_hb_bg.png] - image[4,4.75;1,1;gui_hb_bg.png] - image[5,4.75;1,1;gui_hb_bg.png] - image[6,4.75;1,1;gui_hb_bg.png] - image[7,4.75;1,1;gui_hb_bg.png] ]], true) end }) diff --git a/locale/sfinv.de.tr b/locale/sfinv.de.tr new file mode 100644 index 0000000..044e9ba --- /dev/null +++ b/locale/sfinv.de.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Fertigung diff --git a/locale/sfinv.es.tr b/locale/sfinv.es.tr new file mode 100644 index 0000000..d3d6609 --- /dev/null +++ b/locale/sfinv.es.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Creación diff --git a/locale/sfinv.fr.tr b/locale/sfinv.fr.tr new file mode 100644 index 0000000..58ead96 --- /dev/null +++ b/locale/sfinv.fr.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Artisanat diff --git a/locale/sfinv.id.tr b/locale/sfinv.id.tr new file mode 100644 index 0000000..643196e --- /dev/null +++ b/locale/sfinv.id.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Kerajinan diff --git a/locale/sfinv.it.tr b/locale/sfinv.it.tr new file mode 100644 index 0000000..e449b75 --- /dev/null +++ b/locale/sfinv.it.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Assemblaggio diff --git a/locale/sfinv.ms.tr b/locale/sfinv.ms.tr new file mode 100644 index 0000000..f62ba8a --- /dev/null +++ b/locale/sfinv.ms.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Pertukangan diff --git a/locale/sfinv.ru.tr b/locale/sfinv.ru.tr new file mode 100644 index 0000000..d7c11b2 --- /dev/null +++ b/locale/sfinv.ru.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Крафтинг diff --git a/locale/sfinv.se.tr b/locale/sfinv.se.tr new file mode 100644 index 0000000..df426b6 --- /dev/null +++ b/locale/sfinv.se.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Tillverkning diff --git a/locale/sfinv.sk.tr b/locale/sfinv.sk.tr new file mode 100644 index 0000000..18566f1 --- /dev/null +++ b/locale/sfinv.sk.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=Vytváranie diff --git a/locale/sfinv.zh_CN.tr b/locale/sfinv.zh_CN.tr new file mode 100644 index 0000000..3ec3c72 --- /dev/null +++ b/locale/sfinv.zh_CN.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=合成 diff --git a/locale/sfinv.zh_TW.tr b/locale/sfinv.zh_TW.tr new file mode 100644 index 0000000..3ec3c72 --- /dev/null +++ b/locale/sfinv.zh_TW.tr @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting=合成 diff --git a/locale/template.txt b/locale/template.txt new file mode 100644 index 0000000..ace5519 --- /dev/null +++ b/locale/template.txt @@ -0,0 +1,2 @@ +# textdomain: sfinv +Crafting= diff --git a/mod.conf b/mod.conf index 721d29f..68f124d 100644 --- a/mod.conf +++ b/mod.conf @@ -1 +1,2 @@ name = sfinv +description = A cleaner, simpler solution to having an advanced inventory in Minetest. diff --git a/textures/sfinv_crafting_arrow.png b/textures/sfinv_crafting_arrow.png new file mode 100644 index 0000000..df1bbdb Binary files /dev/null and b/textures/sfinv_crafting_arrow.png differ