Add pine nut, pine nut tree, soybean, stevia, sugar, milk, soymilk, adjust recipes

master
Juraj Vajda 2021-03-28 13:31:29 -04:00
parent e3820d6c4d
commit b628011880
53 changed files with 627 additions and 50 deletions

View File

@ -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

View File

@ -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

View File

@ -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(),
})

View File

@ -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"}
})

View File

@ -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

View File

@ -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

35
nodes.lua Normal file
View File

@ -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),
})

225
pine_nut.lua Normal file
View File

@ -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

View File

@ -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)

View File

@ -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, _,
_, _, _, _, _,
_, _, _, _, _,
_, _, _, _, _,
_, _, _, _, _,
_, _, _, _, _,
}
})

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 402 KiB

After

Width:  |  Height:  |  Size: 402 KiB

68
soybean.lua Normal file
View File

@ -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,
})

50
stevia.lua Normal file
View File

@ -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,
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 189 B

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 212 B

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 194 B

After

Width:  |  Height:  |  Size: 185 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 594 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 191 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 B