forked from luanti-org/minetest_game
		
	Fix indentation, use log() instead of print() and use get_item_group() in tree growing ABM
This commit is contained in:
		| @@ -132,41 +132,49 @@ minetest.register_on_punchnode(on_punchnode) | ||||
| -- | ||||
|  | ||||
| minetest.register_abm({ | ||||
|         nodenames = {"default:sapling"}, | ||||
|         interval = 10, | ||||
|         chance = 50, | ||||
|         action = function(pos, node) | ||||
|                 local is_soil = minetest.registered_nodes[minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name].groups.soil | ||||
|                 if is_soil == nil or is_soil == 0 then return end | ||||
|                 print("A sapling grows into a tree at "..minetest.pos_to_string(pos)) | ||||
|                 local vm = minetest.get_voxel_manip() | ||||
|                 local minp, maxp = vm:read_from_map({x=pos.x-16, y=pos.y, z=pos.z-16}, {x=pos.x+16, y=pos.y+16, z=pos.z+16}) | ||||
|                 local a = VoxelArea:new{MinEdge=minp, MaxEdge=maxp} | ||||
|                 local data = vm:get_data() | ||||
|                 default.grow_tree(data, a, pos, math.random(1, 4) == 1, math.random(1,100000)) | ||||
|                 vm:set_data(data) | ||||
|                 vm:write_to_map(data) | ||||
|                 vm:update_map() | ||||
|         end | ||||
| 	nodenames = {"default:sapling"}, | ||||
| 	interval = 10, | ||||
| 	chance = 50, | ||||
| 	action = function(pos, node) | ||||
| 		local nu =  minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name | ||||
| 		local is_soil = minetest.get_item_group(nu, "soil") | ||||
| 		if is_soil == 0 then | ||||
| 			return | ||||
| 		end | ||||
| 		 | ||||
| 		minetest.log("action", "A sapling grows into a tree at "..minetest.pos_to_string(pos)) | ||||
| 		local vm = minetest.get_voxel_manip() | ||||
| 		local minp, maxp = vm:read_from_map({x=pos.x-16, y=pos.y, z=pos.z-16}, {x=pos.x+16, y=pos.y+16, z=pos.z+16}) | ||||
| 		local a = VoxelArea:new{MinEdge=minp, MaxEdge=maxp} | ||||
| 		local data = vm:get_data() | ||||
| 		default.grow_tree(data, a, pos, math.random(1, 4) == 1, math.random(1,100000)) | ||||
| 		vm:set_data(data) | ||||
| 		vm:write_to_map(data) | ||||
| 		vm:update_map() | ||||
| 	end | ||||
| }) | ||||
|  | ||||
| minetest.register_abm({ | ||||
|         nodenames = {"default:junglesapling"}, | ||||
|         interval = 10, | ||||
|         chance = 50, | ||||
|         action = function(pos, node) | ||||
|                 local is_soil = minetest.registered_nodes[minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name].groups.soil | ||||
|                 if is_soil == nil or is_soil == 0 then return end | ||||
|                 print("A jungle sapling grows into a tree at "..minetest.pos_to_string(pos)) | ||||
|                 local vm = minetest.get_voxel_manip() | ||||
|                 local minp, maxp = vm:read_from_map({x=pos.x-16, y=pos.y-1, z=pos.z-16}, {x=pos.x+16, y=pos.y+16, z=pos.z+16}) | ||||
|                 local a = VoxelArea:new{MinEdge=minp, MaxEdge=maxp} | ||||
|                 local data = vm:get_data() | ||||
|                 default.grow_jungletree(data, a, pos, math.random(1,100000)) | ||||
|                 vm:set_data(data) | ||||
|                 vm:write_to_map(data) | ||||
|                 vm:update_map() | ||||
|         end | ||||
| 	nodenames = {"default:junglesapling"}, | ||||
| 	interval = 10, | ||||
| 	chance = 50, | ||||
| 	action = function(pos, node) | ||||
| 		local nu =  minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name | ||||
| 		local is_soil = minetest.get_item_group(nu, "soil") | ||||
| 		if is_soil == 0 then | ||||
| 			return | ||||
| 		end | ||||
| 		 | ||||
| 		minetest.log("action", "A jungle sapling grows into a tree at "..minetest.pos_to_string(pos)) | ||||
| 		local vm = minetest.get_voxel_manip() | ||||
| 		local minp, maxp = vm:read_from_map({x=pos.x-16, y=pos.y-1, z=pos.z-16}, {x=pos.x+16, y=pos.y+16, z=pos.z+16}) | ||||
| 		local a = VoxelArea:new{MinEdge=minp, MaxEdge=maxp} | ||||
| 		local data = vm:get_data() | ||||
| 		default.grow_jungletree(data, a, pos, math.random(1,100000)) | ||||
| 		vm:set_data(data) | ||||
| 		vm:write_to_map(data) | ||||
| 		vm:update_map() | ||||
| 	end | ||||
| }) | ||||
|  | ||||
| -- | ||||
|   | ||||
		Reference in New Issue
	
	Block a user