mirror of
				https://github.com/mt-mods/moretrees.git
				synced 2025-11-04 07:25:30 +01:00 
			
		
		
		
	Add luacheck and fix warnings
This commit is contained in:
		
							
								
								
									
										37
									
								
								.luacheckrc
									
									
									
									
									
								
							
							
						
						
									
										37
									
								
								.luacheckrc
									
									
									
									
									
								
							@@ -1,17 +1,30 @@
 | 
			
		||||
std = "lua51+minetest"
 | 
			
		||||
unused_args = false
 | 
			
		||||
allow_defined_top = true
 | 
			
		||||
max_line_length = 999
 | 
			
		||||
max_comment_line_length = 999
 | 
			
		||||
 | 
			
		||||
read_globals = {
 | 
			
		||||
	"DIR_DELIM",
 | 
			
		||||
	"minetest", "core",
 | 
			
		||||
	"dump",
 | 
			
		||||
	"vector", "nodeupdate",
 | 
			
		||||
	"VoxelManip", "VoxelArea",
 | 
			
		||||
	"PseudoRandom", "ItemStack",
 | 
			
		||||
	"intllib",
 | 
			
		||||
	"default",
 | 
			
		||||
	table = { fields = { "copy", "getn" } },
 | 
			
		||||
	"biome_lib",
 | 
			
		||||
	"stairs", "stairsplus",
 | 
			
		||||
stds.minetest = {
 | 
			
		||||
	read_globals = {
 | 
			
		||||
		"minetest",
 | 
			
		||||
		"vector",
 | 
			
		||||
		"VoxelManip",
 | 
			
		||||
		"VoxelArea",
 | 
			
		||||
		"PseudoRandom",
 | 
			
		||||
		"ItemStack",
 | 
			
		||||
		"default",
 | 
			
		||||
		table = {
 | 
			
		||||
			fields = {
 | 
			
		||||
				"copy",
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		"dump",
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
read_globals = {
 | 
			
		||||
	"biome_lib",
 | 
			
		||||
	"stairsplus",
 | 
			
		||||
	"stairs",
 | 
			
		||||
	"doors",
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -23,7 +23,11 @@ end
 | 
			
		||||
ftrunk.drop = "moretrees:palm_trunk"
 | 
			
		||||
gftrunk.drop = "moretrees:palm_trunk"
 | 
			
		||||
ftrunk.after_destruct = function(pos, oldnode)
 | 
			
		||||
	local coconuts = minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, {"group:moretrees_coconut"})
 | 
			
		||||
	local coconuts = minetest.find_nodes_in_area(
 | 
			
		||||
		{x=pos.x-1, y=pos.y, z=pos.z-1},
 | 
			
		||||
		{x=pos.x+1, y=pos.y, z=pos.z+1},
 | 
			
		||||
		{"group:moretrees_coconut"}
 | 
			
		||||
	)
 | 
			
		||||
	for _,coconutpos in pairs(coconuts) do
 | 
			
		||||
		-- minetest.dig_node(coconutpos) does not cause nearby coconuts to be dropped :-( ...
 | 
			
		||||
		--minetest.dig_node(coconutpos)
 | 
			
		||||
@@ -46,7 +50,11 @@ local coconut_regrow_abm_spec = {
 | 
			
		||||
	interval = moretrees.coconut_flower_interval,
 | 
			
		||||
	chance = moretrees.coconut_flower_chance,
 | 
			
		||||
	action = function(pos, node, active_object_count, active_object_count_wider)
 | 
			
		||||
		local coconuts = minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, "group:moretrees_coconut")
 | 
			
		||||
		local coconuts = minetest.find_nodes_in_area(
 | 
			
		||||
			{x=pos.x-1, y=pos.y, z=pos.z-1},
 | 
			
		||||
			{x=pos.x+1, y=pos.y, z=pos.z+1},
 | 
			
		||||
			"group:moretrees_coconut"
 | 
			
		||||
		)
 | 
			
		||||
		-- Expected growth interval increases exponentially with number of coconuts already hanging.
 | 
			
		||||
		-- Also: if more coconuts are hanging, the chance of picking an empty spot decreases as well...
 | 
			
		||||
		if math.random(2^#coconuts) <= 2 then
 | 
			
		||||
@@ -76,15 +84,18 @@ minetest.register_abm({
 | 
			
		||||
	chance = 1,
 | 
			
		||||
	action = function(pos, node, active_object_count, active_object_count_wider)
 | 
			
		||||
		minetest.swap_node(pos, {name="moretrees:palm_fruit_trunk"})
 | 
			
		||||
		local poslist = minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, "air")
 | 
			
		||||
		local poslist = minetest.find_nodes_in_area(
 | 
			
		||||
			{x=pos.x-1, y=pos.y, z=pos.z-1},
 | 
			
		||||
			{x=pos.x+1, y=pos.y, z=pos.z+1},
 | 
			
		||||
			"air"
 | 
			
		||||
		)
 | 
			
		||||
		local genlist = {}
 | 
			
		||||
		for k,v in pairs(poslist) do
 | 
			
		||||
			genlist[k] = {x = math.random(100), pos = v}
 | 
			
		||||
		end
 | 
			
		||||
		table.sort(genlist, function(a, b) return a.x < b.x; end)
 | 
			
		||||
		local gen
 | 
			
		||||
		local count = 0
 | 
			
		||||
		for _,gen in pairs(genlist) do
 | 
			
		||||
		for _, gen in pairs(genlist) do
 | 
			
		||||
			minetest.swap_node(gen.pos, {name = "moretrees:coconut_3"})
 | 
			
		||||
			count = count + 1
 | 
			
		||||
			if count == 4 then
 | 
			
		||||
@@ -109,7 +120,8 @@ local coconut_growfn = function(pos, elapsed)
 | 
			
		||||
		-- Drop coconuts (i.e. remove them), so that new coconuts can grow.
 | 
			
		||||
		-- Coconuts will drop as items with a small chance
 | 
			
		||||
		if math.random(coconut_drop_ichance) == 1 then
 | 
			
		||||
			if moretrees.coconut_item_drop_ichance > 0 and math.random(moretrees.coconut_item_drop_ichance) == 1 then
 | 
			
		||||
			if moretrees.coconut_item_drop_ichance > 0
 | 
			
		||||
				and math.random(moretrees.coconut_item_drop_ichance) == 1 then
 | 
			
		||||
				local items = minetest.get_node_drops(minetest.get_node(pos).name)
 | 
			
		||||
				for _, itemname in pairs(items) do
 | 
			
		||||
					minetest.add_item(pos, itemname)
 | 
			
		||||
@@ -190,55 +202,95 @@ if moretrees.coconuts_convert_existing_palms then
 | 
			
		||||
			local leaves
 | 
			
		||||
			local coconuts
 | 
			
		||||
			-- One regular trunk must be adjacent to  the coconut
 | 
			
		||||
			trunks = minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, "moretrees:palm_trunk")
 | 
			
		||||
			trunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=pos.x-1, y=pos.y, z=pos.z-1},
 | 
			
		||||
				{x=pos.x+1, y=pos.y, z=pos.z+1},
 | 
			
		||||
				"moretrees:palm_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #trunks ~= 1 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			local tpos = trunks[1]
 | 
			
		||||
			-- 1 or 2 other trunks must be one level below to the trunk being converted.
 | 
			
		||||
			trunks = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y-1, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y-1, z=tpos.z+1}, "moretrees:palm_trunk")
 | 
			
		||||
			trunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y-1, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y-1, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #trunks < 1 or #trunks > 2 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- 1 or 2 other trunks must be two levels below to the trunk being converted.
 | 
			
		||||
			trunks = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y-2, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y-2, z=tpos.z+1}, "moretrees:palm_trunk")
 | 
			
		||||
			trunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y-2, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y-2, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #trunks < 1 or #trunks > 2 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- 1 or 2 trunks must at the level of the trunk being converted.
 | 
			
		||||
			cvtrunks = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y, z=tpos.z+1}, "moretrees:palm_trunk")
 | 
			
		||||
			cvtrunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #cvtrunks < 1 or #cvtrunks > 2 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- No trunks may be one level above the trunk being converted.
 | 
			
		||||
			trunks = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y+1, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y+1, z=tpos.z+1}, "moretrees:palm_trunk")
 | 
			
		||||
			trunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y+1, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y+1, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #trunks ~= 0 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- Leaves must be one level above the trunk being converted.
 | 
			
		||||
			leaves = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y+1, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y+1, z=tpos.z+1}, "moretrees:palm_leaves")
 | 
			
		||||
			leaves = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y+1, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y+1, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_leaves"
 | 
			
		||||
			)
 | 
			
		||||
			if #leaves == 0 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- Leaves must be two levels above the trunk being converted.
 | 
			
		||||
			leaves = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y+2, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y+2, z=tpos.z+1}, "moretrees:palm_leaves")
 | 
			
		||||
			leaves = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y+2, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y+2, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_leaves"
 | 
			
		||||
			)
 | 
			
		||||
			if #leaves == 0 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- No cocos fruit trunk may already be adjacent to the coconut
 | 
			
		||||
			trunks = minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, "moretrees:palm_fruit_trunk")
 | 
			
		||||
			trunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=pos.x-1, y=pos.y, z=pos.z-1},
 | 
			
		||||
				{x=pos.x+1, y=pos.y, z=pos.z+1},
 | 
			
		||||
				"moretrees:palm_fruit_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #trunks ~= 0 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- No cocos fruit trunk may be adjacent to or below the trunk being converted.
 | 
			
		||||
			trunks = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y-2, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y, z=tpos.z+1}, "moretrees:palm_fruit_trunk")
 | 
			
		||||
			trunks = minetest.find_nodes_in_area(
 | 
			
		||||
				{x=tpos.x-1, y=tpos.y-2, z=tpos.z-1},
 | 
			
		||||
				{x=tpos.x+1, y=tpos.y, z=tpos.z+1},
 | 
			
		||||
				"moretrees:palm_fruit_trunk"
 | 
			
		||||
			)
 | 
			
		||||
			if #trunks ~= 0 then
 | 
			
		||||
				return
 | 
			
		||||
			end
 | 
			
		||||
			-- Convert trunk and all coconuts nearby. Maybe convert 2 trunks, just in case...
 | 
			
		||||
			for _, tpos in pairs(cvtrunks) do
 | 
			
		||||
				minetest.swap_node(tpos, {name = "moretrees:palm_fruit_trunk"})
 | 
			
		||||
				coconuts = minetest.find_nodes_in_area({x=tpos.x-1, y=tpos.y, z=tpos.z-1}, {x=tpos.x+1, y=tpos.y, z=tpos.z+1}, "moretrees:coconut")
 | 
			
		||||
			for _, tpos_1 in pairs(cvtrunks) do
 | 
			
		||||
				minetest.swap_node(tpos_1, {name = "moretrees:palm_fruit_trunk"})
 | 
			
		||||
				coconuts = minetest.find_nodes_in_area(
 | 
			
		||||
					{x=tpos_1.x-1, y=tpos_1.y, z=tpos_1.z-1},
 | 
			
		||||
					{x=tpos_1.x+1, y=tpos_1.y, z=tpos_1.z+1},
 | 
			
		||||
					"moretrees:coconut"
 | 
			
		||||
				)
 | 
			
		||||
				for _, coconutpos in pairs(coconuts) do
 | 
			
		||||
					minetest.swap_node(coconutpos, {name = "moretrees:coconut_3"})
 | 
			
		||||
				end
 | 
			
		||||
 
 | 
			
		||||
