From eb6089a03ec0fdffc3848c377a51833528715392 Mon Sep 17 00:00:00 2001 From: Vanessa Dannenberg Date: Wed, 12 Sep 2018 18:49:51 -0400 Subject: [PATCH] make wooden banister colorable via Unified Dyes --- homedecor/crafts.lua | 13 +++++++ homedecor/handlers/expansion.lua | 4 ++- homedecor/misc-nodes.lua | 33 ++++++++++++++---- .../homedecor_banister_wood_colored_inv.png | Bin 0 -> 2491 bytes 4 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 homedecor/textures/homedecor_banister_wood_colored_inv.png diff --git a/homedecor/crafts.lua b/homedecor/crafts.lua index a139063f..f9edb539 100644 --- a/homedecor/crafts.lua +++ b/homedecor/crafts.lua @@ -3273,6 +3273,19 @@ for i in ipairs(homedecor.banister_materials) do }) end +unifieddyes.register_color_craft({ + output = "", + palette = "split", + neutral_node = "homedecor:banister_wood_horizontal", + type = "shapeless", + output_prefix = "homedecor:banister_wood_horizontal_", + output_suffix = "", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE", + } +}) + if (minetest.get_modpath("technic") and minetest.get_modpath("dye") and minetest.get_modpath("bees")) then technic.register_separating_recipe({ input = {"bees:wax 1"}, output = {"homedecor:oil_extract 2","dye:yellow 1"} }) end diff --git a/homedecor/handlers/expansion.lua b/homedecor/handlers/expansion.lua index 779e0770..bd87e90e 100644 --- a/homedecor/handlers/expansion.lua +++ b/homedecor/handlers/expansion.lua @@ -257,6 +257,8 @@ function homedecor.place_banister(itemstack, placer, pointed_thing) if not pos then return itemstack end local fdir = minetest.dir_to_facedir(placer:get_look_dir()) + local meta = itemstack:get_meta() + local pindex = meta:get_int("palette_index") local abovepos = { x=pos.x, y=pos.y+1, z=pos.z } local abovenode = minetest.get_node(abovepos) @@ -371,7 +373,7 @@ function homedecor.place_banister(itemstack, placer, pointed_thing) end end - minetest.set_node(pos, {name = new_place_name, param2 = fdir}) + minetest.set_node(pos, {name = new_place_name, param2 = fdir+pindex}) itemstack:take_item() return itemstack end diff --git a/homedecor/misc-nodes.lua b/homedecor/misc-nodes.lua index 72830d59..4d52e56b 100644 --- a/homedecor/misc-nodes.lua +++ b/homedecor/misc-nodes.lua @@ -483,23 +483,19 @@ for _, side in ipairs({"diagonal_left", "diagonal_right", "horizontal"}) do local name, matdesc, tile1, tile2 = unpack(mat) local nodename = "banister_"..name.."_"..side - local groups = { snappy = 3, not_in_creative_inventory = 1 } local cbox = { type = "fixed", fixed = { -9/16, -3/16, 5/16, 9/16, 24/16, 8/16 } } if side == "horizontal" then - groups = { snappy = 3 } cbox = { type = "fixed", fixed = { -8/16, -8/16, 5/16, 8/16, 8/16, 8/16 } } - else - minetest.register_alias(string.gsub("homedecor:"..nodename, "diagonal_", ""), "homedecor:"..nodename) end - homedecor.register(nodename, { + local def = { description = S("Banister for Stairs (@1, @2)", matdesc, sidedesc), mesh = "homedecor_banister_"..side..".obj", tiles = { @@ -507,12 +503,35 @@ for _, side in ipairs({"diagonal_left", "diagonal_right", "horizontal"}) do tile2, }, inventory_image = "homedecor_banister_"..name.."_inv.png", - groups = groups, selection_box = cbox, collision_box = cbox, + groups = { snappy = 3}, on_place = homedecor.place_banister, drop = "homedecor:banister_"..name.."_horizontal", - }) + } + + if side ~= "horizontal" then + def.groups.not_in_creative_inventory = 1 + end + + if name == "wood" then + def.airbrush_replacement_node = "homedecor:banister_wood_"..side.."_grey" + def.groups.ud_param2_colorable = 1 + def.paramtype2 = "colorfacedir" + end + homedecor.register(nodename, def) + + if name == "wood" then + local nn = "homedecor:"..nodename + local def2 = table.copy(minetest.registered_items[nn]) + def2.tiles = { + homedecor.white_wood, + homedecor.white_wood + } + def2.inventory_image = "homedecor_banister_wood_colored_inv.png" + + unifieddyes.generate_split_palette_nodes(nn, def2, "homedecor:banister_"..name.."_horizontal") + end end end diff --git a/homedecor/textures/homedecor_banister_wood_colored_inv.png b/homedecor/textures/homedecor_banister_wood_colored_inv.png new file mode 100644 index 0000000000000000000000000000000000000000..5c1a7ee752931d561c656cac06cd0434a503003e GIT binary patch literal 2491 zcmV;s2}JgZP){;^pJlSlP@$qpQjYjt~N-4rH>;krD&mOYb z>_)#=CmsT@67Qb`W`S1>IPHj0X);8#+wC6!zcc7crBwGO-+1E<9LJ&6YH|4R;p_fc zDMho{WOa3w)zwv+&1SS>lu9KEg#yK5kwT%cQBa5hk_^$FVNC<50sjO}0e=)iEU&|u zXsqyNZe^Q+mVj+QuKR{h(HH zOG~s`t*$%Sw#~%E1S2CO>j|>B0YEk|3XA|>0KOHwVSxV{*8CfI&FIc$ptg=nN%K8g zmQ3tkv9r#+7H>My6DLjx zK!jl^CMPH5`1rUVqtTa5SnHcL8jY^TT(hiUNTgMs=P^7y%#Iy9uxEl2nfTF zX0zFS#4VrC<2Vk5LV-*s!|3SfdIGLbojUb<(UXIPVI3$-DOp@xL@CA2ojWr?5LaET z^(3$lIA{QwG=es?j?apC6!1JRxd`3sWY}F@U8P>H<9S|}C6S9op<7BxsZ_$`JU{Cd zfK$LjQcB)`|9!$R1h}VCseJe`OtOut+lD2FfyaOyad}Wmi698B5#5^s5NV2;N7vTY z)@U}Hv|24%tyY&&z!tj~0Hl=XfQJAIg+iq4lfZ`?5U2o9LWq}umw+eD4el}`yC2vI zd==Q8a2MZ*+I8mpKFM%BG&Ix=)xPhuu&|({l)tK0t4+H{o%%cQI6%2vre3dO+ji+= zvo9gSo4oxVa1Qv3lrqR>vl_s4T}NyE9bg)GGzfyR^%#)6`M7YJh!+A>tJR;*&CQ8T z17NbPcaoVQPz7c-otpkXX$j4Z3qWMESs!=-c;U#ABcl&K_}~Zmd|q3YB}Yd`)$ZN9 zFG(qvfiEShSl{F>60ls?wTu=~tyXm}3=k$QOqiE zU@dwxm&;uME||HC2ZO|0(Q6y&Oi+de&L(H=*Yb?4}N|DKA za;CJt*BnymQ7;x1LY#9NPN~wDRYPFiER4S=AHjMDeDC_e)565u`f}nPz z|H6srH$C3Lxf zErGjZsqXDCEv2N@YQ1(_0f^bLNck7gOIu zbX_-kE_mLAd~QTF~*y-P5m?pP8AdBqM+jVrjEkZCVUij;>AJy}ys_-ySDH zKA%Tx-C&bj_h~U;DVji`P{8xNOdkQbKkfoj%0MaQ4+H=qgf?5<=b{N%mK6eD=_3F^ z3;>nMWZFRxtPPq07a||rzI{8s@AoqRd?UKZ=kpq9*6a1gX2Wh80BBQ*iKsC$KR?f_ zufDqF<(FTU{bYdoK7arI{c6w*m``M896fr}bzQd~{eXup%W}~09}r4Sm*->4hYZlyi%!@ z+Fj4i&dMMNG*F6|E2Sg|f_Hlvw;w(#Y}+Q2$vlu|K_sQ*kw+fUQc4{^%jEn1#XALn zx%kS&pVI>N*s)_nz+DLj{OL{s;LTWl9@06*k!DF8^%=W!_B@YgpMAD=rvUIl;_m|K zo-7q~POKK9c`q+7^UO2P1iggYGyyo3nCzH2a+@X#EMl9YuIpY&)FcB5gJ`WC;BSeS z)2;}w>onbW-+dneOifJ<+y&zMgwbl;)dv8q*tMRRm{>F^@xTGlbar8*s!Y(?(@)bv zI(rVCd^iZmWHN7?>`)IH07d5@<4RPNoH=tw0KD~9I_Ibk9y}PtOJQ@4`Esu(($i!> zo6csb0z|Xf9ER>*L0YyYT77d|?gBSBDRSEZFe&kyMyO~un?E;u@M(63qa7hVG&CgW zbc1^uKb0sDod^>`JOMnRwf_Fp)YS9+NVB6(kU2?uxz}7H)m&9;Ewt7`2=RQ%@jtQy z1^{ik!5`gG00<#;j1B$x(L>e%t)-MKEG(Sw6@dP3=A~>(sS2PRr=xqjcI{fbdiAQf zV;InHi?+hD*{oVvSm=a>En7Yt449dj84klRIs)soTCG=7=`(zS2+*MOOSI^G(33}w z91))-0K)0%>8-%M?RNXSN~wjXo_gxj`9sdn?Q^?*_CGsCUoyV9(KP@7002ovPDHLk FV1n6usQ3T? literal 0 HcmV?d00001