minetest.spawn_tree

From Minetest Developer Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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

  • pos — position
  • tree — treedef

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