@@ -44,7 +44,11 @@ for k,v in pairs(trunk.tiles) do
 | 
			
		||||
end
 | 
			
		||||
ftrunk.drop = "moretrees:date_palm_trunk"
 | 
			
		||||
ftrunk.after_destruct = function(pos, oldnode)
 | 
			
		||||
	local dates = minetest.find_nodes_in_area({x=pos.x-2, y=pos.y, z=pos.z-2}, {x=pos.x+2, y=pos.y, z=pos.z+2}, {"group:moretrees_dates"})
 | 
			
		||||
	local dates = minetest.find_nodes_in_area(
 | 
			
		||||
		{x=pos.x-2, y=pos.y, z=pos.z-2},
 | 
			
		||||
		{x=pos.x+2, y=pos.y, z=pos.z+2},
 | 
			
		||||
		{"group:moretrees_dates"}
 | 
			
		||||
	)
 | 
			
		||||
	for _,datespos in pairs(dates) do
 | 
			
		||||
		-- minetest.dig_node(datespos) does not cause nearby dates to be dropped :-( ...
 | 
			
		||||
		local items = minetest.get_node_drops(minetest.get_node(datespos).name)
 | 
			
		||||
@@ -120,8 +124,11 @@ minetest.register_abm({
 | 
			
		||||
			type = "m"
 | 
			
		||||
			minetest.swap_node(pos, {name="moretrees:date_palm_mfruit_trunk"})
 | 
			
		||||
		end
 | 
			
		||||
		local dates1 = minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, "air")
 | 
			
		||||
		local genpos
 | 
			
		||||
		local dates1 = minetest.find_nodes_in_area(
 | 
			
		||||
			{x=pos.x-1, y=pos.y, z=pos.z-1},
 | 
			
		||||
			{x=pos.x+1, y=pos.y, z=pos.z+1},
 | 
			
		||||
			"air"
 | 
			
		||||
		)
 | 
			
		||||
		for _,genpos in pairs(dates1) do
 | 
			
		||||
			if math.random(100) <= 20 then
 | 
			
		||||
				if type == "m" then
 | 
			
		||||
@@ -131,7 +138,11 @@ minetest.register_abm({
 | 
			
		||||
				end
 | 
			
		||||
			end
 | 
			
		||||
		end
 | 
			
		||||
		local dates2 = minetest.find_nodes_in_area({x=pos.x-2, y=pos.y, z=pos.z-2}, {x=pos.x+2, y=pos.y, z=pos.z+2}, "air")
 | 
			
		||||
		local dates2 = minetest.find_nodes_in_area(
 | 
			
		||||
			{x=pos.x-2, y=pos.y, z=pos.z-2},
 | 
			
		||||
			{x=pos.x+2, y=pos.y, z=pos.z+2},
 | 
			
		||||
			"air"
 | 
			
		||||
		)
 | 
			
		||||
		for _,genpos in pairs(dates2) do
 | 
			
		||||
			if math.random(100) <= 5 then
 | 
			
		||||
				if type == "m" then
 | 
			
		||||
@@ -195,7 +206,7 @@ local function find_fruit_trunks_near(ftpos, sect)
 | 
			
		||||
	local r = moretrees.dates_pollination_distance + 2 * math.sqrt(2)
 | 
			
		||||
	local sect_hr = math.floor(r / 3 + 0.9999)
 | 
			
		||||
	local sect_vr = math.floor(r / 2 + 0.9999)
 | 
			
		||||
	local t0us = core.get_us_time()
 | 
			
		||||
	local t0us = minetest.get_us_time()
 | 
			
		||||
	local t0s = os.time()
 | 
			
		||||
 | 
			
		||||
	-- Compute elapsed time since last search.
 | 
			
		||||
@@ -266,7 +277,7 @@ local function find_fruit_trunks_near(ftpos, sect)
 | 
			
		||||
	end
 | 
			
		||||
 | 
			
		||||
	-- Update search statistics
 | 
			
		||||
	local t1us = core.get_us_time()
 | 
			
		||||
	local t1us = minetest.get_us_time()
 | 
			
		||||
	if t1us < t0us then
 | 
			
		||||
		-- Wraparound. Assume the search lasted less than 2^32 microseconds (~71 min)
 | 
			
		||||
		-- (so no need to apply another correction)
 | 
			
		||||
@@ -306,7 +317,7 @@ minetest.register_chatcommand("dates_stats", {
 | 
			
		||||
	params = "|chat|log|reset",
 | 
			
		||||
	privs = { server = true },
 | 
			
		||||
	func = function(name, param)
 | 
			
		||||
		param = string.lower(string.trim(param))
 | 
			
		||||
		param = string.lower(param:gsub("%s+", ""))
 | 
			
		||||
		if param == "" or param == "chat" then
 | 
			
		||||
			return dates_print_search_stats(false)
 | 
			
		||||
		elseif param == "log" then
 | 
			
		||||
@@ -526,7 +537,6 @@ end
 | 
			
		||||
local dates_growfn = function(pos, elapsed)
 | 
			
		||||
	local node = minetest.get_node(pos)
 | 
			
		||||
	local delay = moretrees.dates_grow_interval
 | 
			
		||||
	local r = moretrees.dates_pollination_distance
 | 
			
		||||
	local action
 | 
			
		||||
	if not node then
 | 
			
		||||
		return
 | 
			
		||||
@@ -594,15 +604,16 @@ local dates_growfn = function(pos, elapsed)
 | 
			
		||||
	return action
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
--[[
 | 
			
		||||
-- Alternate growth function for dates.
 | 
			
		||||
-- It calls the primary growth function, but also measures CPU time consumed.
 | 
			
		||||
-- Use this function to analyze date growing performance.
 | 
			
		||||
local stat = {}
 | 
			
		||||
stat.count = 0
 | 
			
		||||
local dates_growfn_profiling = function(pos, elapsed)
 | 
			
		||||
	local t0 = core.get_us_time()
 | 
			
		||||
	local t0 = minetest.get_us_time()
 | 
			
		||||
	local action = dates_growfn(pos, elapsed)
 | 
			
		||||
	local t1 = core.get_us_time()
 | 
			
		||||
	local t1 = minetest.get_us_time()
 | 
			
		||||
	if t1 < t0 then
 | 
			
		||||
		t1 = t1 + 2^32
 | 
			
		||||
	end
 | 
			
		||||
@@ -656,6 +667,7 @@ local dates_growfn_profiling = function(pos, elapsed)
 | 
			
		||||
			"TOTAL", count, sum/count))
 | 
			
		||||
	end
 | 
			
		||||
end
 | 
			
		||||
--]]
 | 
			
		||||
 | 
			
		||||
-- Register dates
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,9 +0,0 @@
 | 
			
		||||
default
 | 
			
		||||
biome_lib
 | 
			
		||||
vessels
 | 
			
		||||
doors?
 | 
			
		||||
stairs?
 | 
			
		||||
moreblocks?
 | 
			
		||||
intllib?
 | 
			
		||||
farming?
 | 
			
		||||
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
This mod adds a whole bunch of new types of trees to the game
 | 
			
		||||
							
								
								
									
										2
									
								
								mod.conf
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								mod.conf
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
name = moretrees
 | 
			
		||||
depends = default, biome_lib, vessels
 | 
			
		||||
optional_depends = doors, stairs, moreblocks, intllib, farming
 | 
			
		||||
optional_depends = doors, stairs, moreblocks, farming
 | 
			
		||||
min_minetest_version = 5.2.0
 | 
			
		||||
 
 | 
			
		||||
@@ -327,7 +327,7 @@ for i in ipairs(moretrees.treelist) do
 | 
			
		||||
		chance = 1,
 | 
			
		||||
		action = function(pos, node, active_object_count, active_object_count_wider)
 | 
			
		||||
			local fdir = node.param2 or 0
 | 
			
		||||
				nfdir = dirs2[fdir+1]
 | 
			
		||||
				local nfdir = dirs2[fdir+1]
 | 
			
		||||
			minetest.add_node(pos, {name = "moretrees:"..treename.."_trunk", param2 = nfdir})
 | 
			
		||||
		end,
 | 
			
		||||
	})
 | 
			
		||||
@@ -490,7 +490,6 @@ minetest.register_node("moretrees:rubber_tree_trunk_empty", {
 | 
			
		||||
		"moretrees_rubber_tree_trunk_top.png",
 | 
			
		||||
		"moretrees_rubber_tree_trunk_empty.png"
 | 
			
		||||
	},
 | 
			
		||||
	is_ground_content = true,
 | 
			
		||||
	groups = {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
 | 
			
		||||
	sounds = default.node_sound_wood_defaults(),
 | 
			
		||||
	paramtype2 = "facedir",
 | 
			
		||||
@@ -504,7 +503,7 @@ minetest.register_abm({
 | 
			
		||||
	chance = 1,
 | 
			
		||||
	action = function(pos, node, active_object_count, active_object_count_wider)
 | 
			
		||||
		local fdir = node.param2 or 0
 | 
			
		||||
			nfdir = dirs2[fdir+1]
 | 
			
		||||
			local nfdir = dirs2[fdir+1]
 | 
			
		||||
		minetest.add_node(pos, {name = "moretrees:rubber_tree_trunk_empty", param2 = nfdir})
 | 
			
		||||
	end,
 | 
			
		||||
})
 | 
			
		||||
 
 | 
			
		||||
@@ -31,7 +31,7 @@ index 8189ffd..afd4644 100644
 | 
			
		||||
@@ -225,9 +225,12 @@ moretrees.ct_rules_b1 = "[-FBf][+FBf]"
 | 
			
		||||
 moretrees.ct_rules_a2 = "FF[FF][&&-FBF][&&+FBF][&&---FBF][&&+++FBF]F/A"
 | 
			
		||||
 moretrees.ct_rules_b2 = "[-fB][+fB]"
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
+local jleaves = 1
 | 
			
		||||
 function moretrees.grow_jungletree(pos)
 | 
			
		||||
        local r1 = math.random(2)
 | 
			
		||||
@@ -40,11 +40,11 @@ index 8189ffd..afd4644 100644
 | 
			
		||||
+       jleaves = jleaves % 2 + 1
 | 
			
		||||
        if r1 == 1 then
 | 
			
		||||
                moretrees.jungletree_model.leaves2 = "moretrees:jungletree_leaves_red"
 | 
			
		||||
        else 
 | 
			
		||||
        else
 | 
			
		||||
@@ -235,6 +238,7 @@ function moretrees.grow_jungletree(pos)
 | 
			
		||||
        end
 | 
			
		||||
        moretrees.jungletree_model.leaves2_chance = math.random(25, 75)
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
+       r2=3
 | 
			
		||||
        if r2 == 1 then
 | 
			
		||||
                moretrees.jungletree_model.trunk_type = "single"
 | 
			
		||||
@@ -62,7 +62,7 @@ minetest.register_chatcommand("make-scene", {
 | 
			
		||||
		minetest.place_node({x=780, y=30, z=-276}, {name="default:obsidian"})
 | 
			
		||||
 | 
			
		||||
		for z = -360, -300 do
 | 
			
		||||
			dy=2
 | 
			
		||||
			local dy=2
 | 
			
		||||
			for x = 630 + (-z - 360)/3, 660 + (-z - 300)/3 do
 | 
			
		||||
				for y = 5, 22 do
 | 
			
		||||
					minetest.place_node({x=x, y=y, z=z}, {name="default:desert_stone"})
 | 
			
		||||
 
 | 
			
		||||
@@ -49,7 +49,6 @@ moretrees.poplar_model={
 | 
			
		||||
	rules_b="[[T]&&G++f++ff++ff++ff++f--]G",
 | 
			
		||||
	rules_c="[[T]&&G++f++ff++ff++ff++f--G++[d]G[d]G++G[d]G[d]G[d]G++G[d]G[d]G[d]G++G[d]G[d]G[d]G++G[d]G]G",
 | 
			
		||||
	rules_d="f",
 | 
			
		||||
	trunk="air",
 | 
			
		||||
	trunk="moretrees:poplar_trunk",
 | 
			
		||||
	leaves="moretrees:poplar_leaves",
 | 
			
		||||
	angle=45,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user