diff options
author | tenplus1 <kinsellaja@yahoo.com> | 2015-04-19 12:42:12 +0100 |
---|---|---|
committer | tenplus1 <kinsellaja@yahoo.com> | 2015-04-19 12:42:12 +0100 |
commit | 0b3952bd3d6226f780f70a0c840e01e6363b3ee3 (patch) | |
tree | c0c7ad699cce885e602f3514ed2ab0233f65e7f5 /beanpole.lua | |
parent | 5902909121aac07b8f79de1f5d8fafd4ce51befe (diff) |
Added Green Beans and beanpoles to grow them with
Diffstat (limited to 'beanpole.lua')
-rw-r--r-- | beanpole.lua | 186 |
1 files changed, 186 insertions, 0 deletions
diff --git a/beanpole.lua b/beanpole.lua new file mode 100644 index 0000000..bd31aad --- /dev/null +++ b/beanpole.lua @@ -0,0 +1,186 @@ +--[[ + All textures by + (C) Auke Kok <sofar@foo-projects.org> + CC-BY-SA-3.0 +--]] + +minetest.register_craftitem("farming:beans", { + description = "Green Beans", + inventory_image = "farming_beans.png", + on_use = minetest.item_eat(1), + on_place = function(itemstack, placer, pointed_thing) + local nod = minetest.get_node_or_nil(pointed_thing.under) + if nod and nod.name == "farming:beanpole" then + minetest.set_node(pointed_thing.under, {name="farming:beanpole_1"}) + else + return + end + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() + end + return itemstack + end +}) + +-- Beanpole + +minetest.register_node("farming:beanpole", { + drawtype = "plantlike", + tiles = {"farming_beanpole.png"}, + inventory_image = "farming_beanpole.png", + visual_scale = 1.45, + paramtype = "light", + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beanpole'},rarity=1}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=2,not_in_creative_inventory=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), + on_place = function(itemstack, placer, pointed_thing) + local nod = minetest.get_node_or_nil(pointed_thing.under) + if nod and minetest.get_item_group(nod.name, "soil") < 2 then return end + local top = {x=pointed_thing.above.x, y=pointed_thing.above.y+1, z=pointed_thing.above.z} + nod = minetest.get_node_or_nil(top) + if nod and nod.name ~= "air" then return end + minetest.set_node(pointed_thing.above, {name="farming:beanpole"}) + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() + end + return itemstack + end +}) + +minetest.register_craft({ + output = "farming:beanpole", + recipe = { + {'', '', ''}, + {'default:stick', '', 'default:stick'}, + {'default:stick', '', 'default:stick'}, + } +}) + +-- Define Corn growth stages + +minetest.register_node("farming:beanpole_1", { + drawtype = "plantlike", + tiles = {"farming_beanpole_1.png"}, + visual_scale = 1.45, + paramtype = "light", + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beanpole'},rarity=1}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=3,not_in_creative_inventory=1,attached_node=1,growing=1}, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("farming:beanpole_2", { + drawtype = "plantlike", + tiles = {"farming_beanpole_2.png"}, + visual_scale = 1.45, + paramtype = "light", + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beanpole'},rarity=1}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=2,plant=1,not_in_creative_inventory=1,attached_node=1,growing=1}, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("farming:beanpole_3", { + drawtype = "plantlike", + tiles = {"farming_beanpole_3.png"}, + visual_scale = 1.45, + paramtype = "light", + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beanpole'},rarity=1}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=2,plant=1,not_in_creative_inventory=1,attached_node=1,growing=1}, + sounds = default.node_sound_leaves_defaults(), +}) + + +minetest.register_node("farming:beanpole_4", { + drawtype = "plantlike", + tiles = {"farming_beanpole_4.png"}, + visual_scale = 1.45, + paramtype = "light", + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beanpole'},rarity=1}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=2,plant=1,not_in_creative_inventory=1,attached_node=1,growing=1}, + sounds = default.node_sound_leaves_defaults(), +}) + +-- Last stage of Corn growth doesnnot have growing=1 so abm never has to check these + +minetest.register_node("farming:beanpole_5", { + drawtype = "plantlike", + tiles = {"farming_beanpole_5.png"}, + visual_scale = 1.45, + paramtype = "light", + waving = 1, + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beanpole'},rarity=1}, + {items = {'farming:beans 3'},rarity=1}, + {items = {'farming:beans 2'},rarity=2}, + {items = {'farming:beans 2'},rarity=3}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=2,plant=1,not_in_creative_inventory=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), +}) + +-- Wild Green Bean Bush (this is what you find on the map) + +minetest.register_node("farming:beanbush", { + drawtype = "plantlike", + tiles = {"farming_beanbush.png"}, + paramtype = "light", + waving = 1, + walkable = false, + buildable_to = true, + sunlight_propagates = true, + drop = { + items = { + {items = {'farming:beans 1'},rarity=1}, + {items = {'farming:beans 1'},rarity=2}, + {items = {'farming:beans 1'},rarity=3}, + } + }, + selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, + groups = {snappy=3,flammable=2,plant=1,not_in_creative_inventory=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), +}) |