Compare commits

...

18 Commits

Author SHA1 Message Date
9fa818c1aa Merge remote-tracking branch 'upstream/master' 2021-04-04 20:57:42 +02:00
113fac2647 added soy sauce 2021-04-03 11:02:36 +01:00
06a92e93c0 rename textures, fix alpha texture warning 2021-04-02 19:51:10 +01:00
81293a2f94 added onigiri and gyoza to food items 2021-03-27 11:39:21 +00:00
13df43deeb Merge remote-tracking branch 'upstream/master' 2021-03-25 21:38:38 +01:00
ea59a8acdb fix replacement for cucina veganas soy bucket 2021-03-25 20:27:10 +00:00
2c758348e3 cornstarch added to gelatin group 2021-03-18 08:46:41 +00:00
c75be65326 fix flan recipe 2021-03-17 21:03:37 +00:00
e0340ce2cf Merge remote-tracking branch 'upstream/master' 2021-03-12 12:19:42 +01:00
584ab76fb5 add vegan cheese and recipe 2021-03-11 12:07:53 +00:00
47985d7dd2 add parsley, artichoke and new foods 2021-03-11 09:49:52 +00:00
cd30901b68 normal/dry soil turns into correct base when no water nearby 2021-02-24 16:47:12 +00:00
8f2c41abe9 Merge remote-tracking branch 'upstream/master' 2021-02-23 21:15:00 +01:00
675b30dc76 fix string translation 2021-02-21 08:26:42 +00:00
7a99786e6d remove mobs_animal check for certain recipes to be used with other mods 2021-02-19 12:12:13 +00:00
3cbc4fe48e added salt crystal and recipes (thanks gorlock) 2021-02-17 10:14:20 +00:00
59743d747f Merge remote-tracking branch 'upstream/master' 2021-02-07 13:06:50 +01:00
79035d0473 added extra compatibility for crops spawning on older v6 maps 2021-01-31 10:14:19 +00:00
37 changed files with 632 additions and 162 deletions

View File

@ -13,7 +13,7 @@ This mod works by adding your new plant to the {growing=1} group and numbering t
### Changelog: ### Changelog:
- 1.46 - Added min/max default light settings, added lettuce and blackberries with food items (thanks OgelGames), added soya and vanilla (thanks Felfa), added tofu - 1.46 - Added min/max default light settings, added lettuce and blackberries with food items (thanks OgelGames), added soya and vanilla (thanks Felfa), added tofu, added salt crystals (thanks gorlock)
- 1.45 - Dirt and Hoes are more in line with default by using dry/wet/base, added cactus juice, added pasta, spaghetti, cabbage, korean bibimbap, code tidy - 1.45 - Dirt and Hoes are more in line with default by using dry/wet/base, added cactus juice, added pasta, spaghetti, cabbage, korean bibimbap, code tidy
options, onion soup added (thanks edcrypt), Added apple pie, added wild cotton to savanna options, onion soup added (thanks edcrypt), Added apple pie, added wild cotton to savanna
- 1.44 - Added 'farming_stage_length' in mod settings for speed of crop growth, also thanks to TheDarkTiger for translation updates - 1.44 - Added 'farming_stage_length' in mod settings for speed of crop growth, also thanks to TheDarkTiger for translation updates

View File

