minetest.spawn_tree

From Minetest Developer Wiki
Revision as of 10:09, 24 May 2022 by Wuzzy (talk | contribs) (Mark as unofficial Lua documentation)
Jump to navigation Jump to search
Mbox warning.png This page contains unofficial, low-quality Lua API documentation and is likely to be outdated or wrong. Do not rely on it!
For the official and up-to-date documentation, see Lua API Documentation.
Mbox warning.png This page has been proposed for deletion for the following reason: "Contains unofficial and potentially outdated, redundant and inconsistent Lua API information"
If you don't think that this page should be deleted, please explain why on the talk page.

Syntax

minetest.spawn_tree(pos, tree)

Description

Spawns an L-system tree at position pos, using the tree definition tree.

See Introduction to L-system trees for a description of L-system trees.

Example

This code adds the chat command "/spawn_tree" to spawn an apple tree with its origin at the current position of the player, assuming that Minetest Game is used:

local treedef = {
	axiom="FFFFFAFFBF",
	rules_a="[&&&FFFFF&&FFFF][&&&++++FFFFF&&FFFF][&&&----FFFFF&&FFFF]",
	rules_b="[&&&++FFFFF&&FFFF][&&&--FFFFF&&FFFF][&&&------FFFFF&&FFFF]",
	trunk="default:tree",
	leaves="default:leaves",
	angle=30,
	iterations=2,
	random_level=0,
	trunk_type="single",
	thin_branches=true,
	fruit_chance=10,
	fruit="default:apple"
}

core.register_chatcommand("spawn_tree", {
	params = "", description = "Spawns tree at player position",
	func = function(name, param)
		local pos = minetest.get_player_by_name(name):getpos()
		minetest.chat_send_player(name, "Spawning tree at " .. minetest.pos_to_string(pos)
			.. ", please wait")
		minetest.spawn_tree(pos, treedef)
		return true, "successfully spawned"
	end,
})

The resulting tree may look like this:

Apple Tree.png

Notes

  • For examples, go to L-system tree examples
  • VanessaE's plants_lib mod (github) provides functions to register L-system trees to be spawned during map generation, and finds places for them to spawn based on the map seed and biome.
  • L-System Tree Utility is a mod which helps to create L-system trees in-game