From 3deb0213a3cf4b936dc555227149a4b595282a29 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Tue, 17 Jan 2017 18:17:53 +0100 Subject: [PATCH] Add Minecraft-style hopper inventory --- mods/hopper/init.lua | 28 ++++++++++------------ mods/hopper/textures/hopper_inventory.png | Bin 0 -> 4853 bytes 2 files changed, 13 insertions(+), 15 deletions(-) create mode 100644 mods/hopper/textures/hopper_inventory.png diff --git a/mods/hopper/init.lua b/mods/hopper/init.lua index 0dcb40b3..23a8c4a5 100644 --- a/mods/hopper/init.lua +++ b/mods/hopper/init.lua @@ -2,15 +2,15 @@ local chest = minetest.get_content_id("default:chest") -local chest_formspec = - "size[8,9]".. - --default.gui_bg.. - --default.gui_bg_img.. - --default.gui_slots.. - "list[current_name;main;0,0.3;8,4;]".. - "list[current_player;main;0,4.85;8,1;]".. - "list[current_player;main;0,6.08;8,3;8]" - --default.get_hotbar_bg(0,4.85) +local hopper_formspec = + "size[9,7]".. + "background[-0.19,-0.25;9.41,10.48;hopper_inventory.png]".. + default.inventory_header.. + "list[current_name;main;2,0.5;5,1;]".. + "list[current_player;main;0,2.5;9,3;9]".. + "list[current_player;main;0,5.74;9,1;]".. + "listring[current_name;main]".. + "listring[current_player;main]" minetest.register_node("hopper:hopper", { drop = "hopper:hopper_item", @@ -38,10 +38,9 @@ minetest.register_node("hopper:hopper", { on_construct = function(pos) local meta = minetest.get_meta(pos) - meta:set_string("formspec", chest_formspec) - meta:set_string("infotext", "Chest") + meta:set_string("formspec", hopper_formspec) local inv = meta:get_inventory() - inv:set_size("main", 8*4) + inv:set_size("main", 5) end, can_dig = function(pos,player) local meta = minetest.get_meta(pos); @@ -90,10 +89,9 @@ minetest.register_node("hopper:hopper_side", { on_construct = function(pos) local meta = minetest.get_meta(pos) - meta:set_string("formspec", chest_formspec) - meta:set_string("infotext", "Chest") + meta:set_string("formspec", hopper_formspec) local inv = meta:get_inventory() - inv:set_size("main", 8*4) + inv:set_size("main", 5) end, can_dig = function(pos,player) local meta = minetest.get_meta(pos); diff --git a/mods/hopper/textures/hopper_inventory.png b/mods/hopper/textures/hopper_inventory.png new file mode 100644 index 0000000000000000000000000000000000000000..f44510466f4d25216cd07d0d4385e07e97491d82 GIT binary patch literal 4853 zcmeAS@N?(olHy`uVBq!ia0y~yVD@8RU{2;>V_;yIJIO1Pfq{XsILO_JVcj{ImkbOH zY)RhkE)4$}7#J9g)oVU8FfecyctjR6FmMZjFyp1Wb$=Kb7}!fZeO=ifG71XvNuT8o zd%?gURO;#C7*cWT?On&9$8HjB596n-Tdd``IQ0EY=@(j$!oDP?-HlWckuc5@iL{;e z)h1LksqNqy_SxpPvgIEavM?|(2nybP&i?m#hL)=}BLjoF{<3wutL{(EU}9j{5%lQt z{Zp_1<*Hp|VPFstoLJn~(eeEG^Y3Y0%eT&d^8Nk&X)Fv3=N7rRMA{Tq>FY8uG;E&n z{O7BWlOq`z7^Z!_zxT4IFayH@c6C1n28KhN3=9qyj0_AM>I@7F4_O!(6y`86Fti9W zFf#6ycMD8vxc7ccz1$|JJU5y!G4f zi@!e0*UB?A7#BT4cJYCAe1*p|U&}6BTi$i;-@mQ#@9*#XT=Lr5a_x7!TgUBh*)cGr zKR~xC{g3nezq?$wZ2c}fXRrPLd-na=`|HYQF)*yNEQAFB$dd`-%lAAkdB1-05v%O? z9Cv?}uHIHxXD`pd@cn!zN@(rQDmuQh%>Bvh_1E9k)cpN=>;3xLKT+?N99j1M{Mzrf zw_aQPtYl%ZkV6gsH>@<;F9er9GUxc{tjU)39sn-@62qNyRb zO1Qwpz51>i14AF0y1E=O;3?a-dG6bs=j?YR&z%4{ z+o4rh{YHX}yK>Frzxy+u&3T)XZhiaaIsQGyb2?FD3^hrh*n^f_Q03rh3Y?U1$iWSV zyB$|rgc|@(Z*YA$3`eA4xIWCpOk5@a89>lcV8h{#+OhB+%Z50wmydMIwi%agGyZU6 z4k!*oN(2MFG{xVav5aP8V6a$PId8q3H7KpEz~KulUIkkO4_dg5s0Lus2l54K7!wsl zU`43izT~Uy%xF-da`@}^_Y>a!{mRJj;RiU5;NiPr^*xrixwUsyr>)()_=%q| z1A{4=3#MB8ZTwf-wQb+KerwbIub&wi4m>VKE0<>7DO`1z^JZ20i)-KZUEcDw@65$- zH-A0fzuh`9d%s-yBFv1u`<2q7DM5PoW)^Sb`E&5%`wT{g4LS3kuRad8T?-!LHDK1=b{+#28sOA`!y47!@yVeY05+45#fZ?j6L9}kXONe8{>II7H*TK$wg-gz4}rqf!Bt#v>6D_6=jLoq zWngFsp7s3atBs&ixPgmMR<~KR@2arx<&?LqnoB!6B-#$1gGJiyo9D{56)&D!e+pv7 z{a>7;(TlUGLuUCn8od~eMtDe$=3aui7hZ^wSeC%`VF_cG`>#5eWp4V`G$qKzh39Yr zqO1os@pfK3Xa5vbDK1!)|F`9_MO5v=8O5k&#^$-w?_*FaPJD$TJ~>2z39q;C6`1(s zPz}Hr0Hh^AqCy_52;mt#g)$;E@>b-3b9N4{6}B!yM!1DGB6x) zSFimZ{srWO1It042X(qf@n{H)h5(Tv@Z$r&My|{}(ci8YKsr2K{an^LB{Ts5!I4FT literal 0 HcmV?d00001