diff --git a/mods/mcl_flowers/textures/flowers_pot_inventory.png b/mods/flowerpots/textures/mcl_flowerpots_flowerpot_inventory.png similarity index 100% rename from mods/mcl_flowers/textures/flowers_pot_inventory.png rename to mods/flowerpots/textures/mcl_flowerpots_flowerpot_inventory.png diff --git a/mods/mcl_flowerpots/credits.txt b/mods/mcl_flowerpots/credits.txt new file mode 100644 index 000000000..88393eaac --- /dev/null +++ b/mods/mcl_flowerpots/credits.txt @@ -0,0 +1,5 @@ +All models are made by tobyplowy(aka toby109tt) and code is by D00med and tobyplowy (aka toby109tt), modified by Wuzzy. +Textures come from the Faithful 1.11 Minecraft resource pack (by Vattic, xMrVizzy and many others). +The cactus flower pot textures were manually created by Wuzzy, based on Faithful 1.11. + +Please give credit if used! diff --git a/mods/mcl_flowerpots/depends.txt b/mods/mcl_flowerpots/depends.txt new file mode 100644 index 000000000..442501faa --- /dev/null +++ b/mods/mcl_flowerpots/depends.txt @@ -0,0 +1,3 @@ +mcl_core +mcl_farming +mcl_flowers diff --git a/mods/mcl_flowerpots/init.lua b/mods/mcl_flowerpots/init.lua new file mode 100644 index 000000000..bddbcbe36 --- /dev/null +++ b/mods/mcl_flowerpots/init.lua @@ -0,0 +1,3 @@ +local path = minetest.get_modpath("mcl_flowerpots") + +dofile(path.."/nodes.lua") diff --git a/mods/mcl_flowerpots/license.txt b/mods/mcl_flowerpots/license.txt new file mode 100644 index 000000000..cd80afbab --- /dev/null +++ b/mods/mcl_flowerpots/license.txt @@ -0,0 +1,30 @@ +License for code +---------------- +Copyright (C) 2017 D00Med and toby109tt(aka tobyplowy) + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU Lesser General Public License as published by +the Free Software Foundation; either version 2.1 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +License for models +--------------------------------------- +All models are made by tobyplowy (aka toby109tt). + +Licenes: CC BY-SA 3.0 Unported + +License for textures +--------------------------------------- +Textures come from the Faithful 1.11 Minecraft resource pack (by Vattic, xMrVizzy and many others). +The cactus flower pot textures were partially created by Wuzzy, based on Faithful 1.11. + +License: MIT License diff --git a/mods/mcl_flowerpots/models/flowerpot.obj b/mods/mcl_flowerpots/models/flowerpot.obj new file mode 100644 index 000000000..5921a5b9f --- /dev/null +++ b/mods/mcl_flowerpots/models/flowerpot.obj @@ -0,0 +1,74 @@ +# Blender v2.72 (sub 0) OBJ File: 'flowerpot.blend' +# www.blender.org +mtllib flowerpot.mtl +o Cube_Cube.001 +v -0.376261 -1.015969 0.376261 +v -0.376261 -0.263447 0.376261 +v -0.376261 -1.015969 -0.376261 +v -0.376261 -0.263447 -0.376261 +v 0.376261 -1.015969 0.376261 +v 0.376261 -0.263447 0.376261 +v 0.376261 -1.015969 -0.376261 +v 0.376261 -0.263447 -0.376261 +v -0.250727 -0.559166 0.250727 +v -0.250727 -0.263549 0.250727 +v -0.250727 -0.559166 -0.250727 +v -0.250727 -0.263549 -0.250727 +v 0.250727 -0.559166 0.250727 +v 0.250727 -0.263549 0.250727 +v 0.250727 -0.559166 -0.250727 +v 0.250727 -0.263549 -0.250727 +v 0.678334 1.490754 0.678334 +v 0.678334 -0.569152 0.678334 +v -0.678334 1.490754 -0.678334 +v -0.678334 -0.569152 -0.678334 +v -0.678334 1.490754 0.678334 +v -0.678334 -0.569152 0.678334 +v 0.678334 1.490754 -0.678334 +v 0.678334 -0.569152 -0.678334 +vt 0.562500 0.187500 +vt 0.562500 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.187500 +vt 0.187500 0.375000 +vt 0.187500 0.187500 +vt 0.000000 0.375000 +vt 0.000000 0.187500 +vt 0.750000 0.187500 +vt 0.750000 0.375000 +vt 0.687500 0.000000 +vt 0.875000 0.000000 +vt 0.875000 0.187500 +vt 0.687500 0.187500 +vt 0.500000 0.000000 +vt 0.500000 0.187500 +vt 0.375000 0.000000 +vt 0.250000 0.000000 +vt 0.250000 0.062500 +vt 0.375000 0.062500 +vt 0.125000 0.000000 +vt 0.125000 0.062500 +vt 0.000000 0.000000 +vt 0.000000 0.062500 +vt 0.500000 0.062500 +vt 0.125000 0.187500 +vt 0.250000 0.187500 +vt 0.000000 1.000000 +vt 0.500000 1.000000 +vt 0.500000 0.500000 +vt 0.000000 0.500000 +usemtl None +s off +f 1/1 2/2 4/3 3/4 +f 3/4 4/3 8/5 7/6 +f 7/6 8/5 6/7 5/8 +f 5/9 6/10 2/2 1/1 +f 3/11 7/12 5/13 1/14 +f 8/15 4/11 2/14 6/16 +f 9/17 11/18 12/19 10/20 +f 11/18 15/21 16/22 12/19 +f 15/21 13/23 14/24 16/22 +f 13/15 9/17 10/20 14/25 +f 11/22 9/26 13/27 15/19 +f 17/28 19/29 20/30 18/31 +f 21/28 23/29 24/30 22/31 diff --git a/mods/mcl_flowerpots/models/flowerpot_with_Xflower.obj b/mods/mcl_flowerpots/models/flowerpot_with_Xflower.obj new file mode 100644 index 000000000..d2127236c --- /dev/null +++ b/mods/mcl_flowerpots/models/flowerpot_with_Xflower.obj @@ -0,0 +1,90 @@ +# Blender v2.78 (sub 0) OBJ File: '' +# www.blender.org +mtllib flowerpot_with_Xflower.mtl +o Cube_Cube.001 +v -0.376017 -1.015283 0.376017 +v -0.376017 -0.263249 0.376017 +v -0.376017 -0.263249 -0.376017 +v -0.376017 -1.015283 -0.376017 +v 0.376017 -0.263249 -0.376017 +v 0.376017 -1.015283 -0.376017 +v 0.376017 -0.263249 0.376017 +v 0.376017 -1.015283 0.376017 +v -0.250565 -0.558776 0.250565 +v -0.250565 -0.558776 -0.250565 +v -0.250565 -0.263350 -0.250565 +v -0.250565 -0.263350 0.250565 +v 0.250565 -0.558776 -0.250565 +v 0.250565 -0.263350 -0.250565 +v 0.250565 -0.558776 0.250565 +v 0.250565 -0.263350 0.250565 +v -0.677552 -0.564356 0.677766 +v -0.677552 1.848188 0.677767 +v 0.677280 -0.564356 -0.677066 +v 0.677280 1.848188 -0.677066 +v 0.677280 -0.564356 0.677767 +v 0.677280 1.848188 0.677767 +v -0.677552 -0.564356 -0.677066 +v -0.677552 1.848188 -0.677066 +vt 1.0000 0.0000 +vt 1.0000 0.6250 +vt 0.5000 0.6250 +vt 0.5000 -0.0000 +vt 1.0000 0.0000 +vt 1.0000 0.6250 +vt 0.5000 0.6250 +vt 0.5000 -0.0000 +vt 0.5625 0.6250 +vt 0.5625 0.8125 +vt 0.3750 0.8125 +vt 0.3750 0.6250 +vt 0.1875 0.8125 +vt 0.1875 0.6250 +vt -0.0000 0.8125 +vt 0.0000 0.6250 +vt 0.7500 0.6250 +vt 0.7500 0.8125 +vt 0.3750 0.8125 +vt 0.5625 0.8125 +vt 0.5625 1.0000 +vt 0.3750 1.0000 +vt 0.3750 1.0000 +vt 0.1875 1.0000 +vt 0.3750 0.4375 +vt 0.2500 0.4375 +vt 0.2500 0.5000 +vt 0.3750 0.5000 +vt 0.1250 0.4375 +vt 0.1250 0.5000 +vt -0.0000 0.4375 +vt -0.0000 0.5000 +vt 0.5000 0.4375 +vt 0.5000 0.5000 +vt 0.1250 0.5000 +vt 0.1250 0.6250 +vt 0.2500 0.6250 +vt 0.2500 0.5000 +vn -0.7071 0.0000 -0.7071 +vn -0.7071 0.0000 0.7071 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 1.0000 0.0000 +usemtl None +s off +f 17/1/1 18/2/1 20/3/1 19/4/1 +f 21/5/2 22/6/2 24/7/2 23/8/2 +s 1 +f 1/9/3 2/10/3 3/11/3 4/12/3 +f 4/12/4 3/11/4 5/13/4 6/14/4 +f 6/14/5 5/13/5 7/15/5 8/16/5 +f 8/17/6 7/18/6 2/10/6 1/9/6 +f 4/19/7 6/20/7 8/21/7 1/22/7 +f 5/13/8 3/11/8 2/23/8 7/24/8 +f 9/25/5 10/26/5 11/27/5 12/28/5 +f 10/26/6 13/29/6 14/30/6 11/27/6 +f 13/29/3 15/31/3 16/32/3 14/30/3 +f 15/33/4 9/25/4 12/28/4 16/34/4 +f 10/35/8 9/36/8 15/37/8 13/38/8 diff --git a/mods/mcl_flowerpots/models/flowerpot_with_long_cube.obj b/mods/mcl_flowerpots/models/flowerpot_with_long_cube.obj new file mode 100644 index 000000000..0b7f58da1 --- /dev/null +++ b/mods/mcl_flowerpots/models/flowerpot_with_long_cube.obj @@ -0,0 +1,150 @@ +# Blender v2.78 (sub 0) OBJ File: '' +# www.blender.org +mtllib flowerpot_with_long_cube.mtl +o Cube_Cube.001 +v 0.256212 -0.267479 0.256212 +v 0.256212 1.081644 0.256212 +v 0.256212 -0.267479 -0.256212 +v 0.256212 1.081644 -0.256212 +v -0.256212 -0.267479 -0.256212 +v -0.256212 1.081644 -0.256212 +v -0.256212 1.081644 0.256212 +v -0.256212 -0.267479 0.256212 +v -0.376017 -1.015283 0.376017 +v -0.376017 -0.263249 0.376017 +v -0.376017 -0.263249 -0.376017 +v -0.376017 -1.015283 -0.376017 +v 0.376017 -0.263249 -0.376017 +v 0.376017 -1.015283 -0.376017 +v 0.376017 -0.263249 0.376017 +v 0.376017 -1.015283 0.376017 +v -0.250565 -0.558776 0.250565 +v -0.250565 -0.558776 -0.250565 +v -0.250565 -0.263350 -0.250565 +v -0.250565 -0.263350 0.250565 +v 0.250565 -0.558776 -0.250565 +v 0.250565 -0.263350 -0.250565 +v 0.250565 -0.558776 0.250565 +v 0.250565 -0.263350 0.250565 +v 0.685750 -0.738264 0.685751 +v 0.685751 1.201331 0.685750 +v -0.685750 -0.738264 -0.685750 +v -0.685750 1.201331 -0.685751 +v -0.685750 -0.738264 0.685750 +v -0.685750 1.201331 0.685751 +v 0.685751 -0.738264 -0.685751 +v 0.685751 1.201331 -0.685750 +v 0.130337 -0.351889 0.130337 +v 0.130337 0.272653 0.130337 +v 0.130337 -0.351888 -0.130337 +v 0.130337 0.272653 -0.130337 +v -0.130337 -0.351888 -0.130337 +v -0.130337 0.272653 -0.130337 +v -0.130337 0.272653 0.130337 +v -0.130337 -0.351889 0.130337 +vt 1.0000 0.0000 +vt 1.0000 0.5000 +vt 0.5000 0.5000 +vt 0.5000 0.0000 +vt 1.0000 0.0000 +vt 1.0000 0.5000 +vt 0.5000 0.5000 +vt 0.5000 0.0000 +vt 0.2500 0.0000 +vt 0.2500 0.3125 +vt 0.1250 0.3125 +vt 0.1250 -0.0000 +vt 0.3750 0.0000 +vt 0.3750 0.3125 +vt 0.5625 0.6250 +vt 0.5625 0.8125 +vt 0.3750 0.8125 +vt 0.3750 0.6250 +vt 0.1875 0.8125 +vt 0.1875 0.6250 +vt -0.0000 0.8125 +vt 0.0000 0.6250 +vt 0.7500 0.6250 +vt 0.7500 0.8125 +vt 0.3750 0.8125 +vt 0.5625 0.8125 +vt 0.5625 1.0000 +vt 0.3750 1.0000 +vt 0.3750 1.0000 +vt 0.1875 1.0000 +vt 0.3750 0.4375 +vt 0.2500 0.4375 +vt 0.2500 0.5000 +vt 0.3750 0.5000 +vt 0.1250 0.4375 +vt 0.1250 0.5000 +vt -0.0000 0.4375 +vt -0.0000 0.5000 +vt 0.5000 0.4375 +vt 0.5000 0.5000 +vt 0.1250 0.5000 +vt 0.1250 0.6250 +vt 0.2500 0.6250 +vt 0.2500 0.5000 +vt 0.0000 0.3125 +vt -0.0000 -0.0000 +vt 0.5000 -0.0000 +vt 0.5000 0.3125 +vt 0.2500 0.3125 +vt 0.3750 0.3125 +vt 0.3750 0.4375 +vt 0.2500 0.4375 +vt 0.2500 0.4375 +vt 0.1250 0.4375 +vt 0.8750 0.6250 +vt 0.8750 0.7188 +vt 0.8125 0.7188 +vt 0.8125 0.6250 +vt 0.9375 0.6250 +vt 0.9375 0.7188 +vt 0.7500 0.7188 +vt 0.7500 0.6250 +vt 1.0000 0.6250 +vt 1.0000 0.7188 +vt 0.8750 0.7188 +vt 0.9375 0.7188 +vt 0.9375 0.7812 +vt 0.8750 0.7812 +vt 0.8750 0.7812 +vt 0.8125 0.7812 +vn -0.7071 0.0000 0.7071 +vn -0.7071 0.0000 -0.7071 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 1.0000 0.0000 +usemtl None +s off +f 25/1/1 26/2/1 28/3/1 27/4/1 +f 29/5/2 30/6/2 32/7/2 31/8/2 +s 1 +f 5/9/3 6/10/3 4/11/3 3/12/3 +f 8/13/4 7/14/4 6/10/4 5/9/4 +f 9/15/4 10/16/4 11/17/4 12/18/4 +f 12/18/3 11/17/3 13/19/3 14/20/3 +f 14/20/5 13/19/5 15/21/5 16/22/5 +f 16/23/6 15/24/6 10/16/6 9/15/6 +f 12/25/7 14/26/7 16/27/7 9/28/7 +f 13/19/8 11/17/8 10/29/8 15/30/8 +f 17/31/5 18/32/5 19/33/5 20/34/5 +f 18/32/6 21/35/6 22/36/6 19/33/6 +f 21/35/4 23/37/4 24/38/4 22/36/4 +f 23/39/3 17/31/3 20/34/3 24/40/3 +f 18/41/8 17/42/8 23/43/8 21/44/8 +f 3/12/5 4/11/5 2/45/5 1/46/5 +f 1/47/6 2/48/6 7/14/6 8/13/6 +f 5/49/7 3/50/7 1/51/7 8/52/7 +f 4/11/8 6/10/8 7/53/8 2/54/8 +f 37/55/3 38/56/3 36/57/3 35/58/3 +f 40/59/4 39/60/4 38/56/4 37/55/4 +f 35/58/5 36/57/5 34/61/5 33/62/5 +f 33/63/6 34/64/6 39/60/6 40/59/6 +f 37/65/7 35/66/7 33/67/7 40/68/7 +f 36/57/8 38/56/8 39/69/8 34/70/8 diff --git a/mods/mcl_flowerpots/nodes.lua b/mods/mcl_flowerpots/nodes.lua new file mode 100644 index 000000000..337d35631 --- /dev/null +++ b/mods/mcl_flowerpots/nodes.lua @@ -0,0 +1,145 @@ + +local flowers = { + {"dandelion", "mcl_flowers:dandelion", "Dandelion Flower Pot"}, + {"poppy", "mcl_flowers:poppy", "Poppy Floer Pot"}, + {"blue_orchid", "mcl_flowers:blue_orchid", "Blue Orchid Flower Pot"}, + {"allium", "mcl_flowers:allium", "Allium Flower Pot"}, + {"azure_bluet", "mcl_flowers:azure_bluet", "Azure Bluet Flower Pot"}, + {"tulip_red", "mcl_flowers:tulip_red", "Red Tulip Flower Pot"}, + {"tulip_pink", "mcl_flowers:tulip_pink", "Pink Tulip Flower Pot"}, + {"tulip_white", "mcl_flowers:tulip_white", "White Tulip Flower Pot"}, + {"tulip_orange", "mcl_flowers:tulip_orange", "Orange Tulip Flower Pot"}, + {"oxeye_daisy", "mcl_flowers:oxeye_daisy", "Oxeye Daisy Flower Pot"}, + {"mushroom_brown", "mcl_farming:mushroom_brown", "Brown Mushroom Flower Pot"}, + {"mushroom_red", "mcl_farming:mushroom_red", "Red Mushroom Flower Pot"}, + {"dry_shrub", "mcl_core:dry_shrub", "Dead Bush Flower Pot"}, + {"sapling", "mcl_core:sapling", "Oak Sapling Flower Pot"}, + {"acaciasapling", "mcl_core:acaciasapling", "Acacia Sapling Flower Pot"}, + {"junglesapling", "mcl_core:junglesapling", "Jungle Sapling Flower Pot"}, + {"darksapling", "mcl_core:darksapling", "Dark Oak Sapling Flower Pot"}, + {"sprucesapling", "mcl_core:sprucesapling", "Spruce Sapling Flower Pot"}, + {"birchsapling", "mcl_core:birchsapling", "Birch Sapling Flower Pot"}, + {"dry_shrub", "mcl_core:dry_shrub", "Dead Bush Flower Pot"}, + {"fern", "mcl_flowers:fern", "Fern Flower Pot"}, +} + +local cubes = { + {"cactus", "mcl_core:cactus", "Cactus Flower Pot"}, +} + +minetest.register_node("mcl_flowerpots:flower_pot", { + description = "Flower Pot", + drawtype = "mesh", + mesh = "flowerpot.obj", + tiles = { + "mcl_flowerpots_flowerpot.png", + }, + visual_scale = 0.5, + wield_image = "mcl_flowerpots_flowerpot_inventory.png", + wield_scale = {x=1.0, y=1.0, z=1.0}, + paramtype = "light", + selection_box = { + type = "fixed", + fixed = {-0.2, -0.5, -0.2, 0.2, -0.1, 0.2} + }, + collision_box = { + type = "fixed", + fixed = {-0.2, -0.5, -0.2, 0.2, -0.1, 0.2} + }, + inventory_image = "mcl_flowerpots_flowerpot_inventory.png", + groups = {dig_immediate=3,deco_block=1}, + sounds = mcl_core.node_sound_stone_defaults(), + on_rightclick = function(pos, node, clicker, itemstack) + local item = clicker:get_wielded_item():get_name() + for _, row in ipairs(flowers) do + local flower = row[1] + local flower_node = row[2] + if item == flower_node then + minetest.set_node(pos, {name="mcl_flowerpots:flower_pot_"..flower}) + itemstack:take_item() + end + end + for _, row in ipairs(cubes) do + local flower = row[1] + local flower_node = row[2] + if item == flower_node then + minetest.set_node(pos, {name="mcl_flowerpots:flower_pot_"..flower}) + itemstack:take_item() + end + end + end, +}) + +minetest.register_craft({ + output = 'mcl_flowerpots:flower_pot', + recipe = { + {'mcl_core:brick', '', 'mcl_core:brick'}, + {'', 'mcl_core:brick', ''}, + {'', '', ''}, + } +}) + +for _, row in ipairs(flowers) do +local flower = row[1] +local flower_node = row[2] +local desc = row[3] +local texture = minetest.registered_nodes[flower_node]["tiles"] +minetest.register_node("mcl_flowerpots:flower_pot_"..flower, { + description = desc, + drawtype = "mesh", + mesh = "flowerpot.obj", + tiles = { + "[combine:64x64:0,0=mcl_flowerpots_flowerpot.png:0,0="..texture[1], + }, + visual_scale = 0.5, + wield_scale = {x=1.0, y=1.0, z=1.0}, + paramtype = "light", + selection_box = { + type = "fixed", + fixed = {-0.2, -0.5, -0.2, 0.2, -0.1, 0.2} + }, + collision_box = { + type = "fixed", + fixed = {-0.2, -0.5, -0.2, 0.2, -0.1, 0.2} + }, + groups = {dig_immediate=3, not_in_creative_inventory=1}, + sounds = mcl_core.node_sound_stone_defaults(), + on_rightclick = function(pos, item, clicker) + minetest.add_item({x=pos.x, y=pos.y+0.5, z=pos.z}, flower_node) + minetest.set_node(pos, {name="mcl_flowerpots:flower_pot"}) + end, + drop = "mcl_flowerpots:flower_pot", +}) +end + +for _, row in ipairs(cubes) do +local flower = row[1] +local flower_node = row[2] +local desc = row[3] +minetest.register_node("mcl_flowerpots:flower_pot_"..flower, { + description = desc, + drawtype = "mesh", + mesh = "flowerpot_with_long_cube.obj", + tiles = { + "mcl_flowerpots_"..flower..".png", + }, + visual_scale = 0.5, + wield_scale = {x=1.0, y=1.0, z=1.0}, + paramtype = "light", + selection_box = { + type = "fixed", + fixed = {-0.2, -0.5, -0.2, 0.2, -0.1, 0.2} + }, + collision_box = { + type = "fixed", + fixed = {-0.2, -0.5, -0.2, 0.2, -0.1, 0.2} + }, + groups = {dig_immediate=3, not_in_creative_inventory=1}, + sounds = mcl_core.node_sound_stone_defaults(), + on_rightclick = function(pos, item, clicker) + minetest.add_item({x=pos.x, y=pos.y+0.5, z=pos.z}, flower_node) + minetest.set_node(pos, {name="mcl_flowerpots:flower_pot"}) + end, + drop = "mcl_flowerpots:flower_pot", +}) +end diff --git a/mods/mcl_flowerpots/textures/mcl_flowerpots_cactus.png b/mods/mcl_flowerpots/textures/mcl_flowerpots_cactus.png new file mode 100644 index 000000000..f524ba379 Binary files /dev/null and b/mods/mcl_flowerpots/textures/mcl_flowerpots_cactus.png differ diff --git a/mods/mcl_flowerpots/textures/mcl_flowerpots_flowerpot.png b/mods/mcl_flowerpots/textures/mcl_flowerpots_flowerpot.png new file mode 100644 index 000000000..3e01d39e4 Binary files /dev/null and b/mods/mcl_flowerpots/textures/mcl_flowerpots_flowerpot.png differ diff --git a/mods/mcl_flowerpots/textures/mcl_flowerpots_flowerpot_inventory.png b/mods/mcl_flowerpots/textures/mcl_flowerpots_flowerpot_inventory.png new file mode 100644 index 000000000..bbbf2a1bf Binary files /dev/null and b/mods/mcl_flowerpots/textures/mcl_flowerpots_flowerpot_inventory.png differ