Add pine nut, pine nut tree, soybean, stevia, sugar, milk, soymilk, adjust recipes
76
README.md
|
@ -8,6 +8,24 @@ Extends Minetest default farming mod with new plants and crops using only minete
|
|||
|
||||
Hunger points in the description assume that you have [hbhubger](https://forum.minetest.net/viewtopic.php?t=11336) with hunger mod configured with x_farming. If not then you can consider hunger points as health points.
|
||||
|
||||
## Features
|
||||
|
||||
- adds food source to almost every biome, allows traveling the world without relying on apples only
|
||||
- block farming, instead of food items, blocks can be harvested/crafted and used for building or decoration
|
||||
- farming on different block than dirt, e.g. obsidian, jungle tree..
|
||||
- farming in dark, no need for light for farming, e.g. obsidian wart
|
||||
- vertical farming, e.g. farming cocoa on jungle tree trunk
|
||||
- new trees and wood blocks allows for tree farms
|
||||
- food items can heal or poison you
|
||||
- some food items can be placed and used as decoration
|
||||
- some food items can grow back on trees/cactus after harvesting
|
||||
- using combination of snow block and pumpik can spawn snowman mob
|
||||
- mod is lightweight and optimized for servers
|
||||
- plants and trees are spawning as decoration troughout the world (see biomes below)
|
||||
- stairs and slabs for all new blocks
|
||||
- leafdecay with falling fruit after tree trunk is harvested
|
||||
- supports hbhunger mod
|
||||
|
||||
### Empty Soup Bowl ![screenshot](textures/x_farming_bowl.png)
|
||||
|
||||
Empty soup bowl is used as a vessel for soups and stew. To craft bowl put any kind of block with group wood in the middle of the bottom row in the crafting grid and then diagonal left and right also the same block, this will give you 3 empty soup bowls.
|
||||
|
@ -41,11 +59,6 @@ To craft golden carrot put regular carrot in the middle of the crafting grid and
|
|||
|
||||
Planted coffee take 5 stages to grow. Farming coffee plants will drop coffee beans. Coffee beans cannot be eaten but are used to craft cup of coffee.
|
||||
|
||||
**Coffee Cup (cold)** ![screenshot](textures/x_farming_coffee_cup.png)
|
||||
|
||||
Drinking/eating cold cup of coffee will restore 4 hunger points and will return a empty glass.
|
||||
Cold cup of coffee can be crafted by putting empty glass to the graft grid, next to it comes coffee bean and under it will come bucket of water. Empty bucket of water will be returned.
|
||||
|
||||
**Coffee Cup (hot)** ![screenshot](textures/x_farming_coffee_cup_hot.png)
|
||||
|
||||
Drinking/eating hot cup of coffee will restore 6 hunger points, 4 health points and will return a empty glass.
|
||||
|
@ -175,16 +188,22 @@ Cactus with Fruits can be found in desert. You will need axe to harvest the frui
|
|||
|
||||
Strawberries can be found in coniferous forest. They drop seeds and strawberries.
|
||||
|
||||
### Pine Nut Tree
|
||||
|
||||
Allows to harvest pine nuts. Roasted pine nuts can be eaten.
|
||||
|
||||
## Biomes
|
||||
|
||||
**Grassland**
|
||||
|
||||
- Melon
|
||||
- Carrot
|
||||
- Soybean
|
||||
|
||||
**Coniferous Forest**
|
||||
|
||||
- Strawberry
|
||||
- Pine Nut Tree
|
||||
|
||||
**Desert**
|
||||
|
||||
|
@ -194,6 +213,7 @@ Strawberries can be found in coniferous forest. They drop seeds and strawberries
|
|||
|
||||
- Kiwi Tree
|
||||
- Coffee
|
||||
- Stevia
|
||||
|
||||
**Rainforest**
|
||||
|
||||
|
@ -213,6 +233,10 @@ Strawberries can be found in coniferous forest. They drop seeds and strawberries
|
|||
- Potato
|
||||
- Beetroot
|
||||
|
||||
**Taiga**
|
||||
|
||||
- Pine Nut Tree
|
||||
|
||||
|
||||
Seeds can be found also in dungeon chests.
|
||||
|
||||
|
@ -220,12 +244,13 @@ Seeds can be found also in dungeon chests.
|
|||
|
||||
- default
|
||||
- farming
|
||||
- vessels
|
||||
- bucket
|
||||
|
||||
## Optional Dependencies
|
||||
|
||||
- hbhunger
|
||||
- flowers
|
||||
- vessels
|
||||
- mobs_animal
|
||||
|
||||
## License:
|
||||
|
@ -334,6 +359,11 @@ GNU Lesser General Public License v2.1 or later (see included LICENSE file)
|
|||
- x_farming_jungle_tree.png (Chorus edit)
|
||||
- x_farming_jungle_tree_top.png (Chorus edit)
|
||||
- x_farming_jungle_wood.png (Chorus edit)
|
||||
- x_farming_pine_nut_leaves.png (modified by SaKeL)
|
||||
- x_farming_pine_nut_tree.png
|
||||
- x_farming_pine_nut_tree_top.png
|
||||
- x_farming_pine_nut_wood.png
|
||||
- x_farming_sugar.png
|
||||
|
||||
**LGPL-2.1-or-later, by SaKeL**
|
||||
|
||||
|
@ -370,10 +400,40 @@ GNU Lesser General Public License v2.1 or later (see included LICENSE file)
|
|||
- x_farming_strawberry_seed.png
|
||||
- x_farming_strawberry.png
|
||||
- x_farming_jungleleaves.png
|
||||
- x_farming_pine_nut.png
|
||||
- x_farming_pine_nut_roasted.png
|
||||
- x_farming_coffee_cup_hot.png
|
||||
- x_farming_bottle_coffee.png
|
||||
- x_farming_bottle_water.png
|
||||
- x_farming_bottle_soymilk_raw.png
|
||||
- x_farming_bottle_soymilk.png
|
||||
- x_farming_donut.png
|
||||
- x_farming_donut_chocolate.png
|
||||
- x_farming_soybean.png
|
||||
- x_farming_soybean_1.png
|
||||
- x_farming_soybean_2.png
|
||||
- x_farming_soybean_3.png
|
||||
- x_farming_soybean_4.png
|
||||
- x_farming_soybean_5.png
|
||||
- x_farming_soybean_6.png
|
||||
- x_farming_soybean_7.png
|
||||
- x_farming_soybean_seed.png
|
||||
- x_farming_stevia.png
|
||||
- x_farming_stevia_1.png
|
||||
- x_farming_stevia_2.png
|
||||
- x_farming_stevia_3.png
|
||||
- x_farming_stevia_4.png
|
||||
- x_farming_stevia_5.png
|
||||
- x_farming_stevia_6.png
|
||||
- x_farming_stevia_7.png
|
||||
- x_farming_stevia_8.png
|
||||
- x_farming_stevia_seed.png
|
||||
|
||||
**MIT**
|
||||
|
||||
- x_farming_kiwi_leaves.png (MTG - modified by SaKeL)
|
||||
- x_farming_junglesapling.png (MTG - modified by SaKeL)
|
||||
- x_farming_pine_nut_sapling.png (MTG - modified by SaKeL)
|
||||
|
||||
**Created by GeMinecraft and edited by TenPlus1**
|
||||
|
||||
|
@ -383,10 +443,6 @@ GNU Lesser General Public License v2.1 or later (see included LICENSE file)
|
|||
|
||||
- x_farming_chocolate.png
|
||||
|
||||
**WTFPL**
|
||||
|
||||
- x_farming_coffee_cup_hot.png
|
||||
- x_farming_coffee_cup.png
|
||||
|
||||
## Installation
|
||||
|
||||
|
|
9
api.lua
|
@ -164,3 +164,12 @@ function x_farming.grow_jungle_tree(pos)
|
|||
minetest.place_schematic({x = pos.x - 2, y = pos.y - 1, z = pos.z - 2},
|
||||
path, nil, nil, false)
|
||||
end
|
||||
|
||||
-- Pine Nut Tree
|
||||
|
||||
function x_farming.grow_pine_nut_tree(pos)
|
||||
local path = minetest.get_modpath("x_farming") ..
|
||||
"/schematics/x_farming_pine_nut_tree_from_sapling.mts"
|
||||
minetest.place_schematic({x = pos.x - 2, y = pos.y, z = pos.z - 2},
|
||||
path, "0", nil, false)
|
||||
end
|
||||
|
|
20
coffee.lua
|
@ -11,24 +11,6 @@ farming.register_plant("x_farming:coffee", {
|
|||
place_param2 = 3,
|
||||
})
|
||||
|
||||
-- cold cup of coffee
|
||||
minetest.register_node("x_farming:coffee_cup", {
|
||||
description = "Cold Cup of Coffee" .. "\n" .. minetest.colorize(x_farming.colors.brown, "Hunger: 4"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"x_farming_coffee_cup.png"},
|
||||
inventory_image = "x_farming_coffee_cup.png",
|
||||
wield_image = "x_farming_coffee_cup.png",
|
||||
paramtype = "light",
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.25, -0.5, -0.25, 0.25, 0.25, 0.25}
|
||||
},
|
||||
groups = {vessel = 1, dig_immediate = 3, attached_node = 1},
|
||||
on_use = minetest.item_eat(4, "vessels:drinking_glass"),
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
})
|
||||
|
||||
-- hot cup of coffee
|
||||
local coffee_cup_hot_desc = "Hot Cup of Coffee" .. "\n" .. minetest.colorize(x_farming.colors.brown, "Hunger: 6")
|
||||
|
||||
|
@ -49,7 +31,7 @@ minetest.register_node("x_farming:coffee_cup_hot", {
|
|||
fixed = {-0.25, -0.5, -0.25, 0.25, 0.25, 0.25}
|
||||
},
|
||||
groups = {vessel = 1, dig_immediate = 3, attached_node = 1},
|
||||
on_use = minetest.item_eat(6, "vessels:drinking_glass"),
|
||||
on_use = minetest.item_eat(6),
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
})
|
||||
|
||||
|
|
67
crafting.lua
|
@ -17,10 +17,9 @@ minetest.register_craftitem("x_farming:cookie", {
|
|||
})
|
||||
|
||||
minetest.register_craft( {
|
||||
type = "shapeless",
|
||||
output = "x_farming:cookie 8",
|
||||
recipe = {
|
||||
{"farming:wheat", "x_farming:cocoa_bean", "farming:wheat" },
|
||||
}
|
||||
recipe = {"farming:wheat", "x_farming:cocoa_bean", "farming:flour", "x_farming:bottle_soymilk", "x_farming:sugar" }
|
||||
})
|
||||
|
||||
minetest.register_craftitem("x_farming:chocolate", {
|
||||
|
@ -117,21 +116,31 @@ minetest.register_craft({
|
|||
})
|
||||
|
||||
-- Coffee
|
||||
minetest.register_craft( {
|
||||
output = "x_farming:coffee_cup",
|
||||
recipe = {
|
||||
{"vessels:drinking_glass", "x_farming:coffee","bucket:bucket_water"},
|
||||
},
|
||||
replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}}
|
||||
minetest.register_craftitem("x_farming:bottle_coffee", {
|
||||
description = "Coffee Bottle",
|
||||
tiles = {"x_farming_bottle_coffee.png"},
|
||||
inventory_image = "x_farming_bottle_coffee.png",
|
||||
wield_image = "x_farming_bottle_coffee.png",
|
||||
groups = {vessel = 1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:bottle_coffee",
|
||||
recipe = {"x_farming:coffee","x_farming:bottle_water"}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
cooktime = 5,
|
||||
cooktime = 7,
|
||||
output = "x_farming:coffee_cup_hot",
|
||||
recipe = "x_farming:coffee_cup"
|
||||
recipe = "x_farming:bottle_coffee",
|
||||
replacements = {{"x_farming:bottle_coffee", "vessels:glass_bottle"}}
|
||||
})
|
||||
|
||||
-- backwards compatibility
|
||||
minetest.register_alias("x_farming:coffee_cup", "x_farming:bottle_coffee")
|
||||
|
||||
-- Corn
|
||||
minetest.register_craftitem("x_farming:corn_pop", {
|
||||
description = "Popped corn" .. "\n" .. minetest.colorize(x_farming.colors.brown, "Hunger: 1"),
|
||||
|
@ -279,12 +288,9 @@ minetest.register_craftitem("x_farming:pumpkin_pie", {
|
|||
|
||||
-- pumpkin pie crafting recipe
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:pumpkin_pie",
|
||||
recipe = {
|
||||
{"", "", ""},
|
||||
{"x_farming:pumpkin_block", "farming:flour", ""},
|
||||
{"", "mobs:egg", ""}
|
||||
}
|
||||
recipe = {"x_farming:pumpkin_block", "farming:flour", "x_farming:bottle_soymilk", "x_farming:sugar"}
|
||||
})
|
||||
|
||||
-- pumpkin as fuel (better than cactus)
|
||||
|
@ -299,3 +305,32 @@ minetest.register_craft({
|
|||
recipe = "x_farming:pumpkin_lantern",
|
||||
burntime = 20,
|
||||
})
|
||||
|
||||
-- Bottle Water
|
||||
minetest.register_craftitem("x_farming:bottle_water", {
|
||||
description = "Water Bottle",
|
||||
tiles = {"x_farming_bottle_water.png"},
|
||||
inventory_image = "x_farming_bottle_water.png",
|
||||
wield_image = "x_farming_bottle_water.png",
|
||||
groups = {vessel = 1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:bottle_water 5",
|
||||
recipe = {"vessels:glass_bottle", "vessels:glass_bottle", "vessels:glass_bottle", "vessels:glass_bottle", "vessels:glass_bottle", "bucket:bucket_water"},
|
||||
replacements = {{"bucket:water_bucket", "bucket:bucket_empty"}},
|
||||
})
|
||||
|
||||
-- Donuts
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:donut",
|
||||
recipe = {"x_farming:bottle_soymilk", "x_farming:sugar", "farming:flour"}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:donut_chocolate",
|
||||
recipe = {"x_farming:bottle_soymilk", "x_farming:sugar", "farming:flour", "x_farming:cocoa_bean"}
|
||||
})
|
||||
|
|
8
init.lua
|
@ -15,10 +15,15 @@ dofile(path.."/beetroot.lua")
|
|||
dofile(path.."/carrot.lua")
|
||||
dofile(path.."/cocoa.lua")
|
||||
dofile(path.."/seeds.lua")
|
||||
dofile(path.."/crafting.lua")
|
||||
dofile(path.."/kiwi_tree.lua")
|
||||
dofile(path.."/cactus.lua")
|
||||
dofile(path.."/strawberry.lua")
|
||||
dofile(path.."/pine_nut.lua")
|
||||
dofile(path.."/stevia.lua")
|
||||
dofile(path.."/soybean.lua")
|
||||
dofile(path.."/nodes.lua")
|
||||
dofile(path.."/crafting.lua")
|
||||
|
||||
-- hbhunger
|
||||
if x_farming.hbhunger ~= nil then
|
||||
if hbhunger.register_food ~= nil then
|
||||
|
@ -26,6 +31,7 @@ if x_farming.hbhunger ~= nil then
|
|||
end
|
||||
end
|
||||
|
||||
-- mob
|
||||
if minetest.get_modpath("mobs_npc") then
|
||||
dofile(path.."/snow_golem.lua")
|
||||
end
|
||||
|
|
4
mod.conf
|
@ -1,4 +1,4 @@
|
|||
name = x_farming
|
||||
description = Extends Minetest farming mod with new plants and crops.
|
||||
depends = default, farming
|
||||
optional_depends = hbhunger, flowers, vessels, mobs_animal, mobs_npc, stairs
|
||||
depends = default, farming, bucket, vessels
|
||||
optional_depends = hbhunger, flowers, mobs_animal, mobs_npc, stairs
|
|
@ -0,0 +1,35 @@
|
|||
minetest.register_node("x_farming:donut", {
|
||||
description = "Donut" .. "\n" .. minetest.colorize(x_farming.colors.brown, "Hunger: 3"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"x_farming_donut.png"},
|
||||
inventory_image = "x_farming_donut.png",
|
||||
wield_image = "x_farming_donut.png",
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-7/16, -7/16, -7/16, 7/16, 7/16, 7/16}
|
||||
},
|
||||
groups = {dig_immediate = 3, attached_node = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
on_use = minetest.item_eat(3),
|
||||
})
|
||||
|
||||
minetest.register_node("x_farming:donut_chocolate", {
|
||||
description = "Chocolate Donut" .. "\n" .. minetest.colorize(x_farming.colors.brown, "Hunger: 4"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"x_farming_donut_chocolate.png"},
|
||||
inventory_image = "x_farming_donut_chocolate.png",
|
||||
wield_image = "x_farming_donut_chocolate.png",
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-7/16, -7/16, -7/16, 7/16, 7/16, 7/16}
|
||||
},
|
||||
groups = {dig_immediate = 3, attached_node = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
on_use = minetest.item_eat(4),
|
||||
})
|
|
@ -0,0 +1,225 @@
|
|||
-- decoration
|
||||
minetest.register_decoration({
|
||||
name = "x_farming:pine_nut_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"default:dirt_with_snow", "default:dirt_with_coniferous_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0.010,
|
||||
scale = 0.005,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 2,
|
||||
octaves = 3,
|
||||
persist = 0.66
|
||||
},
|
||||
biomes = {"taiga", "coniferous_forest"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("x_farming") .. "/schematics/x_farming_pine_nut_tree.mts",
|
||||
flags = "place_center_x, place_center_z"
|
||||
})
|
||||
|
||||
-- trunk
|
||||
minetest.register_node("x_farming:pine_nut_tree", {
|
||||
description = "Pine Nut Tree",
|
||||
tiles = {"x_farming_pine_nut_tree_top.png", "x_farming_pine_nut_tree_top.png", "x_farming_pine_nut_tree.png"},
|
||||
paramtype2 = "facedir",
|
||||
is_ground_content = false,
|
||||
groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
|
||||
on_place = minetest.rotate_node
|
||||
})
|
||||
|
||||
-- leaves
|
||||
minetest.register_node("x_farming:pine_nut_leaves", {
|
||||
description = "Pine Nut Needles",
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"x_farming_pine_nut_leaves.png"},
|
||||
special_tiles = {"x_farming_pine_nut_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/20 chance
|
||||
items = {"x_farming:pine_nut_sapling"},
|
||||
rarity = 20,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {"x_farming:pine_nut_leaves"},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
-- sapling
|
||||
minetest.register_node("x_farming:pine_nut_sapling", {
|
||||
description = "Pine Nut Sapling",
|
||||
drawtype = "plantlike",
|
||||
tiles = {"x_farming_pine_nut_sapling.png"},
|
||||
inventory_image = "x_farming_pine_nut_sapling.png",
|
||||
wield_image = "x_farming_pine_nut_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = x_farming.grow_pine_nut_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 16, 4 / 16}
|
||||
},
|
||||
groups = {snappy = 2, dig_immediate = 3, flammable = 3,
|
||||
attached_node = 1, sapling = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
on_construct = function(pos)
|
||||
minetest.get_node_timer(pos):start(math.random(300, 1500))
|
||||
end,
|
||||
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
itemstack = default.sapling_on_place(itemstack, placer, pointed_thing,
|
||||
"x_farming:pine_nut_sapling",
|
||||
-- minp, maxp to be checked, relative to sapling pos
|
||||
-- minp_relative.y = 1 because sapling pos has been checked
|
||||
{x = -2, y = 1, z = -2},
|
||||
{x = 2, y = 8, z = 2},
|
||||
-- maximum interval of interior volume check
|
||||
4)
|
||||
|
||||
return itemstack
|
||||
end,
|
||||
})
|
||||
|
||||
-- fruit
|
||||
minetest.register_node("x_farming:pine_nut", {
|
||||
description = "Pine Nut",
|
||||
drawtype = "plantlike",
|
||||
tiles = {"x_farming_pine_nut.png"},
|
||||
inventory_image = "x_farming_pine_nut.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
is_ground_content = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
-4 / 16,
|
||||
-5 / 16,
|
||||
-4 / 16,
|
||||
4 / 16,
|
||||
7 / 16,
|
||||
4 / 16
|
||||
}
|
||||
},
|
||||
groups = {fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 3, leafdecay_drop = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = function(pos, placer, itemstack)
|
||||
minetest.set_node(pos, {name = "x_farming:pine_nut", param2 = 1})
|
||||
end,
|
||||
|
||||
after_dig_node = function(pos, oldnode, oldmetadata, digger)
|
||||
if oldnode.param2 == 0 then
|
||||
minetest.set_node(pos, {name = "x_farming:pine_nut_mark"})
|
||||
minetest.get_node_timer(pos):start(math.random(300, 1500))
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_craftitem("x_farming:pine_nut_roasted", {
|
||||
description = "Pine Nut Roasted" .. "\n" .. minetest.colorize(x_farming.colors.brown, "Hunger: 2"),
|
||||
inventory_image = "x_farming_pine_nut_roasted.png",
|
||||
on_use = minetest.item_eat(2),
|
||||
groups = {flammable = 2},
|
||||
})
|
||||
|
||||
minetest.register_node("x_farming:pine_nut_mark", {
|
||||
description = "Pine Nut Marker",
|
||||
inventory_image = "x_farming:pine_nut.png^default_invisible_node_overlay.png",
|
||||
wield_image = "x_farming:pine_nut.png^default_invisible_node_overlay.png",
|
||||
drawtype = "airlike",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
pointable = false,
|
||||
diggable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
on_timer = function(pos, elapsed)
|
||||
if not minetest.find_node_near(pos, 1, "x_farming:pine_nut_leaves") then
|
||||
minetest.remove_node(pos)
|
||||
elseif minetest.get_node_light(pos) < 11 then
|
||||
minetest.get_node_timer(pos):start(200)
|
||||
else
|
||||
minetest.set_node(pos, {name = "x_farming:pine_nut"})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- leafdecay
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"x_farming:pine_nut_tree"},
|
||||
leaves = {"x_farming:pine_nut", "x_farming:pine_nut_leaves"},
|
||||
radius = 3,
|
||||
})
|
||||
|
||||
-- planks
|
||||
minetest.register_node("x_farming:pine_nut_wood", {
|
||||
description = "Pine Nut Wood Planks",
|
||||
paramtype2 = "facedir",
|
||||
place_param2 = 0,
|
||||
tiles = {"x_farming_pine_nut_wood.png"},
|
||||
is_ground_content = false,
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, wood = 1},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "x_farming:pine_nut_wood 4",
|
||||
recipe = {
|
||||
{"x_farming:pine_nut_tree"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "x_farming:pine_nut_wood",
|
||||
burntime = 6,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "x_farming:pine_nut_tree",
|
||||
burntime = 26,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
cooktime = 7,
|
||||
output = "x_farming:pine_nut_roasted",
|
||||
recipe = "x_farming:pine_nut"
|
||||
})
|
||||
|
||||
if minetest.global_exists("stairs") and minetest.get_modpath("stairs") then
|
||||
stairs.register_stair_and_slab(
|
||||
"pine_nut_wood",
|
||||
"x_farming:pine_nut_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
{"x_farming_pine_nut_wood.png"},
|
||||
"Pine Nut Wooden Stair",
|
||||
"Pine Nut Wooden Slab",
|
||||
default.node_sound_wood_defaults(),
|
||||
false
|
||||
)
|
||||
end
|
|
@ -9,8 +9,7 @@ hbhunger.register_food("x_farming:carrot", 3)
|
|||
hbhunger.register_food("x_farming:carrot_golden", 10, nil, nil, 10)
|
||||
|
||||
-- coffee
|
||||
hbhunger.register_food("x_farming:coffee_cup", 4, "vessels:drinking_glass")
|
||||
hbhunger.register_food("x_farming:coffee_cup_hot", 6, "vessels:drinking_glass", nil, 4)
|
||||
hbhunger.register_food("x_farming:coffee_cup_hot", 6, nil, nil, 4)
|
||||
|
||||
-- corn
|
||||
hbhunger.register_food("x_farming:corn_pop", 1)
|
||||
|
@ -43,3 +42,10 @@ hbhunger.register_food("x_farming:cactus_fruit_item", 2)
|
|||
|
||||
-- Strawberry
|
||||
hbhunger.register_food("x_farming:strawberry", 2)
|
||||
|
||||
-- Pine Nut Roasted
|
||||
hbhunger.register_food("x_farming:pine_nut_roasted", 2)
|
||||
|
||||
-- Donuts
|
||||
hbhunger.register_food("x_farming:donut", 3)
|
||||
hbhunger.register_food("x_farming:donut_chocolate", 4)
|
||||
|
|
|
@ -333,3 +333,108 @@ mts_save("x_farming_jungle_tree_with_cocoa_from_sapling", {
|
|||
{ypos = 11, prob = 127},
|
||||
},
|
||||
})
|
||||
|
||||
-- Mapgen Pine tree
|
||||
|
||||
local L = {name = "x_farming:pine_nut_leaves", prob = 255}
|
||||
local M = {name = "x_farming:pine_nut_leaves", prob = 223}
|
||||
local N = {name = "x_farming:pine_nut_leaves", prob = 191}
|
||||
local T = {name = "x_farming:pine_nut_tree", prob = 255, force_place = true}
|
||||
local B = {name = "x_farming:pine_nut_tree", prob = 255}
|
||||
local FR = {name = "x_farming:pine_nut", prob = 64}
|
||||
local S = {name = "default:snow", prob = 127}
|
||||
|
||||
mts_save("x_farming_pine_nut_tree", {
|
||||
size = {x = 5, y = 8, z = 5},
|
||||
data = {
|
||||
_, _, _, _, _,
|
||||
_, FR, FR, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
|
||||
_, _, _, _, _,
|
||||
FR, _, _, _, FR,
|
||||
L, L, L, L, L,
|
||||
_, FR, L, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, L, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
|
||||
_, _, T, _, _,
|
||||
FR, _, T, _, FR,
|
||||
L, L, T, L, L,
|
||||
_, L, T, L, _,
|
||||
_, L, T, L, _,
|
||||
_, L, T, L, _,
|
||||
_, _, L, _, _,
|
||||
_, _, N, _, _,
|
||||
|
||||
_, _, _, _, _,
|
||||
FR, _, _, _, FR,
|
||||
L, L, L, L, L,
|
||||
_, FR, L, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, L, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
|
||||
_, _, _, _, _,
|
||||
_, FR, FR, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
}
|
||||
})
|
||||
|
||||
mts_save("x_farming_pine_nut_tree_from_sapling", {
|
||||
size = {x = 5, y = 7, z = 5},
|
||||
data = {
|
||||
_, FR, FR, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
|
||||
FR, _, _, _, FR,
|
||||
L, L, L, L, L,
|
||||
_, FR, L, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, L, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
|
||||
FR, _, T, _, FR,
|
||||
L, L, T, L, L,
|
||||
_, L, T, L, _,
|
||||
_, L, T, L, _,
|
||||
_, L, T, L, _,
|
||||
_, _, L, _, _,
|
||||
_, _, N, _, _,
|
||||
|
||||
FR, _, _, _, FR,
|
||||
L, L, L, L, L,
|
||||
_, FR, L, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, L, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
|
||||
_, FR, FR, FR, _,
|
||||
_, L, L, L, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
_, _, _, _, _,
|
||||
}
|
||||
})
|
||||
|
|
BIN
screenshot.png
Before Width: | Height: | Size: 402 KiB After Width: | Height: | Size: 402 KiB |
|
@ -0,0 +1,68 @@
|
|||
-- SOYBEAN
|
||||
farming.register_plant("x_farming:soybean", {
|
||||
description = "Soybean Seed",
|
||||
paramtype2 = "meshoptions",
|
||||
inventory_image = "x_farming_soybean_seed.png",
|
||||
steps = 7,
|
||||
minlight = 13,
|
||||
maxlight = default.LIGHT_MAX,
|
||||
fertility = {"grassland"},
|
||||
groups = {flammable = 4},
|
||||
place_param2 = 3,
|
||||
})
|
||||
|
||||
minetest.register_craftitem("x_farming:bottle_soymilk", {
|
||||
description = "Soymilk Bottle",
|
||||
tiles = {"x_farming_bottle_soymilk.png"},
|
||||
inventory_image = "x_farming_bottle_soymilk.png",
|
||||
wield_image = "x_farming_bottle_soymilk.png",
|
||||
groups = {vessel = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_craftitem("x_farming:bottle_soymilk_raw", {
|
||||
description = "Raw Soymilk Bottle",
|
||||
tiles = {"x_farming_bottle_soymilk_raw.png"},
|
||||
inventory_image = "x_farming_bottle_soymilk_raw.png",
|
||||
wield_image = "x_farming_bottle_soymilk_raw.png",
|
||||
groups = {vessel = 1, dig_immediate = 3, attached_node = 1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:bottle_soymilk_raw",
|
||||
recipe = {"x_farming:soybean", "x_farming:soybean", "x_farming:soybean", "x_farming:soybean", "x_farming:soybean", "x_farming:bottle_water"}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type="cooking",
|
||||
output = "x_farming:bottle_soymilk",
|
||||
recipe = "x_farming:bottle_soymilk_raw",
|
||||
cooktime = 15,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "x_farming:soybean",
|
||||
burntime = 1,
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "x_farming:soybean_7",
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = 0.1,
|
||||
spread = {x = 50, y = 50, z = 50},
|
||||
seed = 4242,
|
||||
octaves = 3,
|
||||
persist = 0.7
|
||||
},
|
||||
biomes = {"grassland"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "x_farming:soybean_7",
|
||||
param2 = 3,
|
||||
})
|
|
@ -0,0 +1,50 @@
|
|||
-- STEVIA
|
||||
farming.register_plant("x_farming:stevia", {
|
||||
description = "Stevia Seed",
|
||||
paramtype2 = "meshoptions",
|
||||
inventory_image = "x_farming_stevia_seed.png",
|
||||
steps = 8,
|
||||
minlight = 13,
|
||||
maxlight = default.LIGHT_MAX,
|
||||
fertility = {"grassland"},
|
||||
groups = {flammable = 4},
|
||||
place_param2 = 4,
|
||||
})
|
||||
|
||||
minetest.register_craftitem("x_farming:sugar", {
|
||||
description = "Sugar",
|
||||
inventory_image = "x_farming_sugar.png",
|
||||
groups = {flammable = 1},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "x_farming:sugar",
|
||||
recipe = {"x_farming:stevia", "x_farming:stevia", "x_farming:stevia", "x_farming:stevia"}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "x_farming:stevia",
|
||||
burntime = 1,
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "x_farming:stevia_8",
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dry_dirt_with_dry_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = 0.1,
|
||||
spread = {x = 50, y = 50, z = 50},
|
||||
seed = 4242,
|
||||
octaves = 3,
|
||||
persist = 0.7
|
||||
},
|
||||
biomes = {"savanna"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "x_farming:stevia_8",
|
||||
param2 = 4,
|
||||
})
|
After Width: | Height: | Size: 321 B |
After Width: | Height: | Size: 246 B |
After Width: | Height: | Size: 240 B |
After Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 160 B |
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 255 B |
After Width: | Height: | Size: 495 B |
Before Width: | Height: | Size: 189 B After Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 212 B After Width: | Height: | Size: 197 B |
Before Width: | Height: | Size: 194 B After Width: | Height: | Size: 185 B |
After Width: | Height: | Size: 412 B |
After Width: | Height: | Size: 594 B |
After Width: | Height: | Size: 335 B |
After Width: | Height: | Size: 220 B |
After Width: | Height: | Size: 202 B |
After Width: | Height: | Size: 191 B |
After Width: | Height: | Size: 192 B |
After Width: | Height: | Size: 172 B |
After Width: | Height: | Size: 121 B |
After Width: | Height: | Size: 148 B |
After Width: | Height: | Size: 158 B |
After Width: | Height: | Size: 177 B |
After Width: | Height: | Size: 179 B |
After Width: | Height: | Size: 174 B |
After Width: | Height: | Size: 195 B |
After Width: | Height: | Size: 158 B |
After Width: | Height: | Size: 225 B |
After Width: | Height: | Size: 84 B |
After Width: | Height: | Size: 145 B |
After Width: | Height: | Size: 168 B |
After Width: | Height: | Size: 193 B |
After Width: | Height: | Size: 217 B |
After Width: | Height: | Size: 239 B |
After Width: | Height: | Size: 247 B |
After Width: | Height: | Size: 278 B |
After Width: | Height: | Size: 144 B |
After Width: | Height: | Size: 186 B |