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 0dcb40b34..23a8c4a53 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 zcmeHKYfuws6ul7?QG7&nv{kT!Rtl{}iw@YJAcjWhn6atopjNyw9d8mvyilLMu4+)V3T_q+FF$s?(bT*9Nx`5j{{mV}B>txTp_uTWH z>?Unxvu4eBdj|Ke<47 zwnwXyq?-bWa+pjXm#|oel>q#*Q`lf{-$@?;NLNd$nmsK6YRzof0C3$Lz|ENkFx?ga zx=jJz$pnC7mH_e5_+O}512#bd6QM@*cbDLO?_s@`TOXvbK9XQ463B#_;ijSf zrM#uUcMO-l+Hr01?6CR+a;xm3=;V6_gV0wcsqT-IGu9PpH+0myc5DC$crdn9fNqmY z|A)sVq1Gz1%5|j6H8rRvJ~{)ScwN{_0q`OHb`)HdMXCfR>pl)rO&1SE6_&@xyDkOL zHYSnOsyrB8{~MRpBNwzPkOZJXZ`*0MO6z9#Tdrs7Zl<9@qn z&Q-_EB=W|{mLS!k#E_?qRwCbrFhu^ZUPJ^F_!MEtu!M)lV~BtXBNI%}@B~w#VJ>HP znU?JFdLmuPEqCOWJ3ed6#CNzYlKz>O-9lBvx?R%%obzJN2&@^n*UnEsHeRAPJd&uJ z*N~GZq|%=XL*%b(n5;kEl$*Ci>bb|)cLz^*=gtXLgVpem{)K)DJZKtw@U|$Oc~vH| z6bpdR{3Hi za(T5fm9aKe-A{vBS;UxJ%IFNcAU1E04S0M{Q{8+?ozl>xX&=IBDj5DjHP+EN;}3FW zuT4%G=fkek5#<)TYfY*^8k8J5gB8{rtJ|Zkw&gp~F3Lpnpmxxilvm_!h3>vbi21oOR@_ zlDtZV5uQUjqti%Wh@1)|6CfLsrzaCoVTgb{%mhuL!c-V4ObpYxRnnWp@md&CT9#E> zmZkU(|D;|whOx&&dR|(1pD43z9{~UJ3~aEs6i;FP43e}HRCKvm-D0_=`76a#yS&82 zMaQq9rQL5Aamyoevl4EPmXHjYPp)@zz5nv?NB9-_9C?|r9~CxvdjI?BMLH7FBKZ)8 z^rylI0;Z%lDgVIlnxknPCez}EACdKV>|bdTxjr;LR_280kI9^O^0H4wkTat!Yq4rK z`Hzz-6sa&Ganb)4l>w zwTrkn@eiweRD0r?AE4ImZhxG*ZS<)ey?dc4P^bT^8?t<4aw?28DskV_Y$qCkTb)Z| zf^Mzxg=PVd$!v|H)B7}9eFhr`BFt@Fy w1Jtr?dD@D^$d@Zl$~$!qd@gKOZ~ocDs4oLMmJ@h5(lrw5x^?Cy8;AHk7Dga7~l literal 0 HcmV?d00001