update farming mod for mt game v4, need test compatibility
@ -19,7 +19,7 @@ Most of those mods have mirror at http://git.mirror.org
|
||||
| default | https://codeberg.org/minenux/minetest-game-minetest | https://codeberg.org/minenux/minetest-game-minetest/commit/c7cb79422ba19c696966472942db6177c934838d | |
|
||||
| doors | https://codeberg.org/minenux/minetest-mod-doors | https://codeberg.org/minenux/minetest-mod-doors/commit/a89ab0454deb4933b6e4971c57055c40b7938e5b | [doors/README.md](doors/README.md) |
|
||||
| dye | https://codeberg.org/minenux/minetest-game-minetest | https://codeberg.org/minenux/minetest-game-minetest/commit/c7cb79422ba19c696966472942db6177c934838d | |
|
||||
| farming | https://codeberg.org/minenux/minetest-mod-farming | https://codeberg.org/minenux/minetest-mod-farming/commit/00e4b3cb89d3c1b1d66b6af4821191c1d667e1bc | [farming/README.md](farming/README.md) |
|
||||
| farming | https://codeberg.org/minenux/minetest-mod-farming | https://codeberg.org/minenux/minetest-mod-farming/commit/08c3a9b37bab5d8a0f5971b168aef412db5fc424 | [farming/README.md](farming/README.md) |
|
||||
| fire | https://codeberg.org/minenux/minetest-mod-fire | https://codeberg.org/minenux/minetest-mod-fire/commit/4e5f7ad55314bd9b126fb133cfc5a32fa58b20d2 | [fire/README.md](fire/README.md) |
|
||||
| flowers | https://codeberg.org/minenux/minetest-game-minetest | https://codeberg.org/minenux/minetest-game-minetest/commit/c7cb79422ba19c696966472942db6177c934838d | |
|
||||
| give_initial_stuff | https://codeberg.org/minenux/minetest-game-minetest | https://codeberg.org/minenux/minetest-game-minetest/commit/c7cb79422ba19c696966472942db6177c934838d | |
|
||||
|
1
mods/farming/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
farming.conf
|
@ -1,7 +1,7 @@
|
||||
minetest mod Farming Redo
|
||||
=========================
|
||||
Farming Redo mod for Minetest
|
||||
=============================
|
||||
|
||||
This mod improves all food and farming related content
|
||||
FARM mod for food
|
||||
|
||||
Information
|
||||
-----------
|
||||
@ -18,8 +18,18 @@ original wheat and cotton will require seeds which are found inside normal and j
|
||||
Tech information
|
||||
----------------
|
||||
|
||||
This mod sustitute default one, you must disable the default of minetest
|
||||
game if present or override it.
|
||||
This mod replaces the default `farming` mod with a fully compatible API that allows
|
||||
players to grow crops even when they are not nearby. It also includes many new foods
|
||||
and crops which can be planted directly onto tilled soil without seeds. Crops that do
|
||||
require seeds like wheat and cotton are found when digging in long grasses.
|
||||
|
||||
Farming Redo is a featured version of the built-in farming mod in minetest
|
||||
and comes with wheat, cotton, carrot, cucumber, potato and tomato to start out
|
||||
with which spawn throughout the map... new foods need only be planted
|
||||
on tilled soil so no seeds are required, original wheat and cotton will
|
||||
require seeds which are found inside normal and jungle grass...
|
||||
|
||||
Crops grow by adding your new plant to the {growing = 1} group and numbering the stages from _1 to as many stages as you like, but the underscore MUST be used only once in the node name to separate plant from stage number e.g.
|
||||
|
||||
This mod works by adding your new plant to the {growing=1} group
|
||||
and numbering the stages with sufix from `_1` to as many stages as you like,
|
||||
@ -30,12 +40,7 @@ to separate plant from stage number e.g.:
|
||||
* `farming:wheat_6` through to `farming:wheat_8` will grow up with 3 times passed, but looks like faster
|
||||
* `farming:cucumber_4` through to `farming:cucumber_4` will grow up inmediatelly
|
||||
|
||||
https://forum.minetest.net/viewtopic.php?id=9019
|
||||
|
||||
**It provides 47 lucky blocks.**
|
||||
|
||||
Farming Redo also works with Bonemeal mod for quick growing crops and saplings
|
||||
at https://notabug.org/TenPlus1/bonemeal
|
||||
|
||||
#### Dependencies
|
||||
|
||||
@ -45,71 +50,79 @@ Optional dependences:
|
||||
|
||||
* stairs
|
||||
* intllib (only for older engines)
|
||||
* lucky_block
|
||||
* lucky_block (adds 47 lucky blocks)
|
||||
* toolranks
|
||||
|
||||
It detects other mods like FarmingPlus, Ethereal and Bonemeal etc,
|
||||
but cannot set to optional depends becouse of the bug of circular depends.
|
||||
but cannot set to optional depends because of the bug of circular depends.
|
||||
|
||||
TODO: check if configuration setting must be separate or just leave as is, indicating the place of the config by the "place file" column.
|
||||
TODO: check nodes classification,
|
||||
TODO: list `crops/*lua` files and compare
|
||||
|
||||
#### Configuration
|
||||
|
||||
It reads the configuration values from two places, `minetest.conf` and `farming.conf`, this last
|
||||
must be at world path, if you have older place at mod path will be read but must be deprecated.
|
||||
Configuration takes at two places, `farming.conf` is used to load custom settings for each crop and can be found in either the
|
||||
farming mod folder or the world folder. Also `minetest.conf` contains a setting for crop growth speed.
|
||||
|
||||
|
||||
| Configuration | type | default | place file | Notes about |
|
||||
| -------------------- | ----- | ------- | ------------ | ----------------------------------------- |
|
||||
| time_speed | float | 73 | minetest.conf | Speed to grow up the plants on engine (used as base for seed) |
|
||||
| farming_stage_length | float | 160.0 | minetest.conf | Contains a value used for speed of crop growth in seconds |
|
||||
| farming.rarety | float | 0.002 | farming.conf | default rarety of crops on map (higher number = more crops) |
|
||||
| farming.min_light | int | 12 | farming.conf | default minimum and maximum light levels crops need to grow |
|
||||
| farming.max_light | int | 15 | farming.conf | default minimum and maximum light levels crops need to grow |
|
||||
| farming.carrot | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.potato | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.tomato | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.cucumber | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.corn | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.coffee | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.melon | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.pumpkin | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.cocoa | bool | true | farming.conf | true or false only |
|
||||
| farming.raspberry | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.blueberry | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.rhubarb | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.beans | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.grapes | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.barley | bool | true | farming.conf | true or false only |
|
||||
| farming.chili | float | 0.003 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.hemp | float | 0.003 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.garlic | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.onion | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.pepper | float | 0.002 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.pineapple | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.peas | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.beetroot | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.mint | float | 0.005 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.cabbage | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.blackberry | float | 0.002 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.lettuce | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.soy | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.vanilla | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.artichoke | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.parsley | float | 0.002 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.sunflower | float | 0.001 | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.grains | bool | true | farming.conf | true or false only |
|
||||
| farming.rice | bool | true | farming.conf | true to enable crop/food in-game and on mapgen set spawn rarety |
|
||||
| farming.min_light | int | 12 | farming.conf | default minimum light levels crops need to grow |
|
||||
| farming.max_light | int | 15 | farming.conf | default maximum light levels crops need to grow |
|
||||
| farming.carrot | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.potato | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.tomato | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.cucumber | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.corn | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.coffee | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.melon | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.pumpkin | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.cocoa | bool | true | farming.conf | true to enable crop/food or false to disable |
|
||||
| farming.raspberry | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.blueberry | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.rhubarb | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.beans | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.grapes | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.barley | bool | true | farming.conf | true to enable crop/food, false to disable |
|
||||
| farming.chili | float | 0.003 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.hemp | float | 0.003 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.garlic | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.onion | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.pepper | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.pineapple | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.peas | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.beetroot | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.mint | float | 0.005 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.cabbage | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.blackberry | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.lettuce | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.soy | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.vanilla | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.artichoke | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.parsley | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.sunflower | float | 0.001 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.grains | bool | true | farming.conf | true to enable crop/food or false to disable |
|
||||
| farming.rice | bool | true | farming.conf | true to enable crop/food or false to disable |
|
||||
| farming.asparagus | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.eggplant | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.spinach | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
| farming.strawberry | float | 0.002 | farming.conf | rarety value to enable crop/food in-game, false to disable |
|
||||
|
||||
#### Nodes and food
|
||||
|
||||
This farming mod provides a large featured basic foods production of farming:
|
||||
This farming mod provides a large selection of craftable food and items:
|
||||
|
||||
| Node name | Description name |
|
||||
| ----------------------- | --------------------- |
|
||||
| farming:salt | Salt |
|
||||
| farming:salt_crystal | Salt crystal |
|
||||
| farming:salt_crystal | Salt Crystal |
|
||||
| farming:chili_powder | Chili Powder |
|
||||
| farming:rose_water | Rose Water |
|
||||
| farming:glass_water | Glass of Water |
|
||||
| farming:sugar | Sugar |
|
||||
| farming:sugar_cube | Sugar Cube |
|
||||
| farming:caramel | Caramel |
|
||||
| farming:turkish_delight | Turkish Delight |
|
||||
| farming:garlic_bread | Garlic Bread |
|
||||
@ -121,6 +134,7 @@ This farming mod provides a large featured basic foods production of farming:
|
||||
| farming:apple_pie | Apple Pie |
|
||||
| farming:cactus_juice | Cactus Juice |
|
||||
| farming:pasta | Pasta |
|
||||
| farming:mac_and_cheese | Mac & Cheese |
|
||||
| farming:spaghetti | Spaghetti |
|
||||
| farming:bibimbap | Bibimbap |
|
||||
| farming:burger | Burger |
|
||||
@ -131,16 +145,73 @@ This farming mod provides a large featured basic foods production of farming:
|
||||
| farming:paella | Paella |
|
||||
| farming:flan | Vanilla Flan |
|
||||
| farming:cheese_vegan | Vegan Cheese |
|
||||
| farming:onigiri | Onirigi |
|
||||
| farming:onigiri | Onigiri |
|
||||
| farming:gyoza | Gyoza |
|
||||
| farming:mochi | Mochi |
|
||||
| farming:beetroot_soup | Beetroot Soup |
|
||||
| farming:muffin_blueberry | Blueberry Muffin |
|
||||
| farming:blueberry_pie | Blueberry Pie |
|
||||
| farming:carrot_juice | Carrot Juice |
|
||||
| farming:carrot_gold | Golden Carrot (revives) |
|
||||
| farming:chili_bowl | Bowl or Chili |
|
||||
| farming:cocoa_beans | Cocoa Beans |
|
||||
| farming:cookie | Chocolate Cookie |
|
||||
| farming:chocolate_dark | Bar of Dark Chocolate |
|
||||
| farming:chocolate_block | Chocolate Block |
|
||||
| farming:coffee_cup | Cup of Coffee |
|
||||
| farming:corn_cob | Corn on the Cob |
|
||||
| farming:popcorn | Popcorn |
|
||||
| farming:cornstarch | Cornstarch |
|
||||
| farming:ethanol | Bottle of Ethanol (fuel) |
|
||||
| farming:string | String |
|
||||
| farming:garlic_braid | Garlic Braid |
|
||||
| farming:garlic_clove | Garlic Clove |
|
||||
| farming:hemp_oil | Hemp Oil |
|
||||
| farming:hemp_fibre | Hemp Fibre |
|
||||
| farming:hemp_block | Hemp Block |
|
||||
| farming:hemp_rope | Hemp Rope |
|
||||
| farming:mint_tea | Mint Tea |
|
||||
| farming:onion_soup | Onion Soup |
|
||||
| farming:pea_soup | Pea Soup |
|
||||
| farming:pepper_ground | Ground Pepper |
|
||||
| farming:pineapple_ring | Pineapple Ring |
|
||||
| farming:pineapple_juice | Pineapple Juice |
|
||||
| farming:baked_potato | Baked Potato |
|
||||
| farming:potato_salad | Cucumber & Potato Salad |
|
||||
| farming:jackolantern | Jack 'O Lantern |
|
||||
| farming:scarecrow_bottom | Scarecrow Bottom |
|
||||
| farming:pumpkin_dough | Pumpkin Dough |
|
||||
| farming:pumpkin_bread | Pumpkin Bread |
|
||||
| farming:smoothie_raspberry | Raspberry Smoothie |
|
||||
| farming:rhubarb_pie | Rhybarb Pie |
|
||||
| farming:rice_flour | Rice Flour |
|
||||
| farming:rice_bread | Rice Bread |
|
||||
| farming:flour_multigrain | Multigrain Rice |
|
||||
| farming:bread_multigrain | Multigrain Bread |
|
||||
| farming:soy_sauce | Soy Sauce |
|
||||
| farming:soy_milk | Soy Milk |
|
||||
| farming:tofu | Tofu |
|
||||
| farming:tofu_cooked | Cooked Tofu |
|
||||
| farming:sunflower_seeds_toasted | Toasted Sunflower Seeds |
|
||||
| farming:sunflower_oil | Sunflower Oil |
|
||||
| farming:sunflower_bread | Sunflower Bread |
|
||||
| farming:tomato_soup | Tomato Soup |
|
||||
| farming:vanilla_extract | Vanilla Extract |
|
||||
| farming:flour | Flour |
|
||||
| farming:bread | Bread |
|
||||
| farming:straw | Straw Block |
|
||||
| farming:bread_slice | Bread Slice |
|
||||
| farming:toast | Toast |
|
||||
| farming:toast_sandwich | Toast Sandwich |
|
||||
|
||||
TODO: list `crops/*lua` files and compare
|
||||
|
||||
#### Item and Tools
|
||||
|
||||
|
||||
#### Items tools
|
||||
|
||||
| node name | Description |
|
||||
| ----------------------- | --------------------- |
|
||||
| farming:trellis | Trellis (for growing grapes) |
|
||||
| farming:beanpole | Bean Pole (for growing beans) |
|
||||
| farming:scythe_mithril | Mithril Scythe (Use to harvest and replant crops) |
|
||||
| farming:hoe_bomb | Hoe Bomb (use or throw on grassy areas to hoe land) |
|
||||
| farming:hoe_wood | Wooden Hoe |
|
||||
@ -161,6 +232,8 @@ TODO: list `crops/*lua` files and compare
|
||||
| moreores:hoe_silver | Silver Hoe |
|
||||
| moreores:hoe_mithril | Mitril Hoe |
|
||||
|
||||
TODO: list `crops/*lua` files and compare
|
||||
TODO: check relationship with other mods tools
|
||||
|
||||
#### Nodes and Aliasing
|
||||
|
||||
@ -169,7 +242,6 @@ if those mods/nodes are not present, will be (re)defined/provided,
|
||||
note for the both "farming" names here, in the left side its
|
||||
about default Farming mod, not Farming Redo one.
|
||||
|
||||
|
||||
| mod name : node name | new mod name : new node |
|
||||
| --------------------------- | ----------------------- |
|
||||
| farming:big_pumpkin | farming:jackolantern |
|
||||
@ -233,10 +305,13 @@ about default Farming mod, not Farming Redo one.
|
||||
| farming_plus:tomato_3 | farming:tomato_6 |
|
||||
| farming_plus:tomato | farming:tomato_8 |
|
||||
|
||||
#### AMB
|
||||
#### ABM
|
||||
|
||||
There one abm for new group `group:growing`.
|
||||
The ABM checks every 5 minutes to make sure crops in `group:growing` that were planted
|
||||
on an older map are enabled and growing properly.
|
||||
|
||||
* "Soil changes" for `group:field` by example wet soil
|
||||
* "Start crop timer" for `group:growing` nodes (like seeds)
|
||||
|
||||
#### development notes
|
||||
|
||||
@ -245,6 +320,7 @@ this can be used in a loop for over all files using `find`.
|
||||
|
||||
### Changelog:
|
||||
|
||||
- 1.47 - Now blueberries can make blue dye, tweak soil types to work better with older 0.4.x clients and add spanish translation (thx mckaygerhard), add trellis setting to registered_crops and fix pea and soy crop names (thx nixnoxus), add strawberries if ethereal mod not active, added asparagus; spinach; eggplant (thx Atlante for new textures), Sugar Cube
|
||||
- 1.46 - Added min/max default light settings, added lettuce and blackberries with food items (thanks OgelGames), added soya, vanilla and sunflowers (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
|
||||
options, onion soup added (thanks edcrypt), Added apple pie, added wild cotton to savanna
|
||||
@ -299,4 +375,3 @@ options, onion soup added (thanks edcrypt), Added apple pie, added wild cotton t
|
||||
- 0.2 - Fixed check for wet soil
|
||||
- 0.1 - Fixed growing bug
|
||||
- 0.0 - Initial release
|
||||
|
||||
|
@ -131,29 +131,12 @@ alias("farming_plus:rhubarb", "farming:rhubarb_3")
|
||||
alias("farming_plus:rhubarb_item", "farming:rhubarb")
|
||||
|
||||
-- Strawberry
|
||||
if eth then
|
||||
alias("farming_plus:strawberry_item", "ethereal:strawberry")
|
||||
alias("farming_plus:strawberry_seed", "ethereal:strawberry")
|
||||
alias("farming_plus:strawberry_1", "ethereal:strawberry_1")
|
||||
alias("farming_plus:strawberry_2", "ethereal:strawberry_3")
|
||||
alias("farming_plus:strawberry_3", "ethereal:strawberry_5")
|
||||
alias("farming_plus:strawberry", "ethereal:strawberry_7")
|
||||
else
|
||||
minetest.register_craftitem(":ethereal:strawberry", {
|
||||
description = S("Strawberry"),
|
||||
inventory_image = "farming_strawberry.png",
|
||||
wield_image = "farming_strawberry.png",
|
||||
groups = {food_strawberry = 1, flammable = 2},
|
||||
on_use = minetest.item_eat(1)
|
||||
})
|
||||
|
||||
alias("farming_plus:strawberry_item", "ethereal:strawberry")
|
||||
alias("farming_plus:strawberry_seed", "ethereal:strawberry")
|
||||
alias("farming_plus:strawberry_1", "farming:raspberry_1")
|
||||
alias("farming_plus:strawberry_2", "farming:raspberry_2")
|
||||
alias("farming_plus:strawberry_3", "farming:raspberry_3")
|
||||
alias("farming_plus:strawberry", "farming:raspberry_4")
|
||||
end
|
||||
alias("farming_plus:strawberry_item", "ethereal:strawberry")
|
||||
alias("farming_plus:strawberry_seed", "ethereal:strawberry")
|
||||
alias("farming_plus:strawberry_1", "ethereal:strawberry_1")
|
||||
alias("farming_plus:strawberry_2", "ethereal:strawberry_3")
|
||||
alias("farming_plus:strawberry_3", "ethereal:strawberry_5")
|
||||
alias("farming_plus:strawberry", "ethereal:strawberry_7")
|
||||
|
||||
-- Tomato
|
||||
alias("farming_plus:tomato_seed", "farming:tomato")
|
||||
|
@ -20,6 +20,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -46,6 +47,7 @@ minetest.register_node("farming:artichoke_4", table.copy(def))
|
||||
-- stage 5 (final)
|
||||
def.tiles = {"farming_artichoke_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:artichoke 2"}, rarity = 1},
|
||||
@ -62,3 +64,23 @@ farming.registered_plants["farming:artichoke"] = {
|
||||
maxlight = 15,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.artichoke,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 123,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = 13,
|
||||
decoration = {"farming:artichoke_5"},
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
|
94
mods/farming/crops/asparagus.lua
Normal file
@ -0,0 +1,94 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- asparagus
|
||||
minetest.register_craftitem("farming:asparagus", {
|
||||
description = S("Asparagus"),
|
||||
inventory_image = "farming_asparagus.png",
|
||||
groups = {seed = 2, food_asparagus = 1, flammable = 2},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:asparagus_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(1)
|
||||
})
|
||||
|
||||
-- asparagus definition
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"farming_asparagus_1.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "meshoptions",
|
||||
place_param2 = 3,
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
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:asparagus_1", table.copy(def))
|
||||
|
||||
-- stage 2
|
||||
def.tiles = {"farming_asparagus_2.png"}
|
||||
minetest.register_node("farming:asparagus_2", table.copy(def))
|
||||
|
||||
-- stage 3
|
||||
def.tiles = {"farming_asparagus_3.png"}
|
||||
minetest.register_node("farming:asparagus_3", table.copy(def))
|
||||
|
||||
-- stage 4
|
||||
def.tiles = {"farming_asparagus_4.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:asparagus"}, rarity = 2}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:asparagus_4", table.copy(def))
|
||||
|
||||
-- stage 5
|
||||
def.tiles = {"farming_asparagus_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:asparagus"}, rarity = 1},
|
||||
{items = {"farming:asparagus 2"}, rarity = 2}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:asparagus_5", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:asparagus"] = {
|
||||
crop = "farming:asparagus",
|
||||
seed = "farming:asparagus",
|
||||
minlight = 7,
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
name = "farming:asparagus_5",
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = farming.asparagus,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 234,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 8,
|
||||
y_max = 32,
|
||||
decoration = "farming:asparagus_5",
|
||||
param2 = 3
|
||||
})
|
@ -8,14 +8,15 @@ minetest.register_node("farming:seed_barley", {
|
||||
inventory_image = "farming_barley_seed.png",
|
||||
wield_image = "farming_barley_seed.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1},
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, growing = 1},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
next_plant = "farming:barley_1",
|
||||
selection_box = farming.select,
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:barley_1")
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_barley")
|
||||
end
|
||||
})
|
||||
|
||||
@ -47,6 +48,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -72,12 +74,6 @@ minetest.register_node("farming:barley_4", table.copy(def))
|
||||
|
||||
-- stage 5
|
||||
def.tiles = {"farming_barley_5.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:barley"}, rarity = 2},
|
||||
{items = {"farming:seed_barley"}, rarity = 2}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:barley_5", table.copy(def))
|
||||
|
||||
-- stage 6
|
||||
@ -85,14 +81,25 @@ def.tiles = {"farming_barley_6.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:barley"}, rarity = 2},
|
||||
{items = {"farming:seed_barley"}, rarity = 1}
|
||||
{items = {"farming:seed_barley"}, rarity = 2}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:barley_6", table.copy(def))
|
||||
|
||||
-- stage 7 (final)
|
||||
-- stage 7
|
||||
def.tiles = {"farming_barley_7.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:barley"}, rarity = 2},
|
||||
{items = {"farming:seed_barley"}, rarity = 1}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:barley_7", table.copy(def))
|
||||
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_barley_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:barley"}, rarity = 1},
|
||||
@ -101,7 +108,7 @@ def.drop = {
|
||||
{items = {"farming:seed_barley"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:barley_7", table.copy(def))
|
||||
minetest.register_node("farming:barley_8", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:barley"] = {
|
||||
@ -109,7 +116,7 @@ farming.registered_plants["farming:barley"] = {
|
||||
seed = "farming:seed_barley",
|
||||
minlight = farming.min_light,
|
||||
maxlight = farming.max_light,
|
||||
steps = 7
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- Fuel
|
||||
|
@ -210,6 +210,7 @@ minetest.register_node("farming:beanpole_4", table.copy(def))
|
||||
-- stage 5 (final)
|
||||
def.tiles = {"farming_beanpole_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:beanpole"}, rarity = 1},
|
||||
@ -253,3 +254,21 @@ minetest.register_node("farming:beanbush", {
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults()
|
||||
})
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.beans,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 345,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 18,
|
||||
y_max = 38,
|
||||
decoration = "farming:beanbush"
|
||||
})
|
||||
|
@ -69,6 +69,7 @@ minetest.register_node("farming:beetroot_4", table.copy(def))
|
||||
-- stage 5
|
||||
def.tiles = {"farming_beetroot_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
max_items = 4, items = {
|
||||
{items = {"farming:beetroot"}, rarity = 1},
|
||||
@ -87,3 +88,21 @@ farming.registered_plants["farming:beetroot"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.beetroot,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 456,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = 20,
|
||||
decoration = "farming:beetroot_5"
|
||||
})
|
||||
|
@ -10,7 +10,7 @@ minetest.register_craftitem("farming:blackberry", {
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:blackberry_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(1),
|
||||
on_use = minetest.item_eat(1)
|
||||
})
|
||||
|
||||
local def = {
|
||||
@ -43,6 +43,7 @@ minetest.register_node("farming:blackberry_3", table.copy(def))
|
||||
-- stage 4
|
||||
def.tiles = {"farming_blackberry_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {'farming:blackberry 2'}, rarity = 1},
|
||||
@ -60,3 +61,21 @@ farming.registered_plants["farming:blackberry"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.blackberry,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 567,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 20,
|
||||
decoration = "farming:blackberry_4"
|
||||
})
|
||||
|
@ -80,6 +80,7 @@ minetest.register_node("farming:blueberry_3", table.copy(def))
|
||||
-- stage 4 (final)
|
||||
def.tiles = {"farming_blueberry_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:blueberries 2"}, rarity = 1},
|
||||
@ -97,3 +98,21 @@ farming.registered_plants["farming:blueberries"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.blueberry,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 678,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 15,
|
||||
decoration = "farming:blueberry_4"
|
||||
})
|
||||
|
@ -51,6 +51,7 @@ minetest.register_node("farming:cabbage_5", table.copy(def))
|
||||
-- stage 6
|
||||
def.tiles = {"farming_cabbage_6.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
max_items = 2, items = {
|
||||
{items = {"farming:cabbage 2"}, rarity = 1},
|
||||
@ -67,3 +68,21 @@ farming.registered_plants["farming:cabbage"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 6
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.cabbage,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 789,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 2,
|
||||
y_max = 15,
|
||||
decoration = "farming:cabbage_6"
|
||||
})
|
||||
|
@ -46,11 +46,7 @@ minetest.register_craftitem("farming:carrot_gold", {
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:carrot_gold",
|
||||
recipe = {
|
||||
{"", "default:gold_lump", ""},
|
||||
{"default:gold_lump", "group:food_carrot", "default:gold_lump"},
|
||||
{"", "default:gold_lump", ""}
|
||||
}
|
||||
recipe = {{"group:food_carrot", "default:gold_lump"}}
|
||||
})
|
||||
|
||||
-- carrot definition
|
||||
@ -62,6 +58,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -107,6 +104,7 @@ minetest.register_node("farming:carrot_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_carrot_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:carrot 2"}, rarity = 1},
|
||||
@ -123,3 +121,31 @@ farming.registered_plants["farming:carrot"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
y_max = mg and 30 or 20,
|
||||
near = mg and "group:water" or nil,
|
||||
num = mg and 1 or -1,
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.carrot,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 890,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = def.y_max,
|
||||
decoration = "farming:carrot_8",
|
||||
spawn_by = def.near,
|
||||
num_spawn_by = def.num
|
||||
})
|
||||
|
@ -33,6 +33,22 @@ minetest.register_craft({
|
||||
recipe = {{"farming:chili_pepper"}}
|
||||
})
|
||||
|
||||
-- chili powder
|
||||
minetest.register_craftitem("farming:chili_powder", {
|
||||
description = S("Chili Powder"),
|
||||
on_use = minetest.item_eat(-1),
|
||||
inventory_image = "farming_chili_powder.png"
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:chili_powder",
|
||||
recipe = {
|
||||
{"farming:chili_pepper", "farming:mortar_pestle"}
|
||||
},
|
||||
replacements = {{"farming:mortar_pestle", "farming:mortar_pestle"}}
|
||||
})
|
||||
|
||||
|
||||
-- chili definition
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
@ -42,6 +58,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 4, plant = 1, attached_node = 1,
|
||||
@ -80,6 +97,7 @@ minetest.register_node("farming:chili_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_chili_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:chili_pepper 3"}, rarity = 1},
|
||||
@ -96,3 +114,23 @@ farming.registered_plants["farming:chili_pepper"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_rainforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.chili,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 901,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 35,
|
||||
decoration = {"farming:chili_8"},
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
|
@ -207,6 +207,9 @@ farming.registered_plants["farming:cocoa_beans"] = {
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- localize math.random for speed
|
||||
local random = math.random
|
||||
|
||||
-- add random cocoa pods to jungle tree's
|
||||
minetest.register_on_generated(function(minp, maxp)
|
||||
|
||||
@ -224,7 +227,7 @@ minetest.register_on_generated(function(minp, maxp)
|
||||
if minetest.find_node_near(pos, 1,
|
||||
{"default:jungleleaves", "moretrees:jungletree_leaves_green"}) then
|
||||
|
||||
dir = math.random(1, 40)
|
||||
dir = random(80)
|
||||
|
||||
if dir == 1 then pos.x = pos.x + 1
|
||||
elseif dir == 2 then pos.x = pos.x - 1
|
||||
@ -239,7 +242,7 @@ minetest.register_on_generated(function(minp, maxp)
|
||||
--print ("Cocoa Pod added at " .. minetest.pos_to_string(pos))
|
||||
|
||||
minetest.swap_node(pos, {
|
||||
name = "farming:cocoa_" .. tostring(math.random(4))
|
||||
name = "farming:cocoa_" .. tostring(random(4))
|
||||
})
|
||||
end
|
||||
end
|
||||
|
@ -52,6 +52,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -78,6 +79,7 @@ minetest.register_node("farming:coffee_4", table.copy(def))
|
||||
-- stage 5 (final)
|
||||
def.tiles = {"farming_coffee_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:coffee_beans 2"}, rarity = 1},
|
||||
@ -95,3 +97,29 @@ farming.registered_plants["farming:coffee"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
y_max = mg and 50 or 55,
|
||||
spawn_on = mg and {"default:dirt_with_grass"} or {"default:dirt_with_dry_grass",
|
||||
"default:dirt_with_rainforest_litter", "default:dry_dirt_with_dry_grass"}
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = def.spawn_on,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.coffee,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 12,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 20,
|
||||
y_max = def.y_max,
|
||||
decoration = "farming:coffee_5"
|
||||
})
|
||||
|
@ -113,6 +113,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -159,6 +160,7 @@ minetest.register_node("farming:corn_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_corn_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:corn 2"}, rarity = 1},
|
||||
@ -176,3 +178,21 @@ farming.registered_plants["farming:corn"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.corn,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 134,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 12,
|
||||
y_max = 25,
|
||||
decoration = "farming:corn_7"
|
||||
})
|
||||
|
@ -34,14 +34,15 @@ minetest.register_node("farming:seed_cotton", {
|
||||
inventory_image = "farming_cotton_seed.png",
|
||||
wield_image = "farming_cotton_seed.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 4},
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 4, growing = 1},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
next_plant = "farming:cotton_1",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:cotton_1")
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_cotton")
|
||||
end
|
||||
})
|
||||
|
||||
@ -99,6 +100,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 4, plant = 1, attached_node = 1,
|
||||
@ -156,6 +158,7 @@ minetest.register_node("farming:cotton_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_cotton_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:cotton"}, rarity = 1},
|
||||
@ -184,3 +187,30 @@ farming.register_plant("farming:cotton", {
|
||||
groups = {flammable = 2},
|
||||
steps = 8,
|
||||
})]]
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
grow_on = mg and {"default:dirt_with_grass"} or {"default:dry_dirt_with_dry_grass"},
|
||||
biome = mg and {"jungle"} or {"savanna"}
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "farming:cotton_wild",
|
||||
deco_type = "simple",
|
||||
place_on = def.grow_on,
|
||||
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 = def.biome,
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "farming:cotton_wild"
|
||||
})
|
||||
|
@ -47,6 +47,7 @@ minetest.register_node("farming:cucumber_3", table.copy(def))
|
||||
-- stage 4 (final)
|
||||
def.tiles = {"farming_cucumber_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:cucumber 2"}, rarity = 1},
|
||||
@ -63,3 +64,30 @@ farming.registered_plants["farming:cucumber"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
near = mg and "group:water" or nil,
|
||||
num = mg and 1 or -1,
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.cucumber,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 245,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = 20,
|
||||
decoration = "farming:cucumber_4",
|
||||
spawn_by = def.near,
|
||||
num_spawn_by = def.num
|
||||
})
|
||||
|
90
mods/farming/crops/eggplant.lua
Normal file
@ -0,0 +1,90 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- eggplant
|
||||
minetest.register_craftitem("farming:eggplant", {
|
||||
description = S("Eggplant"),
|
||||
inventory_image = "farming_eggplant.png",
|
||||
groups = {seed = 2, food_eggplant = 1, flammable = 2},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:eggplant_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(3)
|
||||
})
|
||||
|
||||
-- definition
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"farming_eggplant_1.png"},
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
waving = 1,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
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:eggplant_1", table.copy(def))
|
||||
|
||||
-- stage 2
|
||||
def.tiles = {"farming_eggplant_2.png"}
|
||||
minetest.register_node("farming:eggplant_2", table.copy(def))
|
||||
|
||||
-- stage 3
|
||||
def.tiles = {"farming_eggplant_3.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:eggplant"}, rarity = 1},
|
||||
{items = {"farming:eggplant"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:eggplant_3", table.copy(def))
|
||||
|
||||
-- stage 4
|
||||
def.tiles = {"farming_eggplant_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:eggplant 2"}, rarity = 1},
|
||||
{items = {"farming:eggplant 2"}, rarity = 2}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:eggplant_4", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:eggplant"] = {
|
||||
crop = "farming:eggplant",
|
||||
seed = "farming:eggplant",
|
||||
minlight = 7,
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = farming.eggplant,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 356,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
biomes = {"deciduous_forest"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "farming:eggplant_4",
|
||||
param2 = 3
|
||||
})
|
@ -7,7 +7,7 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- potato
|
||||
-- garlic clove
|
||||
minetest.register_craftitem("farming:garlic_clove", {
|
||||
description = S("Garlic clove"),
|
||||
inventory_image = "crops_garlic_clove.png",
|
||||
@ -26,9 +26,8 @@ minetest.register_craftitem("farming:garlic", {
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "farming:garlic_clove 8",
|
||||
recipe = {"farming:garlic"}
|
||||
recipe = {{"farming:garlic"}}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
@ -117,6 +116,7 @@ minetest.register_node("farming:garlic_4", table.copy(def))
|
||||
-- stage 5
|
||||
def.tiles = {"crops_garlic_plant_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:garlic 3"}, rarity = 1},
|
||||
@ -134,3 +134,23 @@ farming.registered_plants["farming:garlic"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.garlic,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 467,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 35,
|
||||
decoration = "farming:garlic_5",
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
|
89
mods/farming/crops/ginger.lua
Normal file
@ -0,0 +1,89 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- ginger
|
||||
minetest.register_craftitem("farming:ginger", {
|
||||
description = S("Ginger"),
|
||||
inventory_image = "farming_ginger.png",
|
||||
groups = {seed = 2, food_ginger = 1, flammable = 2},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:ginger_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(1)
|
||||
})
|
||||
|
||||
-- ginger definition
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"farming_ginger_1.png"},
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
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:ginger_1", table.copy(def))
|
||||
|
||||
-- stage 2
|
||||
def.tiles = {"farming_ginger_2.png"}
|
||||
minetest.register_node("farming:ginger_2", table.copy(def))
|
||||
|
||||
-- stage 3
|
||||
def.tiles = {"farming_ginger_3.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:ginger"}, rarity = 1},
|
||||
{items = {"farming:ginger"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:ginger_3", table.copy(def))
|
||||
|
||||
-- stage 4 (final)
|
||||
def.tiles = {"farming_ginger_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:ginger 2"}, rarity = 1},
|
||||
{items = {"farming:ginger 2"}, rarity = 2}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:ginger_4", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:ginger"] = {
|
||||
crop = "farming:ginger",
|
||||
seed = "farming:ginger",
|
||||
minlight = 5,
|
||||
maxlight = default.LIGHT_MAX,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
name = "farming:ginger_4",
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_rainforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.ginger,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 999,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_max = 80,
|
||||
y_min = 1,
|
||||
decoration = "farming:ginger_3",
|
||||
param2 = 3
|
||||
})
|
@ -217,6 +217,7 @@ minetest.register_node("farming:grapes_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_grapes_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:trellis"}, rarity = 1},
|
||||
@ -260,3 +261,21 @@ minetest.register_node("farming:grapebush", {
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults()
|
||||
})
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.grapes,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 578,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 25,
|
||||
y_max = 50,
|
||||
decoration = "farming:grapebush"
|
||||
})
|
||||
|
@ -8,14 +8,15 @@ minetest.register_node("farming:seed_hemp", {
|
||||
inventory_image = "farming_hemp_seed.png",
|
||||
wield_image = "farming_hemp_seed.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1},
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, growing = 1},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
next_plant = "farming:hemp_1",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:hemp_1")
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_hemp")
|
||||
end
|
||||
})
|
||||
|
||||
@ -101,7 +102,8 @@ minetest.register_node("farming:hemp_block", {
|
||||
description = S("Hemp Block"),
|
||||
tiles = {"farming_hemp_block.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 1, oddly_breakable_by_hand = 1, flammable = 2}
|
||||
groups = {snappy = 1, oddly_breakable_by_hand = 1, flammable = 2},
|
||||
sounds = default.node_sound_leaves_defaults()
|
||||
})
|
||||
|
||||
minetest.register_craft( {
|
||||
@ -190,6 +192,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -242,6 +245,7 @@ minetest.register_node("farming:hemp_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_hemp_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:hemp_leaf 2"}, rarity = 1},
|
||||
@ -256,7 +260,27 @@ minetest.register_node("farming:hemp_8", table.copy(def))
|
||||
farming.registered_plants["farming:hemp"] = {
|
||||
crop = "farming:hemp",
|
||||
seed = "farming:seed_hemp",
|
||||
mminlight = farming.min_light,
|
||||
minlight = farming.min_light,
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_rainforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.hemp,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 420,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 45,
|
||||
decoration = "farming:hemp_7",
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
|
@ -8,7 +8,7 @@ minetest.register_craftitem("farming:lettuce", {
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:lettuce_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(2),
|
||||
on_use = minetest.item_eat(2)
|
||||
})
|
||||
|
||||
local def = {
|
||||
@ -45,6 +45,7 @@ minetest.register_node("farming:lettuce_4", table.copy(def))
|
||||
-- stage 5
|
||||
def.tiles = {"farming_lettuce_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {'farming:lettuce 2'}, rarity = 1},
|
||||
@ -61,3 +62,21 @@ farming.registered_plants["farming:lettuce"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.lettuce,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 689,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 35,
|
||||
decoration = "farming:lettuce_5"
|
||||
})
|
||||
|
@ -79,7 +79,7 @@ minetest.register_node("farming:melon_8", {
|
||||
"farming_melon_side.png"
|
||||
},
|
||||
groups = {
|
||||
food_melon = 1, snappy = 2, oddly_breakable_by_hand = 1,
|
||||
food_melon = 1, snappy = 3, choppy = 3, oddly_breakable_by_hand = 2,
|
||||
flammable = 2, plant = 1
|
||||
},
|
||||
drop = "farming:melon_8",
|
||||
@ -96,3 +96,33 @@ farming.registered_plants["farming:melon"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
y_max = mg and 20 or 6,
|
||||
spawn_on = mg and {"default:dirt_with_grass"} or {"default:dirt_with_dry_grass",
|
||||
"default:dirt_with_rainforest_litter"},
|
||||
near = mg and "group:water" or nil,
|
||||
num = mg and 1 or -1,
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = def.spawn_on,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.melon,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 790,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = def.y_max,
|
||||
decoration = "farming:melon_8",
|
||||
spawn_by = def.near,
|
||||
num_spawn_by = def.num
|
||||
})
|
||||
|
@ -2,13 +2,21 @@
|
||||
local S = farming.intllib
|
||||
|
||||
-- mint seed
|
||||
minetest.register_craftitem("farming:seed_mint", {
|
||||
minetest.register_node("farming:seed_mint", {
|
||||
description = S("Mint Seeds"),
|
||||
tiles = {"farming_mint_seeds.png"},
|
||||
inventory_image = "farming_mint_seeds.png",
|
||||
groups = {seed = 2, flammable = 2},
|
||||
wield_image = "farming_mint_seeds.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, growing = 1, flammable = 2},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
next_plant = "farming:mint_1",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(
|
||||
itemstack, placer, pointed_thing, "farming:mint_1")
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_mint")
|
||||
end
|
||||
})
|
||||
|
||||
@ -47,6 +55,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -69,6 +78,7 @@ minetest.register_node("farming:mint_3", table.copy(def))
|
||||
-- stage 4 (final)
|
||||
def.tiles = {"farming_mint_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:mint_leaf 2"}, rarity = 1},
|
||||
@ -87,3 +97,23 @@ farming.registered_plants["farming:mint"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_coniferous_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.mint,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 801,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 0,
|
||||
y_max = 75,
|
||||
decoration = "farming:mint_4",
|
||||
spawn_by = {"group:water", "group:sand"},
|
||||
num_spawn_by = 1
|
||||
})
|
||||
|
@ -36,6 +36,12 @@ minetest.register_craft({
|
||||
replacements = {{"farming:pot", "farming:pot"}}
|
||||
})
|
||||
|
||||
-- yellow dye
|
||||
minetest.register_craft({
|
||||
output = "dye:yellow",
|
||||
recipe = {{"group:food_onion"}}
|
||||
})
|
||||
|
||||
-- crop definition
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
@ -48,6 +54,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 3, plant = 1, attached_node = 1,
|
||||
@ -74,6 +81,7 @@ minetest.register_node("farming:onion_4", table.copy(def))
|
||||
-- stage 5
|
||||
def.tiles = {"crops_onion_plant_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
max_items = 5, items = {
|
||||
{items = {"farming:onion"}, rarity = 1},
|
||||
@ -93,3 +101,21 @@ farming.registered_plants["farming:onion"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.onion,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 912,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 28,
|
||||
decoration = "farming:onion_5"
|
||||
})
|
||||
|
@ -19,6 +19,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -37,6 +38,7 @@ minetest.register_node("farming:parsley_2", table.copy(def))
|
||||
-- stage 3 (final)
|
||||
def.tiles = {"farming_parsley_3.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:parsley 2"}, rarity = 1},
|
||||
@ -54,3 +56,21 @@ farming.registered_plants["farming:parsley"] = {
|
||||
maxlight = 15,
|
||||
steps = 3
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.parsley,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 23,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 10,
|
||||
y_max = 40,
|
||||
decoration = "farming:parsley_3"
|
||||
})
|
||||
|
@ -71,6 +71,7 @@ minetest.register_node("farming:pea_4", table.copy(def))
|
||||
-- stage 5
|
||||
def.tiles = {"farming_pea_5.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
max_items = 5, items = {
|
||||
{items = {"farming:pea_pod"}, rarity = 1},
|
||||
@ -89,3 +90,21 @@ farming.registered_plants["farming:pea_pod"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.peas,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 132,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 25,
|
||||
y_max = 55,
|
||||
decoration = "farming:pea_5"
|
||||
})
|
||||
|
@ -113,6 +113,7 @@ minetest.register_node("farming:pepper_4", table.copy(def))
|
||||
|
||||
-- stage 5 (green pepper)
|
||||
def.tiles = {"crops_pepper_plant_5.png"}
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
max_items = 2, items = {
|
||||
{items = {"farming:pepper 2"}, rarity = 1},
|
||||
@ -153,3 +154,29 @@ farming.registered_plants["farming:pepper"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 5
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
grow_on = mg and {"default:dirt_with_grass"} or {"default:dirt_with_rainforest_litter"}
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = def.grow_on,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.pepper,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 243,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 35,
|
||||
decoration = {"farming:pepper_5", "farming:pepper_6", "farming:pepper_7"},
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
|
@ -85,6 +85,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -123,6 +124,7 @@ minetest.register_node("farming:pineapple_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_pineapple_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:pineapple"}, rarity = 1},
|
||||
@ -139,3 +141,32 @@ farming.registered_plants["farming:pineapple"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
grow_on = mg and {"default:dirt_with_grass"} or {"default:dirt_with_dry_grass",
|
||||
"default:dry_dirt_with_dry_grass"},
|
||||
grow_near = mg and "group:sand" or nil,
|
||||
num = mg and 1 or -1
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = def.grow_on,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.pineapple,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 354,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 11,
|
||||
y_max = 30,
|
||||
decoration = {"farming:pineapple_8"},
|
||||
spawn_by = def.grow_near,
|
||||
num_spawn_by = def.num
|
||||
})
|
||||
|
@ -94,6 +94,7 @@ minetest.register_node("farming:potato_3", table.copy(def))
|
||||
-- stage 4
|
||||
def.tiles = {"farming_potato_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:potato 2"}, rarity = 1},
|
||||
@ -110,3 +111,21 @@ farming.registered_plants["farming:potato"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.potato,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 465,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 15,
|
||||
y_max = 40,
|
||||
decoration = "farming:potato_3"
|
||||
})
|
||||
|
@ -1,8 +1,4 @@
|
||||
|
||||
--[[
|
||||
Big thanks to PainterlyPack.net for allowing me to use these textures
|
||||
]]
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- pumpkin slice
|
||||
@ -34,12 +30,12 @@ minetest.register_craft({
|
||||
minetest.register_node("farming:jackolantern", {
|
||||
description = S("Jack 'O Lantern (punch to turn on and off)"),
|
||||
tiles = {
|
||||
"farming_pumpkin_top.png", "farming_pumpkin_top.png",
|
||||
"farming_pumpkin_bottom.png^farming_pumpkin_top.png", "farming_pumpkin_bottom.png",
|
||||
"farming_pumpkin_side.png", "farming_pumpkin_side.png",
|
||||
"farming_pumpkin_side.png", "farming_pumpkin_face_off.png"
|
||||
"farming_pumpkin_side.png", "farming_pumpkin_side.png^farming_pumpkin_face_off.png"
|
||||
},
|
||||
paramtype2 = "facedir",
|
||||
groups = {choppy = 1, oddly_breakable_by_hand = 1, flammable = 2},
|
||||
groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_punch = function(pos, node, puncher)
|
||||
local name = puncher:get_player_name() or ""
|
||||
@ -51,14 +47,14 @@ minetest.register_node("farming:jackolantern", {
|
||||
|
||||
minetest.register_node("farming:jackolantern_on", {
|
||||
tiles = {
|
||||
"farming_pumpkin_top.png", "farming_pumpkin_top.png",
|
||||
"farming_pumpkin_bottom.png^farming_pumpkin_top.png", "farming_pumpkin_bottom.png",
|
||||
"farming_pumpkin_side.png", "farming_pumpkin_side.png",
|
||||
"farming_pumpkin_side.png", "farming_pumpkin_face_on.png"
|
||||
"farming_pumpkin_side.png", "farming_pumpkin_side.png^farming_pumpkin_face_on.png"
|
||||
},
|
||||
light_source = default.LIGHT_MAX - 1,
|
||||
paramtype2 = "facedir",
|
||||
groups = {
|
||||
choppy = 1, oddly_breakable_by_hand = 1, flammable = 2,
|
||||
snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2,
|
||||
not_in_creative_inventory = 1
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
@ -182,12 +178,12 @@ minetest.register_node("farming:pumpkin_7", table.copy(def))
|
||||
minetest.register_node("farming:pumpkin_8", {
|
||||
description = S("Pumpkin"),
|
||||
tiles = {
|
||||
"farming_pumpkin_top.png",
|
||||
"farming_pumpkin_bottom.png^farming_pumpkin_top.png",
|
||||
"farming_pumpkin_bottom.png",
|
||||
"farming_pumpkin_side.png"
|
||||
},
|
||||
groups = {
|
||||
food_pumpkin = 1, choppy = 2, oddly_breakable_by_hand = 1,
|
||||
food_pumpkin = 1, snappy = 3, choppy = 3, oddly_breakable_by_hand = 2,
|
||||
flammable = 2, plant = 1
|
||||
},
|
||||
drop = "farming:pumpkin_8",
|
||||
@ -206,3 +202,31 @@ farming.registered_plants["farming:pumpkin"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
y_max = mg and 20 or 6,
|
||||
near = mg and "group:water" or nil,
|
||||
num = mg and 1 or -1,
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.pumpkin,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 576,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = def.y_max,
|
||||
decoration = "farming:pumpkin_8",
|
||||
spawn_by = def.near,
|
||||
num_spawn_by = def.num
|
||||
})
|
||||
|
@ -61,6 +61,7 @@ minetest.register_node("farming:raspberry_3", table.copy(def))
|
||||
-- stage 4 (final)
|
||||
def.tiles = {"farming_raspberry_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:raspberries 2"}, rarity = 1},
|
||||
@ -78,3 +79,21 @@ farming.registered_plants["farming:raspberries"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.raspberry,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 687,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 15,
|
||||
decoration = "farming:raspberry_4"
|
||||
})
|
||||
|
@ -38,6 +38,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -55,9 +56,19 @@ minetest.register_node("farming:rhubarb_1", table.copy(def))
|
||||
def.tiles = {"farming_rhubarb_2.png"}
|
||||
minetest.register_node("farming:rhubarb_2", table.copy(def))
|
||||
|
||||
-- stage 3 (final)
|
||||
-- stage3
|
||||
def.tiles = {"farming_rhubarb_3.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:rhubarb"}, rarity = 1},
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:rhubarb_3", table.copy(def))
|
||||
|
||||
-- stage 4 (final)
|
||||
def.tiles = {"farming_rhubarb_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:rhubarb 2"}, rarity = 1},
|
||||
@ -65,7 +76,7 @@ def.drop = {
|
||||
{items = {"farming:rhubarb"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:rhubarb_3", table.copy(def))
|
||||
minetest.register_node("farming:rhubarb_4", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:rhubarb"] = {
|
||||
@ -73,5 +84,23 @@ farming.registered_plants["farming:rhubarb"] = {
|
||||
seed = "farming:rhubarb",
|
||||
minlight = 10,
|
||||
maxlight = 12,
|
||||
steps = 3
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.rhubarb,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 798,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 20,
|
||||
decoration = "farming:rhubarb_3"
|
||||
})
|
||||
|
@ -1,19 +1,41 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- rice seed
|
||||
minetest.register_node("farming:seed_rice", {
|
||||
description = S("Rice Seed"),
|
||||
tiles = {"farming_rice_seed.png"},
|
||||
inventory_image = "farming_rice_seed.png",
|
||||
wield_image = "farming_rice_seed.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 4, growing = 1},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
next_plant = "farming:rice_1",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_rice")
|
||||
end
|
||||
})
|
||||
|
||||
-- rice
|
||||
minetest.register_craftitem("farming:rice", {
|
||||
description = S("Rice"),
|
||||
inventory_image = "farming_rice.png",
|
||||
groups = {seed = 2, food_rice = 1, flammable = 2},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:rice_1")
|
||||
end
|
||||
})
|
||||
|
||||
-- replacement for rice seeds that was removed
|
||||
minetest.register_alias("farming:seed_rice", "farming:rice")
|
||||
-- dry rice seed to give edible rice
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
cooktime = 1,
|
||||
output = "farming:rice",
|
||||
recipe = "farming:seed_rice"
|
||||
})
|
||||
|
||||
-- rice flour and bread
|
||||
minetest.register_craftitem("farming:rice_bread", {
|
||||
description = S("Rice Bread"),
|
||||
inventory_image = "farming_rice_bread.png",
|
||||
@ -54,6 +76,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 4, plant = 1, attached_node = 1,
|
||||
@ -99,8 +122,9 @@ minetest.register_node("farming:rice_6", table.copy(def))
|
||||
def.tiles = {"farming_rice_7.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:rice"}, rarity = 1},
|
||||
{items = {"farming:rice"}, rarity = 3}
|
||||
{items = {"farming:seed_rice"}, rarity = 1},
|
||||
{items = {"farming:seed_rice"}, rarity = 2},
|
||||
{items = {"farming:seed_rice"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:rice_7", table.copy(def))
|
||||
@ -108,10 +132,12 @@ minetest.register_node("farming:rice_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_rice_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:rice 2"}, rarity = 1},
|
||||
{items = {"farming:rice"}, rarity = 2}
|
||||
{items = {"farming:seed_rice 2"}, rarity = 1},
|
||||
{items = {"farming:seed_rice 2"}, rarity = 2},
|
||||
{items = {"farming:seed_rice"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:rice_8", table.copy(def))
|
||||
@ -119,7 +145,7 @@ minetest.register_node("farming:rice_8", table.copy(def))
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:rice"] = {
|
||||
crop = "farming:rice",
|
||||
seed = "farming:rice",
|
||||
seed = "farming:seed_rice",
|
||||
minlight = farming.min_light,
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
|
@ -171,6 +171,7 @@ minetest.register_node("farming:soy_6", table.copy(def))
|
||||
-- stage 7
|
||||
def.tiles = {"farming_soy_7.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
max_items = 5, items = {
|
||||
{items = {"farming:soy_pod"}, rarity = 1},
|
||||
@ -190,3 +191,28 @@ farming.registered_plants["farming:soy_pod"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 7
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
local mg = farming.mapgen == "v6"
|
||||
|
||||
def = {
|
||||
spawn_on = mg and {"default:dirt_with_grass"} or {"default:dirt_with_dry_grass",
|
||||
"default:dirt_with_rainforest_litter", "default:dry_dirt_with_dry_grass"}
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = def.spawn_on,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.soy,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 809,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 20,
|
||||
y_max = 50,
|
||||
decoration = "farming:soy_6"
|
||||
})
|
||||
|
90
mods/farming/crops/spinach.lua
Normal file
@ -0,0 +1,90 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- spinach
|
||||
minetest.register_craftitem("farming:spinach", {
|
||||
description = S("Spinach"),
|
||||
inventory_image = "farming_spinach.png",
|
||||
groups = {seed = 2, food_spinach = 1, flammable = 2},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:spinach_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(1)
|
||||
})
|
||||
|
||||
-- definition
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"farming_spinach_1.png"},
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
waving = 1,
|
||||
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:spinach_1", table.copy(def))
|
||||
|
||||
-- stage 2
|
||||
def.tiles = {"farming_spinach_2.png"}
|
||||
minetest.register_node("farming:spinach_2", table.copy(def))
|
||||
|
||||
-- stage 3
|
||||
def.tiles = {"farming_spinach_3.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:spinach"}, rarity = 1},
|
||||
{items = {"farming:spinach"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:spinach_3", table.copy(def))
|
||||
|
||||
-- stage 4
|
||||
def.tiles = {"farming_spinach_4.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:spinach 2"}, rarity = 1},
|
||||
{items = {"farming:spinach 2"}, rarity = 2},
|
||||
{items = {"farming:spinach 2"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node("farming:spinach_4", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["farming:spinach"] = {
|
||||
crop = "farming:spinach",
|
||||
seed = "farming:spinach",
|
||||
minlight = 7,
|
||||
maxlight = farming.max_light,
|
||||
steps = 4
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = farming.spinach,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 910,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
biomes = {"deciduous_forest"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "farming:spinach_4",
|
||||
param2 = 3
|
||||
})
|
112
mods/farming/crops/strawberry.lua
Normal file
@ -0,0 +1,112 @@
|
||||
|
||||
local S = farming.intllib
|
||||
|
||||
-- Strawberry (can also be planted as seed)
|
||||
minetest.register_craftitem(":ethereal:strawberry", {
|
||||
description = S("Strawberry"),
|
||||
inventory_image = "ethereal_strawberry.png",
|
||||
groups = {seed = 2, food_strawberry = 1, food_berry = 1, flammable = 2},
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "ethereal:strawberry_1")
|
||||
end,
|
||||
on_use = minetest.item_eat(1)
|
||||
})
|
||||
|
||||
-- Define Strawberry Bush growth stages
|
||||
local def = {
|
||||
drawtype = "plantlike",
|
||||
tiles = {"ethereal_strawberry_1.png"},
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
waving = 1,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}
|
||||
},
|
||||
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(":ethereal:strawberry_1", table.copy(def))
|
||||
|
||||
-- stage 2
|
||||
def.tiles = {"ethereal_strawberry_2.png"}
|
||||
minetest.register_node(":ethereal:strawberry_2", table.copy(def))
|
||||
|
||||
-- stage 3
|
||||
def.tiles = {"ethereal_strawberry_3.png"}
|
||||
minetest.register_node(":ethereal:strawberry_3", table.copy(def))
|
||||
|
||||
-- stage 4
|
||||
def.tiles = {"ethereal_strawberry_4.png"}
|
||||
minetest.register_node(":ethereal:strawberry_4", table.copy(def))
|
||||
|
||||
-- stage 5
|
||||
def.tiles = {"ethereal_strawberry_5.png"}
|
||||
minetest.register_node(":ethereal:strawberry_5", table.copy(def))
|
||||
|
||||
-- stage 6
|
||||
def.tiles = {"ethereal_strawberry_6.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"ethereal:strawberry 1"}, rarity = 2},
|
||||
{items = {"ethereal:strawberry 2"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node(":ethereal:strawberry_6", table.copy(def))
|
||||
|
||||
-- stage 7
|
||||
def.tiles = {"ethereal_strawberry_7.png"}
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"ethereal:strawberry 1"}, rarity = 1},
|
||||
{items = {"ethereal:strawberry 2"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node(":ethereal:strawberry_7", table.copy(def))
|
||||
|
||||
-- stage 8
|
||||
def.tiles = {"ethereal_strawberry_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"ethereal:strawberry 2"}, rarity = 1},
|
||||
{items = {"ethereal:strawberry 3"}, rarity = 3}
|
||||
}
|
||||
}
|
||||
minetest.register_node(":ethereal:strawberry_8", table.copy(def))
|
||||
|
||||
-- add to registered_plants
|
||||
farming.registered_plants["ethereal:strawberry"] = {
|
||||
crop = "ethereal:strawberry",
|
||||
seed = "ethereal:strawberry",
|
||||
minlight = farming.min_light,
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.strawberry,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 143,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 20,
|
||||
y_max = 55,
|
||||
decoration = "ethereal:strawberry_7"
|
||||
})
|
@ -8,12 +8,22 @@ minetest.register_craftitem("farming:sunflower", {
|
||||
})
|
||||
|
||||
-- sunflower seeds
|
||||
minetest.register_craftitem("farming:seed_sunflower", {
|
||||
minetest.register_node("farming:seed_sunflower", {
|
||||
description = S("Sunflower Seeds"),
|
||||
tiles = {"farming_sunflower_seeds.png"},
|
||||
inventory_image = "farming_sunflower_seeds.png",
|
||||
groups = {seed = 2, food_sunflower_seeds = 1, flammable = 2},
|
||||
wield_image = "farming_sunflower_seeds.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, growing = 1,
|
||||
food_sunflower_seeds = 1, flammable = 2},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
next_plant = "farming:sunflower_1",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:sunflower_1")
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_sunflower")
|
||||
end
|
||||
})
|
||||
|
||||
@ -98,6 +108,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -137,6 +148,7 @@ minetest.register_node("farming:sunflower_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_sunflower_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:sunflower"}, rarity = 1},
|
||||
@ -153,3 +165,21 @@ farming.registered_plants["farming:sunflower"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.sunflower,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 254,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 10,
|
||||
y_max = 40,
|
||||
decoration = "farming:sunflower_8"
|
||||
})
|
||||
|
@ -43,6 +43,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -87,6 +88,7 @@ minetest.register_node("farming:tomato_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_tomato_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:tomato 3"}, rarity = 1},
|
||||
@ -104,3 +106,21 @@ farming.registered_plants["farming:tomato"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.tomato,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 365,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 25,
|
||||
decoration = "farming:tomato_7"
|
||||
})
|
||||
|
@ -20,6 +20,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 2, plant = 1, attached_node = 1,
|
||||
@ -102,6 +103,7 @@ minetest.register_node("farming:vanilla_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_vanilla_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:vanilla 2"}, rarity = 1},
|
||||
@ -120,3 +122,21 @@ farming.registered_plants["farming:vanilla"] = {
|
||||
maxlight = farming.max_light,
|
||||
steps = 8
|
||||
}
|
||||
|
||||
-- mapgen
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = farming.vanilla,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 476,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 35,
|
||||
decoration = "farming:vanilla_7"
|
||||
})
|
||||
|
@ -8,14 +8,15 @@ minetest.register_node("farming:seed_wheat", {
|
||||
inventory_image = "farming_wheat_seed.png",
|
||||
wield_image = "farming_wheat_seed.png",
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 4},
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 4, growing = 1},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
next_plant = "farming:wheat_1",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:wheat_1")
|
||||
return farming.place_seed(itemstack, placer, pointed_thing, "farming:seed_wheat")
|
||||
end
|
||||
})
|
||||
|
||||
@ -158,6 +159,7 @@ local def = {
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
drop = "",
|
||||
waving = 1,
|
||||
selection_box = farming.select,
|
||||
groups = {
|
||||
snappy = 3, flammable = 4, plant = 1, attached_node = 1,
|
||||
@ -216,6 +218,7 @@ minetest.register_node("farming:wheat_7", table.copy(def))
|
||||
-- stage 8 (final)
|
||||
def.tiles = {"farming_wheat_8.png"}
|
||||
def.groups.growing = nil
|
||||
def.selection_box = farming.select_final
|
||||
def.drop = {
|
||||
items = {
|
||||
{items = {"farming:wheat"}, rarity = 1},
|
||||
|
@ -6,6 +6,9 @@
|
||||
--]]
|
||||
|
||||
-- true to enable crop/food in-game and on mapgen set spawn rarety
|
||||
farming.asparagus = 0.002
|
||||
farming.eggplant = 0.002
|
||||
farming.spinach = 0.002
|
||||
farming.carrot = 0.001
|
||||
farming.potato = 0.001
|
||||
farming.tomato = 0.001
|
||||
@ -38,12 +41,11 @@ farming.vanilla = 0.001
|
||||
farming.artichoke = 0.001
|
||||
farming.parsley = 0.002
|
||||
farming.sunflower = 0.001
|
||||
farming.ginger = 0.002
|
||||
farming.strawberry = not minetest.get_modpath("ethereal") and 0.002
|
||||
farming.grains = true -- true or false only
|
||||
farming.rice = true
|
||||
|
||||
-- default rarety of crops on map (higher number = more crops)
|
||||
farming.rarety = 0.002
|
||||
|
||||
-- default minimum and maximum light levels crops need to grow
|
||||
farming.min_light = 12
|
||||
farming.max_light = 15
|
||||
|
@ -2,6 +2,7 @@
|
||||
local S = farming.intllib
|
||||
|
||||
--= filter sea water into river water
|
||||
|
||||
minetest.register_craft({
|
||||
output = "bucket:bucket_river_water",
|
||||
recipe = {
|
||||
@ -67,18 +68,40 @@ minetest.register_craft({
|
||||
recipe = "default:papyrus"
|
||||
})
|
||||
|
||||
minetest.register_node("farming:sugar_cube", {
|
||||
description = S("Sugar Cube"),
|
||||
tiles = {"farming_sugar_cube.png"},
|
||||
groups = {crumbly = 2},
|
||||
floodable = true,
|
||||
sounds = default.node_sound_gravel_defaults()
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:sugar_cube",
|
||||
recipe = {
|
||||
{"farming:sugar", "farming:sugar", "farming:sugar"},
|
||||
{"farming:sugar", "farming:sugar", "farming:sugar"},
|
||||
{"farming:sugar", "farming:sugar", "farming:sugar"}
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:sugar 9",
|
||||
recipe = {{"farming:sugar_cube"}}
|
||||
})
|
||||
|
||||
--= Sugar caramel
|
||||
|
||||
minetest.register_craftitem("farming:caramel", {
|
||||
description = S("Caramel"),
|
||||
inventory_image = "farming_caramel.png",
|
||||
inventory_image = "farming_caramel.png"
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
cooktime = 6,
|
||||
output = "farming:caramel",
|
||||
recipe = "group:food_sugar",
|
||||
recipe = "group:food_sugar"
|
||||
})
|
||||
|
||||
--= Salt
|
||||
@ -165,8 +188,9 @@ minetest.register_node("farming:salt_crystal", {
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25}
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:salt 9",
|
||||
recipe = {
|
||||
@ -233,6 +257,7 @@ minetest.register_craft({
|
||||
{"group:food_sugar", "dye:pink", "group:food_sugar"}
|
||||
},
|
||||
replacements = {
|
||||
{"group:food_cornstarch", "farming:bowl"},
|
||||
{"group:food_cornstarch", "farming:bowl"},
|
||||
{"group:food_rose_water", "vessels:glass_bottle"}
|
||||
}
|
||||
@ -328,7 +353,7 @@ minetest.register_craftitem("farming:jaffa_cake", {
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:jaffa_cake",
|
||||
output = "farming:jaffa_cake 3",
|
||||
recipe = {
|
||||
{"farming:baking_tray", "group:food_egg", "group:food_sugar"},
|
||||
{"group:food_flour", "group:food_cocoa", "group:food_orange"},
|
||||
@ -337,7 +362,8 @@ minetest.register_craft({
|
||||
replacements = {
|
||||
{"farming:baking_tray", "farming:baking_tray"},
|
||||
{"mobs:bucket_milk", "bucket:bucket_empty"},
|
||||
{"farming:soy_milk", "vessels:drining_glass"}
|
||||
{"mobs:wooden_bucket_milk", "wooden_bucket:bucket_wood_empty"},
|
||||
{"farming:soy_milk", "vessels:drinking_glass"}
|
||||
}
|
||||
})
|
||||
|
||||
@ -366,13 +392,9 @@ minetest.register_craftitem("farming:cactus_juice", {
|
||||
groups = {vessel = 1, drink = 1},
|
||||
on_use = function(itemstack, user, pointed_thing)
|
||||
if user then
|
||||
if math.random(5) == 1 then
|
||||
return minetest.do_item_eat(-1, "vessels:drinking_glass",
|
||||
local num = math.random(5) == 1 and -1 or 2
|
||||
return minetest.do_item_eat(num, "vessels:drinking_glass",
|
||||
itemstack, user, pointed_thing)
|
||||
else
|
||||
return minetest.do_item_eat(2, "vessels:drinking_glass",
|
||||
itemstack, user, pointed_thing)
|
||||
end
|
||||
end
|
||||
end
|
||||
})
|
||||
@ -416,6 +438,21 @@ minetest.register_craft({
|
||||
}
|
||||
})
|
||||
|
||||
-- Mac & Cheese
|
||||
|
||||
minetest.register_craftitem("farming:mac_and_cheese", {
|
||||
description = S("Mac & Cheese"),
|
||||
inventory_image = "farming_mac_and_cheese.png",
|
||||
on_use = minetest.item_eat(6, "farming:bowl")
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "farming:mac_and_cheese",
|
||||
recipe = {
|
||||
{"group:food_pasta", "group:food_cheese", "group:food_bowl"}
|
||||
}
|
||||
})
|
||||
|
||||
-- Spaghetti
|
||||
|
||||
minetest.register_craftitem("farming:spaghetti", {
|
||||
@ -585,7 +622,8 @@ minetest.register_craft({
|
||||
},
|
||||
replacements = {
|
||||
{"cucina_vegana:soy_milk", "vessels:drinking_glass"},
|
||||
{"group:food_milk", "bucket:bucket_empty"},
|
||||
{"mobs:bucket_milk", "bucket:bucket_empty"},
|
||||
{"mobs:wooden_bucket_milk", "wooden_bucket:bucket_wood_empty"},
|
||||
{"farming:vanilla_extract", "vessels:glass_bottle"}
|
||||
}
|
||||
})
|
||||
@ -630,7 +668,7 @@ minetest.register_craft({
|
||||
-- Onigiri
|
||||
|
||||
minetest.register_craftitem("farming:onigiri", {
|
||||
description = S("Onirigi"),
|
||||
description = S("Onigiri"),
|
||||
inventory_image = "farming_onigiri.png",
|
||||
on_use = minetest.item_eat(2),
|
||||
groups = {flammable = 2}
|
||||
|
@ -39,7 +39,7 @@ minetest.override_item("default:junglegrass", {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"farming:seed_cotton"}, rarity = 8},
|
||||
{items = {"farming:rice"},rarity = 8},
|
||||
{items = {"farming:seed_rice"},rarity = 8},
|
||||
{items = {"default:junglegrass"}}
|
||||
}
|
||||
}
|
||||
|
@ -190,29 +190,29 @@ farming.register_hoe(":farming:hoe_diamond", {
|
||||
-- Toolranks support
|
||||
if tr then
|
||||
|
||||
minetest.override_item("farming:hoe_wood", {
|
||||
original_description = "Wood Hoe",
|
||||
description = toolranks.create_description("Wood Hoe")})
|
||||
minetest.override_item("farming:hoe_wood", {
|
||||
original_description = S("Wood Hoe"),
|
||||
description = toolranks.create_description(S("Wood Hoe"))})
|
||||
|
||||
minetest.override_item("farming:hoe_stone", {
|
||||
original_description = "Stone Hoe",
|
||||
description = toolranks.create_description("Stone Hoe")})
|
||||
minetest.override_item("farming:hoe_stone", {
|
||||
original_description = S("Stone Hoe"),
|
||||
description = toolranks.create_description(S("Stone Hoe"))})
|
||||
|
||||
minetest.override_item("farming:hoe_steel", {
|
||||
original_description = "Steel Hoe",
|
||||
description = toolranks.create_description("Steel Hoe")})
|
||||
minetest.override_item("farming:hoe_steel", {
|
||||
original_description = S("Steel Hoe"),
|
||||
description = toolranks.create_description(S("Steel Hoe"))})
|
||||
|
||||
minetest.override_item("farming:hoe_bronze", {
|
||||
original_description = "Bronze Hoe",
|
||||
description = toolranks.create_description("Bronze Hoe")})
|
||||
minetest.override_item("farming:hoe_bronze", {
|
||||
original_description = S("Bronze Hoe"),
|
||||
description = toolranks.create_description(S("Bronze Hoe"))})
|
||||
|
||||
minetest.override_item("farming:hoe_mese", {
|
||||
original_description = "Mese Hoe",
|
||||
description = toolranks.create_description("Mese Hoe")})
|
||||
minetest.override_item("farming:hoe_mese", {
|
||||
original_description = S("Mese Hoe"),
|
||||
description = toolranks.create_description(S("Mese Hoe"))})
|
||||
|
||||
minetest.override_item("farming:hoe_diamond", {
|
||||
original_description = "Diamond Hoe",
|
||||
description = toolranks.create_description("Diamond Hoe")})
|
||||
minetest.override_item("farming:hoe_diamond", {
|
||||
original_description = S("Diamond Hoe"),
|
||||
description = toolranks.create_description(S("Diamond Hoe"))})
|
||||
end
|
||||
|
||||
|
||||
@ -314,13 +314,13 @@ local function throw_potion(itemstack, player)
|
||||
local dir = player:get_look_dir()
|
||||
local velocity = 20
|
||||
|
||||
obj:setvelocity({
|
||||
obj:set_velocity({
|
||||
x = dir.x * velocity,
|
||||
y = dir.y * velocity,
|
||||
z = dir.z * velocity
|
||||
})
|
||||
|
||||
obj:setacceleration({
|
||||
obj:set_acceleration({
|
||||
x = dir.x * -3,
|
||||
y = -9.5,
|
||||
z = dir.z * -3
|
||||
@ -386,15 +386,9 @@ minetest.register_tool("farming:scythe_mithril", {
|
||||
|
||||
local def = minetest.registered_nodes[node.name]
|
||||
|
||||
if not def then
|
||||
return
|
||||
end
|
||||
|
||||
if not def.drop then
|
||||
return
|
||||
end
|
||||
|
||||
if not def.groups
|
||||
if not def
|
||||
or not def.drop
|
||||
or not def.groups
|
||||
or not def.groups.plant then
|
||||
return
|
||||
end
|
||||
@ -481,34 +475,4 @@ if minetest.get_modpath("moreores") then
|
||||
{"", "", "group:stick"}
|
||||
}
|
||||
})
|
||||
--[[
|
||||
farming.register_hoe(":moreores:hoe_silver", {
|
||||
description = S("%s Hoe"):format(S("Silver")),
|
||||
inventory_image = "moreores_tool_silverhoe.png",
|
||||
max_uses = 300,
|
||||
material = "moreores:silver_ingot"
|
||||
})
|
||||
|
||||
farming.register_hoe(":moreores:hoe_mithril", {
|
||||
description = S("%s Hoe"):format(S("Mithril")),
|
||||
inventory_image = "moreores_tool_mithrilhoe.png",
|
||||
max_uses = 1000,
|
||||
material = "moreores:mithril_ingot"
|
||||
})
|
||||
|
||||
-- Toolranks support
|
||||
if tr then
|
||||
|
||||
local desc = S("%s Hoe"):format(S("Silver"))
|
||||
|
||||
minetest.override_item("moreores:hoe_silver", {
|
||||
original_description = desc,
|
||||
description = toolranks.create_description(desc)})
|
||||
|
||||
desc = S("%s Hoe"):format(S("Mithril"))
|
||||
|
||||
minetest.override_item("moreores:hoe_mithril", {
|
||||
original_description = desc,
|
||||
description = toolranks.create_description(desc)})
|
||||
end]]
|
||||
end
|
||||
|
@ -7,15 +7,20 @@
|
||||
|
||||
farming = {
|
||||
mod = "redo",
|
||||
version = "20220309",
|
||||
version = "20230407",
|
||||
path = minetest.get_modpath("farming"),
|
||||
select = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}
|
||||
},
|
||||
select_final = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, -2.5/16, 0.5}
|
||||
},
|
||||
registered_plants = {},
|
||||
min_light = 12,
|
||||
max_light = 15
|
||||
max_light = 15,
|
||||
mapgen = minetest.get_mapgen_setting("mg_name")
|
||||
}
|
||||
|
||||
|
||||
@ -103,7 +108,7 @@ end
|
||||
|
||||
-- Growth Logic
|
||||
local STAGE_LENGTH_AVG = tonumber(
|
||||
minetest.settings:get("farming_stage_length")) or 200 -- 160
|
||||
minetest.settings:get("farming_stage_length")) or 200
|
||||
local STAGE_LENGTH_DEV = STAGE_LENGTH_AVG / 6
|
||||
|
||||
|
||||
@ -193,8 +198,8 @@ local function reg_plant_stages(plant_name, stage, force_last)
|
||||
local old_constr = node_def.on_construct
|
||||
local old_destr = node_def.on_destruct
|
||||
|
||||
minetest.override_item(node_name,
|
||||
{
|
||||
minetest.override_item(node_name, {
|
||||
|
||||
on_construct = function(pos)
|
||||
|
||||
if old_constr then
|
||||
@ -302,13 +307,33 @@ end)
|
||||
-- Just in case a growing type or added node is missed (also catches existing
|
||||
-- nodes added to map before timers were incorporated).
|
||||
minetest.register_abm({
|
||||
label = "Start crop timer",
|
||||
nodenames = {"group:growing"},
|
||||
interval = 300,
|
||||
chance = 1,
|
||||
catch_up = false,
|
||||
action = function(pos, node)
|
||||
|
||||
-- check if group:growing node is a seed
|
||||
local def = minetest.registered_nodes[node.name]
|
||||
|
||||
if def and def.groups and def.groups.seed then
|
||||
|
||||
local next_stage = def.next_plant
|
||||
|
||||
def = minetest.registered_nodes[next_stage]
|
||||
|
||||
-- change seed to stage_1 or crop
|
||||
if def then
|
||||
|
||||
local p2 = def.place_param2 or 1
|
||||
|
||||
minetest.set_node(pos, {name = next_stage, param2 = p2})
|
||||
end
|
||||
else
|
||||
farming.handle_growth(pos, node)
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
|
||||
@ -410,6 +435,9 @@ function farming.refill_plant(player, plantname, index)
|
||||
if not player then return end
|
||||
|
||||
local inv = player:get_inventory()
|
||||
|
||||
if not inv then return end
|
||||
|
||||
local old_stack = inv:get_stack("main", index)
|
||||
|
||||
if old_stack:get_name() ~= "" then
|
||||
@ -533,19 +561,19 @@ farming.register_plant = function(name, def)
|
||||
inventory_image = def.inventory_image,
|
||||
wield_image = def.inventory_image,
|
||||
drawtype = "signlike",
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 2},
|
||||
groups = {seed = 1, snappy = 3, attached_node = 1, flammable = 2, growing = 1},
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
sunlight_propagates = true,
|
||||
selection_box = farming.select,
|
||||
place_param2 = def.place_param2 or nil,
|
||||
place_param2 = 1, -- place seed flat
|
||||
next_plant = mname .. ":" .. pname .. "_1",
|
||||
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
return farming.place_seed(itemstack, placer,
|
||||
pointed_thing, mname .. ":" .. pname .. "_1")
|
||||
end,
|
||||
return farming.place_seed(itemstack, placer, pointed_thing,
|
||||
mname .. ":seed_" .. pname)
|
||||
end
|
||||
})
|
||||
|
||||
-- Register harvest
|
||||
@ -571,13 +599,16 @@ farming.register_plant = function(name, def)
|
||||
}
|
||||
}
|
||||
|
||||
local sel = farming.select
|
||||
local g = {
|
||||
snappy = 3, flammable = 2, plant = 1, growing = 1,
|
||||
attached_node = 1, not_in_creative_inventory = 1,
|
||||
}
|
||||
|
||||
-- Last step doesn't need growing=1 so Abm never has to check these
|
||||
-- also increase selection box for visual indication plant has matured
|
||||
if i == def.steps then
|
||||
sel = farming.select_final
|
||||
g.growing = 0
|
||||
end
|
||||
|
||||
@ -600,7 +631,7 @@ farming.register_plant = function(name, def)
|
||||
buildable_to = true,
|
||||
sunlight_propagates = true,
|
||||
drop = drop,
|
||||
selection_box = farming.select,
|
||||
selection_box = sel,
|
||||
groups = g,
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
minlight = def.minlight,
|
||||
@ -624,6 +655,9 @@ end
|
||||
|
||||
|
||||
-- default settings
|
||||
farming.asparagus = 0.002
|
||||
farming.eggplant = 0.002
|
||||
farming.spinach = 0.002
|
||||
farming.carrot = 0.001
|
||||
farming.potato = 0.001
|
||||
farming.tomato = 0.001
|
||||
@ -656,9 +690,10 @@ farming.lettuce = 0.001
|
||||
farming.artichoke = 0.001
|
||||
farming.parsley = 0.002
|
||||
farming.sunflower = 0.001
|
||||
farming.ginger = 0.002
|
||||
farming.strawberry = not minetest.get_modpath("ethereal") and 0.002
|
||||
farming.grains = true
|
||||
farming.rice = true
|
||||
farming.rarety = 0.002
|
||||
|
||||
|
||||
-- Load new global settings if found inside mod folder
|
||||
@ -731,8 +766,17 @@ ddoo("lettuce.lua", farming.lettuce)
|
||||
ddoo("artichoke.lua", farming.artichoke)
|
||||
ddoo("parsley.lua", farming.parsley)
|
||||
ddoo("sunflower.lua", farming.sunflower)
|
||||
ddoo("strawberry.lua", farming.strawberry)
|
||||
ddoo("asparagus.lua", farming.asparagus)
|
||||
ddoo("eggplant.lua", farming.eggplant)
|
||||
ddoo("spinach.lua", farming.eggplant)
|
||||
ddoo("ginger.lua", farming.ginger)
|
||||
|
||||
dofile(farming.path .. "/food.lua")
|
||||
dofile(farming.path .. "/mapgen.lua")
|
||||
dofile(farming.path .. "/compatibility.lua") -- Farming Plus compatibility
|
||||
dofile(farming.path .. "/lucky_block.lua")
|
||||
|
||||
if minetest.get_modpath("lucky_block") then
|
||||
dofile(farming.path .. "/lucky_block.lua")
|
||||
end
|
||||
|
||||
print("[MOD] Farming Redo loaded")
|
||||
|
@ -23,6 +23,10 @@ THE SOFTWARE.
|
||||
|
||||
License of media (textures):
|
||||
----------------------------
|
||||
|
||||
Created by Shadall (CC0):
|
||||
farming_burger.png
|
||||
|
||||
Created by PilzAdam (License: CC BY 3.0):
|
||||
farming_bread.png
|
||||
farming_soil.png
|
||||
@ -63,10 +67,15 @@ Created by VanessaE (License: CC BY 3.0):
|
||||
farming_cotton_7.png
|
||||
farming_cotton_8.png
|
||||
|
||||
Created by 7eventy7 (https://www.planetminecraft.com/member/7eventy7/)
|
||||
Created by alerikaisattera (License: CC-BY-SA 4.0)
|
||||
farming_melon_top.png
|
||||
farming_melon_side.png
|
||||
farming_melon_bottom.png
|
||||
farming_pumpkin_bottom.png
|
||||
farming_pumpkin_top.png
|
||||
farming_pumpkin_side.png
|
||||
farming_pumpkin_face_on.png
|
||||
farming_pumpkin_face_off.png
|
||||
|
||||
Created by Doc (License: CC BY 3.0):
|
||||
farming_cucumber.png
|
||||
@ -131,7 +140,6 @@ Created by TenPlus1 (CC BY 3.0)
|
||||
farming_rhubarb_2.png
|
||||
farming_rhubarb_3.png
|
||||
farming_rhubarb.png
|
||||
farming_rhubarb_pie.png
|
||||
farming_hemp*.png
|
||||
farming_tofu*.png
|
||||
|
||||
@ -157,7 +165,6 @@ Created by OgelGames (CC BY-SA 4.0)
|
||||
Created by Felfa (CC0)
|
||||
farming_blackberry*.png
|
||||
farming_lettuce*.png
|
||||
farming_burger.png
|
||||
farming_soy*.png
|
||||
farming_vanilla*.png
|
||||
farming_artichoke*.png
|
||||
@ -175,8 +182,37 @@ Created by sirrobzeroone (CC0)
|
||||
farming_gyoza.png
|
||||
farming_pineapple_ring.png
|
||||
|
||||
Created by TechM8 (https://www.deviantart.com/techm8)
|
||||
Created by smoke_th (CC0 - https://opengameart.org/content/popcorn-icon)
|
||||
farming_popcorn.png
|
||||
|
||||
Created by RZR0 (CC-BY-NC-SA)
|
||||
farming_blueberry_pie.png
|
||||
Created by DMBuce (MIT - https://github.com/DMBuce/hatchling-snacks)
|
||||
farming_mac_and_cheese.png
|
||||
|
||||
Created by XSSheep (CC BY-SA 4.0 - https://minecraft.curseforge.com/projects/pixel-perfection-freshly-updated)
|
||||
farming_coffee_1.png
|
||||
farming_coffee_2.png
|
||||
farming_coffee_3.png
|
||||
farming_coffee_4.png
|
||||
farming_coffee_5.png
|
||||
farming_coffee_beans.png
|
||||
farming_apple_pie.png (edited by TenPlus1)
|
||||
farming_blueberry_pie.png (edited by TenPlus1)
|
||||
farming_rhubarb_pie.png (edited by TenPlus1)
|
||||
|
||||
Copyright (C) 2021-2022: Atlante - AFL-1.1
|
||||
License for code: AFL-1.1
|
||||
|
||||
Attribution — You must give appropriate credit, provide a link to the license, and
|
||||
indicate if changes were made. You may do so in any reasonable manner, but not in any way
|
||||
that suggests the licensor endorses you or your use.
|
||||
|
||||
ShareAlike — If you remix, transform, or build upon the material, you must distribute
|
||||
your contributions under the same license as the original.
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
farming_asparagus*
|
||||
farming_eggplant*
|
||||
farming_spinach*
|
||||
farming_ginger*
|
||||
|
@ -38,7 +38,7 @@ Cornstarch=Speisestärke
|
||||
Cotton=Baumwolle
|
||||
Cotton Seed=Baumwollsamen
|
||||
Cucumber=Gurke
|
||||
Cucumber and Potato Salad=Gurken und Tomatensalat
|
||||
Cucumber and Potato Salad=Kartoffelsalat mit Gurke
|
||||
Cup of Coffee=Tasse Kaffee
|
||||
Cutting Board=Schneidebrett
|
||||
Diamond Hoe=Diamanthacke
|
||||
|
194
mods/farming/locale/farming.eo.tr
Normal file
@ -0,0 +1,194 @@
|
||||
# Translation of the farming mod by TenPlus1
|
||||
# textdomain: farming
|
||||
# author: Jolesh
|
||||
# last update: 2022/11/04
|
||||
|
||||
###### folder . ######
|
||||
|
||||
### init.lua ###
|
||||
Seed=Semo
|
||||
|
||||
### compatibility.lua ###
|
||||
Banana=Banano
|
||||
Banana Leaves=Bananaj Folioj
|
||||
Orange=Oranĝo
|
||||
Strawberry=Frago
|
||||
|
||||
### food.lua ###
|
||||
Sugar=Sukero
|
||||
Salt=Salo
|
||||
Rose Water=Roza Akvo
|
||||
Turkish Delight=Turka Delico
|
||||
Garlic Bread=Ajla Pano
|
||||
Donut=Benjeto
|
||||
Chocolate Donut=Ĉokolada Benjeto
|
||||
Apple Donut=Poma Benjeto
|
||||
Porridge=Kaĉo
|
||||
Jaffa Cake=Jafa Kuko
|
||||
|
||||
### hoes.lua ###
|
||||
Hoe=Sarkilo
|
||||
Wooden Hoe=Ligna Sarkilo
|
||||
Stone Hoe=Ŝtona Sarkilo
|
||||
Steel Hoe=Ŝtala Sarkilo
|
||||
Bronze Hoe=Bronza Sarkilo
|
||||
Mese Hoe=Mesea Sarkilo
|
||||
Diamond Hoe=Diamanta Sarkilo
|
||||
# Surcharge du mod [Toolranks] à faire #
|
||||
Hoe Bomb (use or throw on grassy areas to hoe land)=
|
||||
Mithril Scythe (Right-click to harvest and replant crops)=
|
||||
# Surcharge du mod [Toolranks] à faire #
|
||||
|
||||
### soil.lua ###
|
||||
Soil=Tero
|
||||
Wet Soil=Malseka Tero
|
||||
|
||||
### utensils.lua ###
|
||||
Wooden Bowl=Ligna Bovlo
|
||||
Saucepan=Kaserolo
|
||||
Cooking Pot=Kuirpoto
|
||||
Baking Tray=Baka Pleto
|
||||
Skillet=Pato
|
||||
Mortar and Pestle=Pistujo
|
||||
Cutting Board=Tranĉa Tabulo
|
||||
Juicer=Spremilo
|
||||
Glass Mixing Bowl=Vitra Miksa Bovlo
|
||||
|
||||
|
||||
###### folder ./crops ######
|
||||
|
||||
### barley.lua ###
|
||||
Barley Seed=Hordea Semo
|
||||
Barley=Hordeo
|
||||
|
||||
### beans.lua ###
|
||||
Green Beans=Verdaj Fazeoloj
|
||||
Bean Pole (place on soil before planting beans)=Fazeola Poluso (metu sur grundo antaŭ planti fabojn)
|
||||
|
||||
### beetroot.lua ###
|
||||
Beetroot=Betoto
|
||||
Beetroot Soup=Betota Supo
|
||||
|
||||
### blueberry.lua ###
|
||||
Blueberries=Mirtiloj
|
||||
Blueberry Muffin=Mirtila Mufino
|
||||
Blueberry Pie=Mirtila Torto
|
||||
|
||||
### carrot.lua ##
|
||||
Carrot=Karoto
|
||||
Carrot Juice=Karota Suko
|
||||
Golden Carrot=Ora Karoto
|
||||
|
||||
### chili.lua ###
|
||||
Chili Pepper=Kapsiketo
|
||||
Bowl of Chili=Bovlo da Kapsiketo
|
||||
|
||||
### cocoa.lua ###
|
||||
Cocoa Beans=Kakaa Faboj
|
||||
Cookie=Kuketo
|
||||
Bar of Dark Chocolate=Stango de Malhela Ĉokolado
|
||||
Chocolate Block=Bloko de Ĉokolado
|
||||
|
||||
### coffee.lua ###
|
||||
Coffee Beans=Kafaj Seboj
|
||||
Cup of Coffee=Taso da Kafo
|
||||
|
||||
### corn.lua ###
|
||||
Corn=Maizo
|
||||
Corn on the Cob=Maiza sur la Spadiko
|
||||
Cornstarch=Maizamelo
|
||||
Bottle of Ethanol=Botelo da Etanolo
|
||||
|
||||
### cotton.lua ###
|
||||
Cotton Seed=Kotona Semo
|
||||
Cotton=Kotono
|
||||
String=Ŝnuro
|
||||
|
||||
### cucumber.lua ###
|
||||
Cucumber=Kukumo
|
||||
|
||||
### garlic.lua ###
|
||||
Garlic clove=Ajlokloko
|
||||
Garlic=Ajlo
|
||||
Garlic Braid=Ajla Plektaĵo
|
||||
|
||||
### grapes.lua ###
|
||||
Grapes=Vinberoj
|
||||
Trellis (place on soil before planting grapes)=Trellis (meti sur grundo antaŭ planti vinberojn)
|
||||
|
||||
### hemp.lua ###
|
||||
Hemp Seed=Kanaba Semo
|
||||
Hemp Leaf=Kanaba Folio
|
||||
Bottle of Hemp Oil=Botelo da Kanaba Oleo
|
||||
Hemp Fibre=Kanaba Fibro
|
||||
Hemp Block=Kanaba Bloko
|
||||
Hemp Rope=Kanaba Ŝnuro
|
||||
|
||||
### melon.lua ###
|
||||
Melon Slice=Tranĉaĵo de Melono
|
||||
Melon=Melono
|
||||
|
||||
### onion.lua ###
|
||||
Onion=Cepo
|
||||
|
||||
### peas.lua ###
|
||||
Pea Pod=Pizujo
|
||||
Peas=Pizoj
|
||||
Pea Soup=Piza Supo
|
||||
|
||||
### pepper.lua ###
|
||||
Peppercorn=Piprograjno
|
||||
Pepper=Pipro
|
||||
Ground Pepper=Muelita Pipro
|
||||
|
||||
### pinapple.lua ###
|
||||
Pineapple Top=Pinto de Ananaso
|
||||
Pineapple=Ananaso
|
||||
Pineapple Ring=Ananasa Ringo
|
||||
Pineapple Juice=Ananasa Suko
|
||||
|
||||
### potato.lua ###
|
||||
Potato=Terpomo
|
||||
Baked Potato=Bakita Terpomo
|
||||
Cucumber and Potato Salad=Salato de Kukumo kaj Terpomo
|
||||
|
||||
### pumpkin.lua ###
|
||||
Pumpkin Slice=Tranĉaĵo de Kukurbo
|
||||
Jack 'O Lantern (punch to turn on and off)=Kukurba Lanterno (punu por ŝalti kaj malŝalti)
|
||||
Scarecrow Bottom=Birdotimigilo Fundo
|
||||
Pumpkin Bread=Kukurba Pano
|
||||
Pumpkin Dough=Kukurba Pasto
|
||||
Pumpkin=Kukurbo
|
||||
|
||||
### raspberry.lua ###
|
||||
Raspberries=Framboj
|
||||
Raspberry Smoothie=Fraba Glataĵo
|
||||
|
||||
### rhubarb.lua ###
|
||||
Rhubarb=Rabarbo
|
||||
Rhubarb Pie=Rabarba Torto
|
||||
|
||||
### ryeoatrice.lua ###
|
||||
Rye=Sekalo
|
||||
Rye seed=Sekala Semo
|
||||
Oat=Aveno
|
||||
Oat seed=Avena Semo
|
||||
Rice=Rizo
|
||||
Rice grains=Rizaj grajnoj
|
||||
Rice Bread=Riza Pano
|
||||
Rice Flour=Riza Faruno
|
||||
Multigrain Flour=Multgrajna Faruno
|
||||
Multigrain Bread=Multgrajna Pano
|
||||
|
||||
### tomato.lua ###
|
||||
Tomato=Tomato
|
||||
|
||||
### wheat.lua ###
|
||||
Wheat Seed=Tritika Semo
|
||||
Wheat=Tritiko
|
||||
Straw=Pajlo
|
||||
Flour=Faruno
|
||||
Bread=Pano
|
||||
Sliced Bread=Tranĉita Pano
|
||||
Toast=Toasto
|
||||
Toast Sandwich=Toasta Sandviĉo
|
@ -1,9 +1,4 @@
|
||||
|
||||
-- add lucky blocks
|
||||
|
||||
if minetest.get_modpath("lucky_block") then
|
||||
|
||||
lucky_block:add_blocks({
|
||||
lucky_block:add_blocks({
|
||||
{"dro", {"farming:corn"}, 5},
|
||||
{"dro", {"farming:coffee_cup_hot"}, 1},
|
||||
{"dro", {"farming:bread"}, 5},
|
||||
@ -63,6 +58,10 @@ if minetest.get_modpath("lucky_block") then
|
||||
{"farming:wheat_8", "farming:chili_8"},
|
||||
{"farming:cotton_8", "farming:cucumber_4"},
|
||||
}},
|
||||
{"sch", "instafarm", 0, true, {
|
||||
{"farming:wheat_8", "farming:spinach_4"},
|
||||
{"farming:cotton_8", "farming:eggplant_4"},
|
||||
}},
|
||||
{"nod", "default:chest", 0, {
|
||||
{name = "farming:seed_wheat", max = 15},
|
||||
{name = "farming:seed_barley", max = 15},
|
||||
@ -74,6 +73,7 @@ if minetest.get_modpath("lucky_block") then
|
||||
{name = "farming:soil_wet", max = 10},
|
||||
{name = "farming:cotton_wild", max = 5},
|
||||
{name = "farming:grapebush", max = 5},
|
||||
{name = "farming:asparagus", max = 7}
|
||||
}},
|
||||
})
|
||||
end
|
||||
{"dro", {"farming:chili_powder"}, 5}
|
||||
})
|
||||
|
@ -1,240 +0,0 @@
|
||||
-- what mapgen are we using
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
-- temp vars
|
||||
local tmp1, tmp2, tmp3
|
||||
|
||||
-- decoration function
|
||||
local function register_plant(name, min, max, spawnon, spawnby, num, rarety)
|
||||
|
||||
-- do not place on mapgen if no value given (or not true)
|
||||
if not rarety then
|
||||
return
|
||||
end
|
||||
|
||||
-- set rarety value or default to farming.rarety if not a number
|
||||
rarety = tonumber(rarety) or farming.rarety
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = spawnon or {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = rarety,
|
||||
spread = {x = 120, y = 120, z = 120},
|
||||
seed = 329,
|
||||
octaves = 2,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = min,
|
||||
y_max = max,
|
||||
decoration = "farming:" .. name,
|
||||
spawn_by = spawnby,
|
||||
num_spawn_by = num
|
||||
})
|
||||
end
|
||||
|
||||
|
||||
-- add crops to mapgen
|
||||
register_plant("potato_3", 1, 80, nil, "", -1, farming.potato)
|
||||
register_plant("tomato_7", 5, 40, nil, "", -1, farming.tomato)
|
||||
register_plant("corn_7", 1, 42, nil, "", -1, farming.corn)
|
||||
register_plant("raspberry_4", 3, 20, nil, "", -1, farming.raspberry)
|
||||
register_plant("rhubarb_3", 3, 25, nil, "", -1, farming.rhubarb)
|
||||
register_plant("blueberry_4", 3, 20, nil, "", -1, farming.blueberry)
|
||||
register_plant("beanbush", 1, 65, nil, "", -1, farming.beans)
|
||||
register_plant("grapebush", 2, 85, nil, "", -1, farming.grapes)
|
||||
register_plant("onion_5", 5, 42, nil, "", -1, farming.onion)
|
||||
register_plant("garlic_5", 3, 60, nil, "group:tree", 1, farming.garlic)
|
||||
register_plant("pea_5", 5, 100, nil, "", -1, farming.peas)
|
||||
register_plant("beetroot_5", 1, 25, nil, "", -1, farming.beetroot)
|
||||
register_plant("cabbage_6", 2, 20, nil, "", -1, farming.cabbage)
|
||||
register_plant("lettuce_5", 5, 60, nil, "", -1, farming.lettuce)
|
||||
register_plant("blackberry_4", 3, 20, nil, "", -1, farming.blackberry)
|
||||
register_plant("vanilla_7", 5, 65, nil, "", -1, farming.vanilla)
|
||||
register_plant("parsley_3", 1, 80, nil, "", -1, farming.parsley)
|
||||
register_plant("sunflower_8", 1, 80, nil, "", -1, farming.sunflower)
|
||||
register_plant("mint_4", 1, 145, {
|
||||
"default:dirt_with_grass", "default:dirt_with_coniferous_litter"},
|
||||
"group:water", 1, farming.mint)
|
||||
|
||||
|
||||
-- v6 mapgen compatibility for specific crops
|
||||
if mg_name == "v6" then
|
||||
|
||||
register_plant("carrot_8", 1, 60, nil, "group:water", 1, farming.carrot)
|
||||
register_plant("cucumber_4", 1, 40, nil, "group:water", 1, farming.cucumber)
|
||||
register_plant("melon_8", 1, 40, nil, "group:water", 1, farming.melon)
|
||||
register_plant("pumpkin_8", 1, 40, nil, "group:water", 1, farming.pumpkin)
|
||||
register_plant("coffee_5", 10, 85, nil, "", -1, farming.coffee)
|
||||
register_plant("soy_6", 10, 100, nil, "", -1, farming.soy)
|
||||
else
|
||||
-- v7 maps have a beach so plants growing near water is limited to 6 high
|
||||
register_plant("carrot_8", 1, 25, nil, "", -1, farming.carrot)
|
||||
register_plant("cucumber_4", 1, 20, nil, "", -1, farming.cucumber)
|
||||
register_plant("melon_8", 1, 12, {"default:dirt_with_dry_grass",
|
||||
"default:dirt_with_rainforest_litter"}, "", -1, farming.melon)
|
||||
register_plant("pumpkin_8", 1, 12, nil, "", -1, farming.pumpkin)
|
||||
register_plant("coffee_5", 10, 85, {"default:dirt_with_dry_grass",
|
||||
"default:dirt_with_rainforest_litter",
|
||||
"default:dry_dirt_with_dry_grass"}, "", -1, farming.coffee)
|
||||
register_plant("soy_6", 10, 100, {"default:dirt_with_dry_grass",
|
||||
"default:dirt_with_rainforest_litter",
|
||||
"default:dry_dirt_with_dry_grass"}, "", -1, farming.soy)
|
||||
end
|
||||
|
||||
|
||||
if farming.hemp then
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_rainforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = tonumber(farming.hemp) or farming.rarety,
|
||||
spread = {x = 110, y = 110, z = 110},
|
||||
seed = 420,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 3,
|
||||
y_max = 45,
|
||||
decoration = "farming:hemp_7",
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
end
|
||||
|
||||
|
||||
if farming.chili then
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_rainforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = tonumber(farming.chili) or farming.rarety,
|
||||
spread = {x = 110, y = 110, z = 110},
|
||||
seed = 760,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 35,
|
||||
decoration = {"farming:chili_8"},
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
end
|
||||
|
||||
|
||||
if farming.artichoke then
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = tonumber(farming.artichoke) or farming.rarety,
|
||||
spread = {x = 110, y = 110, z = 110},
|
||||
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,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = tonumber(farming.pepper) or farming.rarety,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 933,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 5,
|
||||
y_max = 35,
|
||||
decoration = {"farming:pepper_5", "farming:pepper_6", "farming:pepper_7"},
|
||||
spawn_by = "group:tree",
|
||||
num_spawn_by = 1
|
||||
})
|
||||
end
|
||||
|
||||
|
||||
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({
|
||||
deco_type = "simple",
|
||||
place_on = tmp1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = tonumber(farming.pineapple) or farming.rarety,
|
||||
spread = {x = 70, y = 70, z = 70},
|
||||
seed = 917,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 8,
|
||||
y_max = 30,
|
||||
decoration = {"farming:pineapple_8"},
|
||||
spawn_by = tmp2,
|
||||
num_spawn_by = tmp3
|
||||
})
|
||||
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({
|
||||
name = "farming:cotton_wild",
|
||||
deco_type = "simple",
|
||||
place_on = tmp1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = 0.1,
|
||||
spread = {x = 150, y = 150, z = 150},
|
||||
seed = 4242,
|
||||
octaves = 4,
|
||||
persist = 0.7
|
||||
},
|
||||
biomes = tmp2,
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "farming:cotton_wild"
|
||||
})
|
@ -111,6 +111,7 @@ minetest.register_alias("farming:desert_sand_soil_wet", dry_soil .. "_wet")
|
||||
|
||||
-- if water near soil then change to wet soil
|
||||
minetest.register_abm({
|
||||
label = "Soil changes",
|
||||
nodenames = {"group:field"},
|
||||
interval = 15,
|
||||
chance = 4,
|
||||
@ -131,30 +132,34 @@ minetest.register_abm({
|
||||
-- what's on top of soil, if solid/not plant change soil to dirt
|
||||
if minetest.registered_nodes[nn]
|
||||
and minetest.registered_nodes[nn].walkable
|
||||
and minetest.get_item_group(nn, "plant") == 0 then
|
||||
and minetest.get_item_group(nn, "plant") == 0
|
||||
and minetest.get_item_group(nn, "growing") == 0 then
|
||||
|
||||
minetest.set_node(pos, {name = ndef.soil.base})
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
-- if map around soil not loaded then skip until loaded
|
||||
if minetest.find_node_near(pos, 3, {"ignore"}) then
|
||||
return
|
||||
end
|
||||
|
||||
-- check if water is within 3 nodes horizontally and 1 below
|
||||
if #minetest.find_nodes_in_area(
|
||||
{x = pos.x + 3, y = pos.y - 1, z = pos.z + 3},
|
||||
{x = pos.x - 3, y = pos.y , z = pos.z - 3},
|
||||
{"group:water"}) > 0 then
|
||||
-- check if water is within 3 nodes
|
||||
if minetest.find_node_near(pos, 3, {"group:water"}) then
|
||||
|
||||
-- only change if it's not already wet soil
|
||||
if node.name ~= ndef.soil.wet then
|
||||
minetest.set_node(pos, {name = ndef.soil.wet})
|
||||
end
|
||||
|
||||
elseif node.name == ndef.soil.wet then
|
||||
-- only dry out soil if no unloaded blocks nearby, just incase
|
||||
elseif not minetest.find_node_near(pos, 3, {"ignore"}) then
|
||||
|
||||
if node.name == ndef.soil.wet then
|
||||
minetest.set_node(pos, {name = ndef.soil.dry})
|
||||
|
||||
-- if crop or seed found don't turn to dry soil
|
||||
elseif node.name == ndef.soil.dry
|
||||
and minetest.get_item_group(nn, "plant") == 0 then
|
||||
and minetest.get_item_group(nn, "plant") == 0
|
||||
and minetest.get_item_group(nn, "growing") == 0 then
|
||||
minetest.set_node(pos, {name = ndef.soil.base})
|
||||
end
|
||||
end
|
||||
end
|
||||
})
|
||||
|
@ -7,9 +7,9 @@ local ROOT_2 = math.sqrt(2.0)
|
||||
local erf
|
||||
local erf_inv
|
||||
|
||||
local A = 8 * (math.pi - 3.0)/(3.0 * math.pi * (4.0 - math.pi))
|
||||
local A = 8 * (math.pi - 3.0) / (3.0 * math.pi * (4.0 - math.pi))
|
||||
local B = 4.0 / math.pi
|
||||
local C = 2.0/(math.pi * A)
|
||||
local C = 2.0 / (math.pi * A)
|
||||
local D = 1.0 / A
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 841 B After Width: | Height: | Size: 262 B |
BIN
mods/farming/textures/ethereal_strawberry.png
Normal file
After Width: | Height: | Size: 382 B |
BIN
mods/farming/textures/ethereal_strawberry_1.png
Normal file
After Width: | Height: | Size: 116 B |
BIN
mods/farming/textures/ethereal_strawberry_2.png
Normal file
After Width: | Height: | Size: 137 B |
BIN
mods/farming/textures/ethereal_strawberry_3.png
Normal file
After Width: | Height: | Size: 157 B |
BIN
mods/farming/textures/ethereal_strawberry_4.png
Normal file
After Width: | Height: | Size: 209 B |
BIN
mods/farming/textures/ethereal_strawberry_5.png
Normal file
After Width: | Height: | Size: 234 B |
BIN
mods/farming/textures/ethereal_strawberry_6.png
Normal file
After Width: | Height: | Size: 240 B |
BIN
mods/farming/textures/ethereal_strawberry_7.png
Normal file
After Width: | Height: | Size: 258 B |
BIN
mods/farming/textures/ethereal_strawberry_8.png
Normal file
After Width: | Height: | Size: 258 B |
Before Width: | Height: | Size: 200 B After Width: | Height: | Size: 262 B |
BIN
mods/farming/textures/farming_asparagus.png
Normal file
After Width: | Height: | Size: 153 B |
BIN
mods/farming/textures/farming_asparagus_1.png
Normal file
After Width: | Height: | Size: 115 B |
BIN
mods/farming/textures/farming_asparagus_2.png
Normal file
After Width: | Height: | Size: 140 B |
BIN
mods/farming/textures/farming_asparagus_3.png
Normal file
After Width: | Height: | Size: 165 B |
BIN
mods/farming/textures/farming_asparagus_4.png
Normal file
After Width: | Height: | Size: 177 B |
BIN
mods/farming/textures/farming_asparagus_5.png
Normal file
After Width: | Height: | Size: 200 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 263 B |
Before Width: | Height: | Size: 140 B After Width: | Height: | Size: 114 B |
Before Width: | Height: | Size: 151 B After Width: | Height: | Size: 146 B |
Before Width: | Height: | Size: 209 B After Width: | Height: | Size: 176 B |
Before Width: | Height: | Size: 229 B After Width: | Height: | Size: 196 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 225 B |
Before Width: | Height: | Size: 271 B After Width: | Height: | Size: 236 B |
Before Width: | Height: | Size: 277 B After Width: | Height: | Size: 256 B |
BIN
mods/farming/textures/farming_barley_8.png
Normal file
After Width: | Height: | Size: 329 B |
Before Width: | Height: | Size: 195 B After Width: | Height: | Size: 280 B |
Before Width: | Height: | Size: 480 B After Width: | Height: | Size: 422 B |
BIN
mods/farming/textures/farming_chili_powder.png
Normal file
After Width: | Height: | Size: 190 B |
Before Width: | Height: | Size: 135 B After Width: | Height: | Size: 126 B |
Before Width: | Height: | Size: 145 B After Width: | Height: | Size: 164 B |
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 195 B |
Before Width: | Height: | Size: 192 B After Width: | Height: | Size: 232 B |
Before Width: | Height: | Size: 192 B After Width: | Height: | Size: 250 B |
Before Width: | Height: | Size: 204 B After Width: | Height: | Size: 162 B |
BIN
mods/farming/textures/farming_eggplant.png
Normal file
After Width: | Height: | Size: 194 B |
BIN
mods/farming/textures/farming_eggplant_1.png
Normal file
After Width: | Height: | Size: 113 B |
BIN
mods/farming/textures/farming_eggplant_2.png
Normal file
After Width: | Height: | Size: 137 B |
BIN
mods/farming/textures/farming_eggplant_3.png
Normal file
After Width: | Height: | Size: 170 B |
BIN
mods/farming/textures/farming_eggplant_4.png
Normal file
After Width: | Height: | Size: 195 B |
BIN
mods/farming/textures/farming_ginger.png
Normal file
After Width: | Height: | Size: 193 B |
BIN
mods/farming/textures/farming_ginger_1.png
Normal file
After Width: | Height: | Size: 120 B |
BIN
mods/farming/textures/farming_ginger_2.png
Normal file
After Width: | Height: | Size: 156 B |
BIN
mods/farming/textures/farming_ginger_3.png
Normal file
After Width: | Height: | Size: 177 B |