From 228aff2c09ab80391b3355d57430554a7e85d45e Mon Sep 17 00:00:00 2001 From: HybridDog Date: Sun, 21 Apr 2013 13:45:30 +0200 Subject: [PATCH] add lava- and glowingshroom --- init.lua | 87 ++++++++++++++++++++++ textures/riesenpilz_glowshroom_bottom.png | Bin 0 -> 202 bytes textures/riesenpilz_glowshroom_side.png | Bin 0 -> 163 bytes textures/riesenpilz_glowshroom_top.png | Bin 0 -> 122 bytes textures/riesenpilz_lavashroom_bottom.png | Bin 0 -> 154 bytes textures/riesenpilz_lavashroom_side.png | Bin 0 -> 162 bytes textures/riesenpilz_lavashroom_top.png | Bin 0 -> 312 bytes 7 files changed, 87 insertions(+) create mode 100644 textures/riesenpilz_glowshroom_bottom.png create mode 100644 textures/riesenpilz_glowshroom_side.png create mode 100644 textures/riesenpilz_glowshroom_top.png create mode 100644 textures/riesenpilz_lavashroom_bottom.png create mode 100644 textures/riesenpilz_lavashroom_side.png create mode 100644 textures/riesenpilz_lavashroom_top.png diff --git a/init.lua b/init.lua index 17f2c28..ae37ac7 100644 --- a/init.lua +++ b/init.lua @@ -79,6 +79,66 @@ local function minecraft_fliegenpilz(pos) end +local function add_head_lavashroom(pos, ran) + local head = "wool:orange" + if math.random(ran) == 1 then + head = "wool:yellow" + else + head = "wool:orange" + end + minetest.env:add_node(pos, {name=head}) +end + +local function lavashroom(pos) + local height = 3+math.random(MAX_SIZE-2) + minetest.env:remove_node(pos) + + for i = 0, height, 1 do + for k = -1, 1, 2 do + minetest.env:add_node({x=pos.x+k, y=pos.y+i, z=pos.z}, {name="wool:brown"}) + minetest.env:add_node({x=pos.x, y=pos.y+i, z=pos.z+k}, {name="wool:brown"}) + end + end + + for k = -3, 3, 1 do + for l = -3, 3, 1 do + if ( k <= 1 and k >= -1 ) + or( l <= 1 and l >= -1 ) then + minetest.env:add_node({x=pos.x+k, y=pos.y+height+2, z=pos.z+l}, {name="wool:brown"}) + else + add_head_lavashroom({x=pos.x+k, y=pos.y+height+2, z=pos.z+l}, 7) + end + end + end + + for k = -2, 2, 1 do + for l = -2, 2, 1 do + minetest.env:add_node({x=pos.x+k, y=pos.y+height+1, z=pos.z+l}, {name="wool:brown"}) + end + end + + for j = 0, 1, 1 do + for k = -4, 4, 1 do + for l = -4, 4, 1 do + add_head_lavashroom({x=pos.x+k, y=pos.y+height+3+j, z=pos.z+l}, 6) + end + end + end + + for k = -3, 3, 1 do + for l = -3, 3, 1 do + add_head_lavashroom({x=pos.x+k, y=pos.y+height+5, z=pos.z+l}, 5) + end + end + + for k = -2, 2, 1 do + for l = -2, 2, 1 do + add_head_lavashroom({x=pos.x+k, y=pos.y+height+6, z=pos.z+l}, 4) + end + end +end + + --Mushroom Nodes @@ -127,9 +187,34 @@ local BOX_FLY_AGARIC = { }, } +local BOX_LAVASHROOM = { + type = "fixed", + fixed = { + {-1/16, -8/16, -1/16, 1/16, -6/16, 1/16}, + {-2/16, -6/16, -2/16, 2/16, 0, 2/16}, + {-3/16, -5/16, -3/16, 3/16, -1/16, 3/16}, + {-4/16, -4/16, -4/16, 4/16, -2/16, 4/16}, + }, +} + +local BOX_GLOWSHROOM = { + type = "fixed", + fixed = { + {-1/16, -8/16, -1/16, 1/16, -1/16, 1/16}, + {-2/16, -3/16, -2/16, 2/16, -2/16, 2/16}, + {-3/16, -5/16, -3/16, 3/16, -3/16, 3/16}, + {-3/16, -7/16, -3/16, -2/16, -5/16, -2/16}, + {3/16, -7/16, -3/16, 2/16, -5/16, -2/16}, + {-3/16, -7/16, 3/16, -2/16, -5/16, 2/16}, + {3/16, -7/16, 3/16, 2/16, -5/16, 2/16}, + }, +} + pilz("brown", "Brown Mushroom", BOX_BROWN) pilz("red", "Red Mushroom", BOX_RED) pilz("fly_agaric", "Fly Agaric", BOX_FLY_AGARIC) +pilz("lavashroom", "Lavashroom", BOX_LAVASHROOM) +pilz("glowshroom", "Glowshroom", BOX_GLOWSHROOM) @@ -181,6 +266,8 @@ minetest.register_on_punchnode(function(pos, node, puncher) minecraft_fliegenpilz(pos) elseif minetest.env:get_node(pos).name == "riesenpilz:brown" then brauner_minecraftpilz(pos) + elseif minetest.env:get_node(pos).name == "riesenpilz:lavashroom" then + lavashroom(pos) end end end) diff --git a/textures/riesenpilz_glowshroom_bottom.png b/textures/riesenpilz_glowshroom_bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..97028f85eb9183e6fda9de1c55b6ef395c56a4d2 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~n*g5>SB8*a zhS(T})@FuD{S5QxFsxh6uwyI3;r$G!jyoSY%y8q1^RXig5AHBLy61fHyz`~=&etwG zU%!%m?drsLZ@IV2@Po|pba4!kxSTBD#>{g?Sm4PsQ5UfXsm~HpAG-?)JV{7Ncf-pgRdS5F(evjJGk7K!6Kv3CBfRj!Z5XgMX+WS^9`Ur22WQ%mvv4F FO#l;>GUosQ literal 0 HcmV?d00001 diff --git a/textures/riesenpilz_glowshroom_top.png b/textures/riesenpilz_glowshroom_top.png new file mode 100644 index 0000000000000000000000000000000000000000..0bd2e5acd49c0167461207f715fc0ba73944e69e GIT binary patch literal 122 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9jKx9jP7LeL$-D$|I0Jk_Tp8ZI zihB2E;=8xs)FfGfg7Tg&jv*Y^lOtGJcp^GkV;mNla(HaiaD44$rjF6*2UngA1DA@KkJ literal 0 HcmV?d00001 diff --git a/textures/riesenpilz_lavashroom_bottom.png b/textures/riesenpilz_lavashroom_bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..d6d61a7bb7636930491157eefe144b31e6f67d91 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFn#REq zEgP%dJKu%WcQa`^8XApgu&C*&t;ucLK6Tu@Gd$4 literal 0 HcmV?d00001 diff --git a/textures/riesenpilz_lavashroom_side.png b/textures/riesenpilz_lavashroom_side.png new file mode 100644 index 0000000000000000000000000000000000000000..63cf93f908f36c849290d29d0a5535a4b7fad368 GIT binary patch literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFbYIB zl$SS4LgHN#!;4)1|5J?rUp1VwDefRhbxDw4FoVOh8)-m}o~Mgr2*>s0gavXOysa13 zq#a{SaGSBwQ)@=zo17e;v<;G)>JB2DT8^cLS_;Mt7ou3Eb7W>F0(CNYy85}Sb4q9e E02tpd;Q#;t literal 0 HcmV?d00001 diff --git a/textures/riesenpilz_lavashroom_top.png b/textures/riesenpilz_lavashroom_top.png new file mode 100644 index 0000000000000000000000000000000000000000..039d48888f5f8184963c4deb3b7c59cf8e5baabc GIT binary patch literal 312 zcmV-80muG{P)Px#jZjQfMW;?U#83dyRshOgMC@Sz?O_1_ZUFyp0RMsj|A=G%i)H(gGX0V={*yBQ zlr#U8Gyj`4|C~1emu=6jC;y)||DZS0uqf2ADF354|E4+rr#aiVD*v)Q|Fk~;wm$#3 zKmWNu>clPoy+QxJLI1x&|IJ4K&PV;zF#gmq|JpMD+%o^@HUI85|NlP!|36a%^=SYA z09i>yK~xyiV-P|E4CD%^Dsd_($jiY6xYRgQl=XCF;Q|seGVD@PlKgN1K{jnZRt;7r zBmq%YRt*+rWC30c4IYGmfR2c|IuExrTtHJxQJhgsn1LdvBLM(5aT5?Px!mCZ0000< KMNUMnLSTaSB!y!D literal 0 HcmV?d00001