Commit Graph

32 Commits

Author SHA1 Message Date
SmallJoker
04a46d0671 Rename intersects_protection to is_area_protected 2018-02-27 01:16:37 +00:00
paramat
b90aabec80 Rainforest: Add emergent jungle tree and sapling
Height 20 to 32 nodes.
Dependent on chunksize >= 5.
Base limited to maximum altitude y = 32.
Craft sapling from 9 jungle saplings.
2018-02-19 07:16:16 +00:00
paramat
8f85ca57f3 Intersects_protection(): Remove from Minetest Game
Add compatibility code with deprecation warning.
2018-02-03 03:46:13 +00:00
DTA7
a2d7678ffd Add nil checks for placer 2017-11-15 23:16:28 +00:00
paramat
0cdee1d8f5 Saplings: Reduce grow time to ABM equivalent
Previous times were chosen using statistical maths, but reports suggested
this was too long.
I tested by timing an ABM acting on 100 nodes, with interval and chance equal
to the old sapling ABM.
50 at 4m59s.
99 at 24m58s.
100 at 26m58s.
So choose a grow time between 5 and 25 min for tree and bush saplings.
If 'can grow' is false at grow time the timer is reset to 5 min.
2017-07-08 14:51:03 +01:00
paramat
a57d2db54a Bushes: Add saplings
Bush saplings grow in half the time of tree saplings.
Bushes do not need 'from sapling' schematic variants because only the
stem node is force-placed in the mapgen schematic, so only the sapling
is force-replaced.
Bush leaves drop saplings with a rarity that ensures at least 1 sapling
per bush on average.
2017-04-12 17:18:50 +01:00
zaoqi
077316b4cd Use creative.is_enabled_for for creative mode if possible (#1558) 2017-03-29 21:02:26 +02:00
SmallJoker
780f991a87 Sapling_on_place: Restore after_place_node() calls 2017-03-15 22:18:50 +00:00
paramat
0f0dd0f6e8 Tree schematics: Alter jungletree, aspen, pine, appletree
Denser jungletree for darker rainforest:
Highest 'jungletree' nodes now prob 255.
Add a 5th lower branch layer.
Increase lower branch layer y-slice prob to 191.

Aspen:
Extend trunk upwards by 1 node to reduce leafdecay radius to 2.

Pine:
Make lower trunk 1 node longer so that lowest branches are more often
higher off the ground, also to make pines taller.

Appletree:
Make 2 opposite branches prob 255, the other 2 prob 127, to avoid
trees with 1 or 0 branches. Therefore also add random rotation.
2017-03-10 19:28:38 +00:00
paramat
2b215848d8 Trees: Add 'snowy' group for pine sapling snow detection
Use the 'snowy' group in the 'is snow nearby' function instead of
default nodes. Often snow nodes are not from the default mod.
2017-02-01 17:51:44 +00:00
Tim
32f7051eb8 Fix sapling placement handling of on_rightclick and CONTENT_IGNORE 2016-10-05 22:22:15 +01:00
tenplus1
1b745d401d Default/trees: Faster 'is snow nearby' function
Use 'find node near' instead of 'find nodes in area'
2016-08-15 20:43:19 +01:00
paramat
0ac096991c Default: Prevent placing sapling if grown tree intersects protection
Add a global 'intersects protection' function to functions.lua for
checking if a specified volume intersects with a protected volume.
A 3D lattice of points are checked with an adjustable interval.
Add a global 'sapling on place' function to avoid duplicated code in
nodes.lua.
2016-07-27 21:39:22 +01:00
paramat
1a2eb89f17 Default/trees: Update to 'get_mapgen_setting()' 2016-07-18 23:47:14 +01:00
Tim
4473627de0 Remove unused and clean up missused variable-value assignments.
* Unused variables
* Unused values (assigned to variables, but overwritten before use)
* Defining already defined variables instead of reassigning to them.
2016-07-15 21:58:49 +01:00
tenplus1
f1f96dbe6b Default/trees: Faster way to detect snow around pine saplings
Instead of using voxelmanip use 'find nodes in area' instead
2016-07-10 20:50:40 +01:00
Auke Kok
e0cb3fce02 Default: Convert saplings to use node timers
Each sapling is given a single node timer that is between
2 and 4 days of game play time (40-80 minutes). If you walk out
of the zone, and come back later, the tree will always grow
to full if the timer has elapsed.

Because trees.lua is all functions, it needs to be parsed before
nodes.lua, since that references some of its functions. Hence,
change the order of parsing here. Otherwise saplings would not
grow to full.
2016-05-25 03:27:08 +01:00
paramat
0d3bca790c Default: Fix rotation errors for mapgen aspen and sapling jungletree 2016-03-22 15:46:00 +00:00
paramat
5d28040915 Default: Add 'snowy pine tree from sapling' schematic
Add function to detect nearby snow to enable snow on sapling-grown pine trees
Correct 'place schematic' rotation parameters to "0" or "random"
2016-02-27 21:47:10 +00:00
Auke Kok
6267f26027 Aspen trees.
Adds a birch-like tree to the default_game. Aspen was chosen on
purpose instead of birch, as several birch tree mods already exist
and choosing a different name avoids any conflicts.

Schematics were made for both normal and sapling version, assuring
saplings will not be able to grief. The shape of the Aspen is "fanning
out at the top" and provides an easy tree to walk under, but still a
somewhat thick cover. The Aspen trunk is 4 to 6 blocks tall, with up
to three layers of leaves on top, making it slightly taller than an
Apple tree, but shorter than a Pine tree, which provides a good blend.

Textures were painted from scratch, except tree_top and _wood
variants, which are color modified versions of the pine_wood
variants. Appropriate licenses have been chosen for the new textures.

The leaf texture is light enough to contrast other trees, but dark
enough to offset against our light default grass color. The leaves
are drawn in the typical minetest default fashion with plenty of
transparancy, but enough definition to suggest that you're seeing
something that looks like leaves. The placement of leaves in the
schematic also suggests the top of the tree is sparse and you can
see the sky through the leaves.

Sapling texture is both traditional and different, with lush green
leaves and a well-defined stem, but slightly stick-like and skinny,
as these plants tend to grow up first, then out.

Add fallen Aspen logs. We make these logs a minimum of 2 blocks long,
and up to 3. This allows us to make these logs a place where both
red and brown mushrooms can be found, to these may be attractive to
players. However, the spawn rate for these has been reduced a lot
compared to the other logs, to account for the scarcity of Aspen.

Add stairs, slabs for these wood types as well.

Mapgen will place these trees in deciduous forests only, but in
a way that the biome is a range between entirely Apple trees, and
mostly entirely Aspen trees, with a bias to Apple trees. To make
fallen logs somewhat correlated with trees, we modify the planting
of Apple trees and logs to use perlin noise and not fill ratio,
otherwise you'd always end up with Apple logs in Aspen tree areas,
which would be suspicious. There still is a bit of a mix.
2016-01-15 04:56:15 +00:00
paramat
135d80eb86 Default/trees: Make 'can grow' public to enable over-riding 2015-11-23 03:19:00 +00:00
paramat
321bd66721 Default/trees: Clean-up 'can grow' function 2015-10-27 01:51:54 +00:00
paramat
ef8b7e230d Default/trees: Add requirement of light level 13 for sapling growth 2015-10-17 09:41:17 +01:00
paramat
73113f3443 Default/trees: Add not-force-placed tree schematics grown from saplings 2015-09-01 05:57:07 +01:00
paramat
be4dd6479d Default: Rename pine tree nodes, textures and mapgen aliases 2015-08-10 09:19:02 +01:00
paramat
6194f9ffea Default/trees: Combine sapling ABMs into one ABM 2015-08-09 05:52:46 +01:00
paramat
e2033025b0 Default: Add biome API tree schematics and enable growing by sapling ABMs 2015-07-20 22:56:35 +01:00
paramat
585b2bc22e Default/trees: Add checks for air/ignore/needles to pinetree trunk
Speed optimise: Trunk placing, add_pine_needles, add_snow
2015-07-05 15:23:55 +01:00
PilzAdam
d1e715ebac Add tree growing functions to game_api.txt 2015-01-10 15:47:30 +01:00
paramat
69614dc20d Pinetree (by sfan5, from mg mapgen) lua generation and sapling ABM. Add checks for ignore to other trees 2014-12-12 16:11:42 +01:00
ShadowNinja
9670c27161 Clean up treegen code 2014-09-16 18:38:11 +02:00
BlockMen
9fdbc1f407 Fix tree growing and jungle sapling growth rate 2013-11-07 00:13:51 +01:00