@ -33,9 +33,9 @@ else
minetest.register_node(":ethereal:banana", { minetest.register_node(":ethereal:banana", {
description = S("Banana"), description = S("Banana"),
drawtype = "torchlike", drawtype = "torchlike",
tiles = {"banana_single.png"}, tiles = {"farming_banana_single.png"},
inventory_image = "banana_single.png", inventory_image = "farming_banana_single.png",
wield_image = "banana_single.png", wield_image = "farming_banana_single.png",
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
walkable = false, walkable = false,
@ -50,9 +50,9 @@ else
minetest.register_node(":ethereal:bananaleaves", { minetest.register_node(":ethereal:bananaleaves", {
description = S("Banana Leaves"), description = S("Banana Leaves"),
tiles = {"banana_leaf.png"}, tiles = {"farming_banana_leaf.png"},
inventory_image = "banana_leaf.png", inventory_image = "farming_banana_leaf.png",
wield_image = "banana_leaf.png", wield_image = "farming_banana_leaf.png",
paramtype = "light", paramtype = "light",
waving = 1, waving = 1,
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2}, groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
@ -148,8 +148,8 @@ if eth then
else else
minetest.register_craftitem(":ethereal:strawberry", { minetest.register_craftitem(":ethereal:strawberry", {
description = S("Strawberry"), description = S("Strawberry"),
inventory_image = "strawberry.png", inventory_image = "farming_strawberry.png",
wield_image = "strawberry.png", wield_image = "farming_strawberry.png",
groups = {food_strawberry = 1, flammable = 2}, groups = {food_strawberry = 1, flammable = 2},
on_use = minetest.item_eat(1) on_use = minetest.item_eat(1)
}) })

64
crops/artichoke.lua Normal file
View File

@ -0,0 +1,64 @@
local S = farming.intllib
-- item definition
minetest.register_craftitem("farming:artichoke", {
description = S("Artichoke"),
inventory_image = "farming_artichoke.png",
groups = {seed = 2, food_artichoke = 1, flammable = 2},
on_place = function(itemstack, placer, pointed_thing)
return farming.place_seed(itemstack, placer, pointed_thing, "farming:artichoke_1")
end,
on_use = minetest.item_eat(4)
})
-- crop definition
local def = {
drawtype = "plantlike",
tiles = {"farming_artichoke_1.png"},
paramtype = "light",
sunlight_propagates = true,
walkable = false,
buildable_to = true,
drop = "",
selection_box = farming.select,
groups = {
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
not_in_creative_inventory = 1, growing = 1
},
sounds = default.node_sound_leaves_defaults()
}
-- stage 1
minetest.register_node("farming:artichoke_1", table.copy(def))
-- stage 2
def.tiles = {"farming_artichoke_2.png"}
minetest.register_node("farming:artichoke_2", table.copy(def))
-- stage 3
def.tiles = {"farming_artichoke_3.png"}
minetest.register_node("farming:artichoke_3", table.copy(def))
-- stage 4
def.tiles = {"farming_artichoke_4.png"}
minetest.register_node("farming:artichoke_4", table.copy(def))
-- stage 5 (final)
def.tiles = {"farming_artichoke_5.png"}
def.groups.growing = nil
def.drop = {
items = {
{items = {"farming:artichoke 2"}, rarity = 1},
{items = {"farming:artichoke"}, rarity = 2}
}
}
minetest.register_node("farming:artichoke_5", table.copy(def))
-- add to registered_plants
farming.registered_plants["farming:artichoke"] = {
crop = "farming:artichoke",
seed = "farming:artichoke",
minlight = 13,
maxlight = 15,
steps = 5
}

View File

@ -36,7 +36,7 @@ minetest.register_craft({
minetest.register_craftitem("farming:cornstarch", { minetest.register_craftitem("farming:cornstarch", {
description = S("Cornstarch"), description = S("Cornstarch"),
inventory_image = "farming_cornstarch.png", inventory_image = "farming_cornstarch.png",
groups = {food_cornstarch = 1, flammable = 2} groups = {food_cornstarch = 1, food_gelatin = 1, food_flammable = 2}
}) })
minetest.register_craft({ minetest.register_craft({

View File

@ -46,6 +46,7 @@ minetest.register_node("farming:garlic_braid", {
inventory_image = "crops_garlic_braid.png", inventory_image = "crops_garlic_braid.png",
wield_image = "crops_garlic_braid.png", wield_image = "crops_garlic_braid.png",
drawtype = "nodebox", drawtype = "nodebox",
use_texture_alpha = "clip",
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
tiles = { tiles = {

56
crops/parsley.lua Normal file
View File

@ -0,0 +1,56 @@
local S = farming.intllib
-- item definition
minetest.register_craftitem("farming:parsley", {
description = S("Parsley"),
inventory_image = "farming_parsley.png",
groups = {seed = 2, food_parsley = 1, flammable = 2},
on_place = function(itemstack, placer, pointed_thing)
return farming.place_seed(itemstack, placer, pointed_thing, "farming:parsley_1")
end
})
-- crop definition
local def = {
drawtype = "plantlike",
tiles = {"farming_parsley_1.png"},
paramtype = "light",
sunlight_propagates = true,
walkable = false,
buildable_to = true,
drop = "",
selection_box = farming.select,
groups = {
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
not_in_creative_inventory = 1, growing = 1
},
sounds = default.node_sound_leaves_defaults()
}
-- stage 1
minetest.register_node("farming:parsley_1", table.copy(def))
-- stage 2
def.tiles = {"farming_parsley_2.png"}
minetest.register_node("farming:parsley_2", table.copy(def))
-- stage 3 (final)
def.tiles = {"farming_parsley_3.png"}
def.groups.growing = nil
def.drop = {
items = {
{items = {"farming:parsley 2"}, rarity = 1},
{items = {"farming:parsley"}, rarity = 2},
{items = {"farming:parsley"}, rarity = 3}
}
}
minetest.register_node("farming:parsley_3", table.copy(def))
-- add to registered_plants
farming.registered_plants["farming:parsley"] = {
crop = "farming:parsley",
seed = "farming:parsley",
minlight = 13,
maxlight = 15,
steps = 3
}

View File

@ -24,6 +24,38 @@ minetest.register_craft({
recipe = {"farming:soy_pod"} recipe = {"farming:soy_pod"}
}) })
-- soy sauce
minetest.register_node("farming:soy_sauce", {
description = S("Soy Sauce"),
drawtype = "plantlike",
tiles = {"farming_soy_sauce.png"},
inventory_image = "farming_soy_sauce.png",
wield_image = "farming_soy_sauce.png",
paramtype = "light",
walkable = false,
selection_box = {
type = "fixed",
fixed = {-0.3, -0.5, -0.3, 0.3, 0.5, 0.3}
},
groups = {
vessel = 1, food_soy_sauce = 1, dig_immediate = 3, attached_node = 1
},
sounds = default.node_sound_glass_defaults()
})
minetest.register_craft( {
type = "shapeless",
output = "farming:soy_sauce",
recipe = {
"group:food_soy", "group:food_soy", "group:food_juicer",
"bucket:bucket_river_water", "vessels:glass_bottle", "group:food_salt"
},
replacements = {
{"bucket:bucket_river_water", "bucket:bucket_empty"},
{"group:food_juicer", "farming:juicer"}
}
})
-- soy milk -- soy milk
minetest.register_node("farming:soy_milk", { minetest.register_node("farming:soy_milk", {
description = S("Soy Milk"), description = S("Soy Milk"),

View File

@ -35,6 +35,8 @@ farming.blackberry = 0.002
farming.lettuce = 0.001 farming.lettuce = 0.001
farming.soy = 0.001 farming.soy = 0.001
farming.vanilla = 0.001 farming.vanilla = 0.001
farming.artichoke = 0.001
farming.parsley = 0.002
farming.grains = true -- true or false only farming.grains = true -- true or false only
-- default rarety of crops on map (higher number = more crops) -- default rarety of crops on map (higher number = more crops)

254
food.lua
View File

@ -16,6 +16,19 @@ minetest.register_craft({
recipe = "default:papyrus" recipe = "default:papyrus"
}) })
--= Sugar caramel
minetest.register_craftitem("farming:caramel", {
description = S("Caramel"),
inventory_image = "farming_caramel.png",
})
minetest.register_craft({
type = "cooking",
cooktime = 6,
output = "farming:caramel",
recipe = "group:food_sugar",
})
--= Salt --= Salt
@ -33,7 +46,48 @@ minetest.register_node("farming:salt", {
selection_box = { selection_box = {
type = "fixed", type = "fixed",
fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25} fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25}
} },
-- special function to make salt crystals form inside water
dropped_step = function(self, pos, dtime)
self.ctimer = (self.ctimer or 0) + dtime
if self.ctimer < 15.0 then return end
self.ctimer = 0
local needed
if self.node_inside
and self.node_inside.name == "default:water_source" then
needed = 8
elseif self.node_inside
and self.node_inside.name == "default:river_water_source" then
needed = 9
end
if not needed then return end
local objs = core.get_objects_inside_radius(pos, 0.5)
if not objs or #objs ~= 1 then return end
local salt, ent = nil, nil
for k, obj in pairs(objs) do
ent = obj:get_luaentity()
if ent and ent.name == "__builtin:item"
and ent.itemstring == "farming:salt " .. needed then
obj:remove()
core.add_item(pos, "farming:salt_crystal")
return false -- return with no further action
end
end
end
}) })
minetest.register_craft({ minetest.register_craft({
@ -44,6 +98,40 @@ minetest.register_craft({
replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}} replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}}
}) })
--= Salt Crystal
minetest.register_node("farming:salt_crystal", {
description = ("Salt crystal"),
inventory_image = "farming_salt_crystal.png",
wield_image = "farming_salt_crystal.png",
drawtype = "plantlike",
visual_scale = 0.8,
paramtype = "light",
light_source = 1,
tiles = {"farming_salt_crystal.png"},
groups = { dig_immediate = 3, attached_node = 1},
sounds = default.node_sound_defaults(),
selection_box = {
type = "fixed",
fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25}
},
})
minetest.register_craft({
type = "shapeless",
output = "farming:salt 9",
recipe = {"farming:salt_crystal", "farming:mortar_pestle"},
replacements = {{"farming:mortar_pestle", "farming:mortar_pestle"}}
})
minetest.register_craft({
output = "farming:salt_crystal",
recipe = {
{"farming:salt", "farming:salt", "farming:salt"},
{"farming:salt", "farming:salt", "farming:salt"},
{"farming:salt", "farming:salt", "farming:salt"}
}
})
--= Rose Water --= Rose Water
minetest.register_node("farming:rose_water", { minetest.register_node("farming:rose_water", {
@ -105,7 +193,7 @@ minetest.register_craft({
recipe = { recipe = {
{"group:food_gelatin", "group:food_sugar", "group:food_gelatin"}, {"group:food_gelatin", "group:food_sugar", "group:food_gelatin"},
{"group:food_sugar", "group:food_rose_water", "group:food_sugar"}, {"group:food_sugar", "group:food_rose_water", "group:food_sugar"},
{"group:food_cornstarch", "group:food_sugar", "dye:pink"} {"group:food_sugar", "dye:pink", "group:food_sugar"}
}, },
replacements = { replacements = {
{"group:food_cornstarch", "farming:bowl"}, {"group:food_cornstarch", "farming:bowl"},
@ -273,7 +361,6 @@ minetest.register_craftitem("farming:pasta", {
groups = {food_pasta = 1} groups = {food_pasta = 1}
}) })
if minetest.get_modpath("mobs_animal") or minetest.get_modpath("xanadu")then
minetest.register_craft({ minetest.register_craft({
output = "farming:pasta", output = "farming:pasta",
type = "shapeless", type = "shapeless",
@ -283,7 +370,7 @@ minetest.register_craft({
}, },
replacements = {{"group:food_mixing_bowl", "farming:mixing_bowl"}} replacements = {{"group:food_mixing_bowl", "farming:mixing_bowl"}}
}) })
else
minetest.register_craft({ minetest.register_craft({
output = "farming:pasta", output = "farming:pasta",
type = "shapeless", type = "shapeless",
@ -296,7 +383,6 @@ minetest.register_craft({
{"group:food_oil", "vessels:glass_bottle"} {"group:food_oil", "vessels:glass_bottle"}
} }
}) })
end
-- Spaghetti -- Spaghetti
@ -324,7 +410,6 @@ minetest.register_craftitem("farming:bibimbap", {
on_use = minetest.item_eat(8, "farming:bowl") on_use = minetest.item_eat(8, "farming:bowl")
}) })
if minetest.get_modpath("mobs_animal") or minetest.get_modpath("xanadu")then
minetest.register_craft({ minetest.register_craft({
output = "farming:bibimbap", output = "farming:bibimbap",
type = "shapeless", type = "shapeless",
@ -335,7 +420,7 @@ minetest.register_craft({
}, },
replacements = {{"group:food_skillet", "farming:skillet"}} replacements = {{"group:food_skillet", "farming:skillet"}}
}) })
else
minetest.register_craft({ minetest.register_craft({
output = "farming:bibimbap", output = "farming:bibimbap",
type = "shapeless", type = "shapeless",
@ -346,7 +431,6 @@ minetest.register_craft({
}, },
replacements = {{"group:food_skillet", "farming:skillet"}} replacements = {{"group:food_skillet", "farming:skillet"}}
}) })
end
-- Burger -- Burger
@ -401,3 +485,157 @@ minetest.register_craft({
"vessels:drinking_glass" "vessels:drinking_glass"
} }
}) })
-- Patatas a la importancia
minetest.register_craftitem("farming:spanish_potatoes", {
description = S("Spanish Potatoes"),
inventory_image = "farming_spanish_potatoes.png",
on_use = minetest.item_eat(8, "farming:bowl"),
})
minetest.register_craft({
type = "shapeless",
output = "farming:spanish_potatoes",
recipe = {
"farming:potato", "group:food_parsley", "farming:potato",
"group:food_egg", "group:food_flour", "farming:onion",
"farming:garlic_clove", "group:food_bowl", "group:food_skillet"
},
replacements = {{"group:food_skillet", "farming:skillet"}}
})
-- Potato omelet
minetest.register_craftitem("farming:potato_omelet", {
description = S("Potato omelet"),
inventory_image = "farming_potato_omelet.png",
on_use = minetest.item_eat(6, "farming:bowl"),
})
minetest.register_craft({
type = "shapeless",
output = "farming:potato_omelet",
recipe = {
"group:food_egg", "farming:potato", "group:food_onion",
"group:food_skillet", "group:food_bowl"},
replacements = {{"group:food_skillet", "farming:skillet"}}
})
-- Paella
minetest.register_craftitem("farming:paella", {
description = S("Paella"),
inventory_image = "farming_paella.png",
on_use = minetest.item_eat(8, "farming:bowl")
})
minetest.register_craft({
type = "shapeless",
output = "farming:paella",
recipe = {
"group:food_rice", "dye:orange", "farming:pepper_red",
"group:food_peas", "group:food_chicken", "group:food_bowl", "group:food_skillet"
},
replacements = {{"group:food_skillet", "farming:skillet"}}
})
-- Flan
minetest.register_craftitem("farming:flan", {
description = S("Vanilla Flan"),
inventory_image = "farming_vanilla_flan.png",
on_use = minetest.item_eat(6)
})
minetest.register_craft({
type = "shapeless",
output = "farming:flan",
recipe = {
"group:food_sugar", "group:food_milk", "farming:caramel",
"group:food_egg", "group:food_egg", "farming:vanilla_extract"
},
replacements = {
{"cucina_vegana:soy_milk", "vessels:drinking_glass"},
{"group:food_milk", "bucket:bucket_empty"},
{"farming:vanilla_extract", "vessels:glass_bottle"}
}
})
-- Vegan Cheese
minetest.register_craftitem("farming:cheese_vegan", {
description = S("Vegan Cheese"),
inventory_image = "farming_cheese_vegan.png",
on_use = minetest.item_eat(2),
groups = {food_cheese = 1, flammable = 2},
})
minetest.register_craft({
type = "shapeless",
output = "farming:cheese_vegan",
recipe = {
"farming:soy_milk", "farming:soy_milk", "farming:soy_milk",
"group:food_salt", "group:food_peppercorn", "farming:bottle_ethanol",
"group:food_gelatin", "group:food_pot"
},
replacements = {
{"farming:soy_milk", "vessels:drinking_glass 3"},
{"farming:pot", "farming:pot"},
{"farming:bottle_ethanol", "vessels:glass_bottle"}
}
})
minetest.register_craft({
type = "shapeless",
output = "farming:cheese_vegan",
recipe = {
"farming:soy_milk", "farming:soy_milk", "farming:soy_milk",
"group:food_salt", "group:food_peppercorn", "group:food_lemon",
"group:food_gelatin", "group:food_pot"
},
replacements = {
{"farming:soy_milk", "vessels:drinking_glass 3"},
{"farming:pot", "farming:pot"},
}
})
-- Onigiri
minetest.register_craftitem("farming:onigiri", {
description = S("Onirigi"),
inventory_image = "farming_onigiri.png",
on_use = minetest.item_eat(2),
groups = {flammable = 2},
})
minetest.register_craft({
type = "shapeless",
output = "farming:onigiri",
recipe = {
"group:food_rice", "group:food_rice", "group:food_seaweed", "group:food_salt"
}
})
-- Gyoza
minetest.register_craftitem("farming:gyoza", {
description = S("Gyoza"),
inventory_image = "farming_gyoza.png",
on_use = minetest.item_eat(4),
groups = {flammable = 2},
})
minetest.register_craft({
type = "shapeless",
output = "farming:gyoza 4",
recipe = {
"group:food_cabbage", "group:food_garlic_clove", "group:food_onion",
"group:food_meat_raw", "group:food_salt", "group:food_skillet",
"group:food_flour"
},
replacements = {
{"group:food_skillet", "farming:skillet"}
}
})

View File

@ -7,7 +7,7 @@
farming = { farming = {
mod = "redo", mod = "redo",
version = "20201213", version = "20210311",
path = minetest.get_modpath("farming"), path = minetest.get_modpath("farming"),
select = { select = {
type = "fixed", type = "fixed",
@ -633,6 +633,8 @@ farming.blackberry = 0.002
farming.soy = 0.001 farming.soy = 0.001
farming.vanilla = 0.001 farming.vanilla = 0.001
farming.lettuce = 0.001 farming.lettuce = 0.001
farming.artichoke = 0.001
farming.parsley = 0.002
farming.grains = true farming.grains = true
farming.rarety = 0.002 farming.rarety = 0.002
@ -703,6 +705,8 @@ ddoo("blackberry.lua", farming.blackberry)
ddoo("soy.lua", farming.soy) ddoo("soy.lua", farming.soy)
ddoo("vanilla.lua", farming.vanilla) ddoo("vanilla.lua", farming.vanilla)
ddoo("lettuce.lua", farming.lettuce) ddoo("lettuce.lua", farming.lettuce)
ddoo("artichoke.lua", farming.artichoke)
ddoo("parsley.lua", farming.parsley)
dofile(farming.path .. "/food.lua") dofile(farming.path .. "/food.lua")
dofile(farming.path .. "/mapgen.lua") dofile(farming.path .. "/mapgen.lua")

View File

@ -155,3 +155,12 @@ Created by Felfa (CC0)
farming_burger.png farming_burger.png
farming_soy*.png farming_soy*.png
farming_vanilla*.png farming_vanilla*.png
farming_artichoke*.png
farming_parsley*.png
farming_paella.png
farming_potato_omelette.png
farming_spanish_potatoes.png
farming_vanilla_flan.png
Created by gorlock (CC0)
farming_salt_crystal.png

View File

@ -59,7 +59,7 @@ Cornstarch=玉米淀粉
Bottle of Ethanol=一瓶乙醇 Bottle of Ethanol=一瓶乙醇
Cotton Seed=棉籽 Cotton Seed=棉籽
Cotton=棉花 Cotton=棉花
String=字符串 String=线
Cucumber=黄瓜 Cucumber=黄瓜
Garlic clove=蒜瓣 Garlic clove=蒜瓣
Garlic=大蒜 Garlic=大蒜

View File

@ -1,3 +1,8 @@
-- what mapgen are we using
local mg_name = minetest.get_mapgen_setting("mg_name")
-- temp vars
local tmp1, tmp2, tmp3
-- decoration function -- decoration function
local function register_plant(name, min, max, spawnon, spawnby, num, rarety) local function register_plant(name, min, max, spawnon, spawnby, num, rarety)
@ -35,9 +40,6 @@ end
register_plant("potato_3", 15, 40, nil, "", -1, farming.potato) register_plant("potato_3", 15, 40, nil, "", -1, farming.potato)
register_plant("tomato_7", 5, 20, nil, "", -1, farming.tomato) register_plant("tomato_7", 5, 20, nil, "", -1, farming.tomato)
register_plant("corn_7", 12, 22, nil, "", -1, nil) register_plant("corn_7", 12, 22, nil, "", -1, nil)
register_plant("coffee_5", 20, 45, {"default:dirt_with_dry_grass",
"default:dirt_with_rainforest_litter",
"default:dry_dirt_with_dry_grass"}, "", -1, farming.coffee)
register_plant("raspberry_4", 3, 10, nil, "", -1, farming.raspberry) register_plant("raspberry_4", 3, 10, nil, "", -1, farming.raspberry)
register_plant("rhubarb_3", 3, 15, nil, "", -1, farming.rhubarb) register_plant("rhubarb_3", 3, 15, nil, "", -1, farming.rhubarb)
register_plant("blueberry_4", 3, 10, nil, "", -1, farming.blueberry) register_plant("blueberry_4", 3, 10, nil, "", -1, farming.blueberry)
@ -47,23 +49,25 @@ register_plant("onion_5", 5, 22, nil, "", -1, farming.onion)
register_plant("garlic_5", 3, 30, nil, "group:tree", 1, farming.garlic) register_plant("garlic_5", 3, 30, nil, "group:tree", 1, farming.garlic)
register_plant("pea_5", 25, 50, nil, "", -1, farming.peas) register_plant("pea_5", 25, 50, nil, "", -1, farming.peas)
register_plant("beetroot_5", 1, 15, nil, "", -1, farming.beetroot) register_plant("beetroot_5", 1, 15, nil, "", -1, farming.beetroot)
register_plant("mint_4", 1, 75, {"default:dirt_with_grass",
"default:dirt_with_coniferous_litter"}, "group:water", 1, farming.mint)
register_plant("cabbage_6", 2, 10, nil, "", -1, farming.cabbage) register_plant("cabbage_6", 2, 10, nil, "", -1, farming.cabbage)
register_plant("lettuce_5", 5, 30, nil, "", -1, farming.lettuce) register_plant("lettuce_5", 5, 30, nil, "", -1, farming.lettuce)
register_plant("blackberry_4", 3, 10, nil, "", -1, farming.blackberry) register_plant("blackberry_4", 3, 10, nil, "", -1, farming.blackberry)
register_plant("soy_6", 20, 50, {"default:dirt_with_dry_grass",
"default:dirt_with_rainforest_litter",
"default:dry_dirt_with_dry_grass"}, "", -1, farming.soy)
register_plant("vanilla_7", 5, 35, nil, "", -1, farming.vanilla) register_plant("vanilla_7", 5, 35, nil, "", -1, farming.vanilla)
register_plant("parsley_3", 10, 40, nil, "", -1, farming.parsley)
register_plant("mint_4", 1, 75, {
"default:dirt_with_grass", "default:dirt_with_coniferous_litter"},
"group:water", 1, farming.mint)
if minetest.get_mapgen_setting("mg_name") == "v6" then -- v6 mapgen compatibility for specific crops
if mg_name == "v6" then
register_plant("carrot_8", 1, 30, nil, "group:water", 1, farming.carrot) register_plant("carrot_8", 1, 30, nil, "group:water", 1, farming.carrot)
register_plant("cucumber_4", 1, 20, nil, "group:water", 1, farming.cucumber) register_plant("cucumber_4", 1, 20, nil, "group:water", 1, farming.cucumber)
register_plant("melon_8", 1, 20, nil, "group:water", 1, farming.melon) register_plant("melon_8", 1, 20, nil, "group:water", 1, farming.melon)
register_plant("pumpkin_8", 1, 20, nil, "group:water", 1, farming.pumpkin) register_plant("pumpkin_8", 1, 20, nil, "group:water", 1, farming.pumpkin)
register_plant("coffee_5", 20, 45, nil, "", -1, farming.coffee)
register_plant("soy_6", 20, 50, nil, "", -1, farming.soy)
else else
-- v7 maps have a beach so plants growing near water is limited to 6 high -- v7 maps have a beach so plants growing near water is limited to 6 high
register_plant("carrot_8", 1, 15, nil, "", -1, nil) register_plant("carrot_8", 1, 15, nil, "", -1, nil)
@ -71,8 +75,15 @@ else
register_plant("melon_8", 1, 6, {"default:dirt_with_dry_grass", register_plant("melon_8", 1, 6, {"default:dirt_with_dry_grass",
"default:dirt_with_rainforest_litter"}, "", -1, farming.melon) "default:dirt_with_rainforest_litter"}, "", -1, farming.melon)
register_plant("pumpkin_8", 1, 6, nil, "", -1, farming.pumpkin) register_plant("pumpkin_8", 1, 6, nil, "", -1, farming.pumpkin)
register_plant("coffee_5", 20, 45, {"default:dirt_with_dry_grass",
"default:dirt_with_rainforest_litter",
"default:dry_dirt_with_dry_grass"}, "", -1, farming.coffee)
register_plant("soy_6", 20, 50, {"default:dirt_with_dry_grass",
"default:dirt_with_rainforest_litter",
"default:dry_dirt_with_dry_grass"}, "", -1, farming.soy)
end end
if farming.hemp then if farming.hemp then
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
@ -94,6 +105,7 @@ minetest.register_decoration({
}) })
end end
if farming.chili then if farming.chili then
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
@ -115,10 +127,40 @@ minetest.register_decoration({
}) })
end end
if farming.pepper then
if farming.artichoke then
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"default:dirt_with_rainforest_litter"}, place_on = {"default:dirt_with_grass"},
sidelen = 16,
noise_params = {
offset = 0,
scale = tonumber(farming.artichoke) or farming.rarety,
spread = {x = 100, y = 100, z = 100},
seed = 448,
octaves = 3,
persist = 0.6
},
y_min = 1,
y_max = 13,
decoration = {"farming:artichoke_5"},
spawn_by = "group:tree",
num_spawn_by = 1,
})
end
if farming.pepper then
local tmp1 = {"default:dirt_with_rainforest_litter"} -- v7
if mg_name == "v6" then
tmp1 = {"default:dirt_with_grass"} -- v6
end
minetest.register_decoration({
deco_type = "simple",
place_on = tmp1,
sidelen = 16, sidelen = 16,
noise_params = { noise_params = {
offset = 0, offset = 0,
@ -136,10 +178,22 @@ minetest.register_decoration({
}) })
end end
if farming.pineapple then if farming.pineapple then
tmp1 = {"default:dirt_with_dry_grass", "default:dry_dirt_with_dry_grass"}
tmp2 = nil
tmp3 = -1
if mg_name == "v6" then
tmp1 = {"default:dirt_with_grass"}
tmp2 = "default:desert_sand"
tmp3 = 1
end
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"default:dirt_with_dry_grass", "default:dry_dirt_with_dry_grass"}, place_on = tmp1,
sidelen = 16, sidelen = 16,
noise_params = { noise_params = {
offset = 0, offset = 0,
@ -151,14 +205,24 @@ minetest.register_decoration({
}, },
y_min = 18, y_min = 18,
y_max = 30, y_max = 30,
decoration = {"farming:pineapple_8"} decoration = {"farming:pineapple_8"},
spawn_by = tmp2,
num_spawn_by = tmp3
}) })
end end
tmp1 = {"default:dry_dirt_with_dry_grass"}
tmp2 = {"savanna"}
if mg_name == "v6" then
tmp1 = {"default:dirt_with_grass"}
tmp2 = {"jungle"}
end
minetest.register_decoration({ minetest.register_decoration({
name = "farming:cotton_wild", name = "farming:cotton_wild",
deco_type = "simple", deco_type = "simple",
place_on = {"default:dry_dirt_with_dry_grass"}, place_on = tmp1,
sidelen = 16, sidelen = 16,
noise_params = { noise_params = {
offset = -0.1, offset = -0.1,
@ -168,7 +232,7 @@ minetest.register_decoration({
octaves = 3, octaves = 3,
persist = 0.7 persist = 0.7
}, },
biomes = {"savanna"}, biomes = tmp2,
y_max = 31000, y_max = 31000,
y_min = 1, y_min = 1,
decoration = "farming:cotton_wild" decoration = "farming:cotton_wild"

View File

@ -148,7 +148,7 @@ minetest.register_abm({
if minetest.registered_nodes[nn] if minetest.registered_nodes[nn]
and minetest.registered_nodes[nn].walkable and minetest.registered_nodes[nn].walkable
and minetest.get_item_group(nn, "plant") == 0 then and minetest.get_item_group(nn, "plant") == 0 then
minetest.set_node(pos, {name = "default:dirt"}) minetest.set_node(pos, {name = ndef.soil.base})
return return
end end

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

View File

Before

Width:  |  Height:  |  Size: 421 B

After

Width:  |  Height:  |  Size: 421 B

View File

Before

Width:  |  Height:  |  Size: 200 B

After

Width:  |  Height:  |  Size: 200 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

BIN
textures/farming_gyoza.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 603 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 B

BIN
textures/farming_paella.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 687 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 557 B

View File

Before

Width:  |  Height:  |  Size: 382 B

After

Width:  |  Height:  |  Size: 382 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB