mirror of
				https://github.com/mt-mods/plantlife_modpack.git
				synced 2025-10-31 05:45:24 +01:00 
			
		
		
		
	Compare commits
	
		
			7 Commits
		
	
	
		
			2020-02-16
			...
			2021-04-14
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 70df655a42 | ||
|  | 4876fc1265 | ||
|  | 81b2b0898b | ||
|  | a750bac532 | ||
|  | b4b24dedba | ||
|  | 622016713e | ||
|  | 9963e588d6 | 
| @@ -7,6 +7,8 @@ local mname		= "cavestuff" | ||||
| -- support for i18n | ||||
| local S = minetest.get_translator("cavestuff") | ||||
|  | ||||
| cavestuff = {} | ||||
|  | ||||
| dofile(minetest.get_modpath("cavestuff").."/nodes.lua") | ||||
| dofile(minetest.get_modpath("cavestuff").."/mapgen.lua") | ||||
|  | ||||
|   | ||||
| @@ -1,52 +1,39 @@ | ||||
| --Map Generation Stuff | ||||
|  | ||||
| minetest.register_on_generated(function(minp, maxp, seed) | ||||
| 	if maxp.y >= 2 and minp.y <= 0 then | ||||
| 		-- Generate pebbles | ||||
| 		local perlin1 = minetest.get_perlin(329, 3, 0.6, 100) | ||||
| 		-- Assume X and Z lengths are equal | ||||
| 		local divlen = 16 | ||||
| 		local divs = (maxp.x-minp.x)/divlen+1; | ||||
| 		for divx=0,divs-1 do | ||||
| 		for divz=0,divs-1 do | ||||
| 			local x0 = minp.x + math.floor((divx+0)*divlen) | ||||
| 			local z0 = minp.z + math.floor((divz+0)*divlen) | ||||
| 			local x1 = minp.x + math.floor((divx+1)*divlen) | ||||
| 			local z1 = minp.z + math.floor((divz+1)*divlen) | ||||
| 			-- Determine pebble amount from perlin noise | ||||
| 			local pebble_amount = math.floor(perlin1:get2d({x=x0, y=z0}) ^ 2 * 2) | ||||
| 			-- Find random positions for pebbles based on this random | ||||
| 			local pr = PseudoRandom(seed+1) | ||||
| 			for i=0,pebble_amount do | ||||
| 				local x = pr:next(x0, x1) | ||||
| 				local z = pr:next(z0, z1) | ||||
| 				-- Find ground level (0...15) | ||||
| 				local ground_y = nil | ||||
| 				for y=30,0,-1 do | ||||
| 					if minetest.get_node({x=x,y=y,z=z}).name ~= "air" then | ||||
| 						ground_y = y | ||||
| 						break | ||||
| 					end | ||||
| 				end | ||||
| biome_lib:register_generate_plant( | ||||
| 	{ | ||||
| 		surface = { | ||||
| 			"default:dirt_with_grass", | ||||
| 			"default:gravel", | ||||
| 			"default:stone", | ||||
| 			"default:permafrost_with_stones" | ||||
| 		}, | ||||
| 		max_count = 50, | ||||
| 		rarity = 0, | ||||
| 		plantlife_limit = -1, | ||||
| 		check_air = true, | ||||
| 		random_facedir = {0, 3} | ||||
| 	}, | ||||
| 	{ | ||||
| 		"cavestuff:pebble_1", | ||||
| 		"cavestuff:pebble_2" | ||||
| 	} | ||||
| ) | ||||
|  | ||||
| 				if ground_y then | ||||
| 					local p = {x=x,y=ground_y+1,z=z} | ||||
| 					local nn = minetest.get_node(p).name | ||||
| 					-- Check if the node can be replaced | ||||
| 					if minetest.registered_nodes[nn] and | ||||
| 						minetest.registered_nodes[nn].buildable_to then | ||||
| 						nn = minetest.get_node({x=x,y=ground_y,z=z}).name | ||||
| 						-- If desert sand, add dry shrub | ||||
| 						if nn == "default:dirt_with_grass" then | ||||
| 							minetest.swap_node(p,{name="cavestuff:pebble_"..pr:next(1,2), param2=math.random(0,3)}) | ||||
| 						elseif nn == "default:desert_sand" then | ||||
| 							minetest.swap_node(p,{name="cavestuff:desert_pebble_"..pr:next(1,2), param2=math.random(0,3)}) | ||||
| 					    end | ||||
| 					end | ||||
| 				end | ||||
|  | ||||
| 			end | ||||
| 		end | ||||
| 		end | ||||
| 	end | ||||
| end) | ||||
| biome_lib:register_generate_plant( | ||||
| 	{ | ||||
| 		surface = { | ||||
| 			"default:desert_sand", | ||||
| 			"default:desert_stone" | ||||
| 		}, | ||||
| 		max_count = 50, | ||||
| 		rarity = 0, | ||||
| 		plantlife_limit = -1, | ||||
| 		check_air = true, | ||||
| 		random_facedir = {0, 3} | ||||
| 	}, | ||||
| 	{ | ||||
| 		"cavestuff:desert_pebble_1", | ||||
| 		"cavestuff:desert_pebble_2" | ||||
| 	} | ||||
| ) | ||||
|   | ||||
| @@ -1,2 +1,2 @@ | ||||
| name = cavestuff | ||||
| depends = default | ||||
| depends = default,biome_lib | ||||
|   | ||||
| @@ -7,26 +7,24 @@ | ||||
| -- Looked at code from:		default | ||||
| ----------------------------------------------------------------------------------------------- | ||||
|  | ||||
| abstract_dryplants.grow_grass = function(pos) | ||||
| 	local right_here = {x=pos.x, y=pos.y+1, z=pos.z} | ||||
| 	local grass_size = math.random(1,5) | ||||
| 	if minetest.get_node(right_here).name == "air"  -- instead of check_air = true, | ||||
| 	or minetest.get_node(right_here).name == "default:junglegrass" then | ||||
| 		minetest.swap_node(right_here, {name="default:grass_"..grass_size}) | ||||
| 	end | ||||
| end | ||||
|  | ||||
| biome_lib:register_generate_plant({ | ||||
|     surface = { | ||||
| 		"default:dirt_with_grass", | ||||
| 		"stoneage:grass_with_silex", | ||||
| 		"sumpf:peat", | ||||
| 		"sumpf:sumpf" | ||||
| biome_lib:register_generate_plant( | ||||
| 	{ | ||||
| 		surface = { | ||||
| 			"default:dirt_with_grass", | ||||
| 			"stoneage:grass_with_silex", | ||||
| 			"sumpf:peat", | ||||
| 			"sumpf:sumpf" | ||||
| 		}, | ||||
| 		max_count = TALL_GRASS_PER_MAPBLOCK, | ||||
| 		rarity = 101 - TALL_GRASS_RARITY, | ||||
| 		min_elevation = 1, -- above sea level | ||||
| 		plantlife_limit = -0.9, | ||||
| 		check_air = true, | ||||
| 	}, | ||||
|     max_count = TALL_GRASS_PER_MAPBLOCK, | ||||
|     rarity = 101 - TALL_GRASS_RARITY, | ||||
|     min_elevation = 1, -- above sea level | ||||
| 	plantlife_limit = -0.9, | ||||
|   }, | ||||
|   abstract_dryplants.grow_grass | ||||
| 	{	"default:grass_1", | ||||
| 		"default:grass_2", | ||||
| 		"default:grass_3", | ||||
| 		"default:grass_4", | ||||
| 		"default:grass_5" | ||||
| 	} | ||||
| ) | ||||
|   | ||||
							
								
								
									
										1
									
								
								modpack.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								modpack.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| min_minetest_version = 5.2.0 | ||||
| @@ -42,6 +42,14 @@ for i in pairs(NoDe) do | ||||
| 		liquids_pointable = true, | ||||
| 		on_place = function(itemstack, placer, pointed_thing) | ||||
| 			local pt = pointed_thing | ||||
|  | ||||
| 			if not placer then return end | ||||
| 			local playername = placer:get_player_name() | ||||
| 			if minetest.is_protected(pt.above, playername) then  | ||||
| 				minetest.record_protection_violation(pt.above, playername) | ||||
| 				return | ||||
| 			end | ||||
|  | ||||
| 			local direction = minetest.dir_to_facedir(placer:get_look_dir()) | ||||
| 			if minetest.get_node(pt.above).name=="air" then | ||||
| 				minetest.swap_node(pt.above, {name="trunks:twig_"..math.random(1,4), param2=direction}) | ||||
|   | ||||
| @@ -19,6 +19,11 @@ minetest.register_node("woodsoils:dirt_with_leaves_1", { | ||||
| 	sounds = default.node_sound_dirt_defaults({ | ||||
| 		footstep = {name="default_grass_footstep", gain=0.4}, | ||||
| 	}), | ||||
| 	soil = { | ||||
| 		base = "woodsoils:dirt_with_leaves_1", | ||||
| 		dry = "farming:soil", | ||||
| 		wet = "farming:soil_wet" | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| minetest.register_node("woodsoils:dirt_with_leaves_2", { | ||||
| @@ -37,6 +42,11 @@ minetest.register_node("woodsoils:dirt_with_leaves_2", { | ||||
| 	sounds = default.node_sound_dirt_defaults({ | ||||
| 		footstep = {name="default_grass_footstep", gain=0.4}, | ||||
| 	}), | ||||
| 	soil = { | ||||
| 		base = "woodsoils:dirt_with_leaves_2", | ||||
| 		dry = "farming:soil", | ||||
| 		wet = "farming:soil_wet" | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| minetest.register_node("woodsoils:grass_with_leaves_1", { | ||||
| @@ -55,6 +65,11 @@ minetest.register_node("woodsoils:grass_with_leaves_1", { | ||||
| 	sounds = default.node_sound_dirt_defaults({ | ||||
| 		footstep = {name="default_grass_footstep", gain=0.4}, | ||||
| 	}), | ||||
| 	soil = { | ||||
| 		base = "woodsoils:grass_with_leaves_1", | ||||
| 		dry = "farming:soil", | ||||
| 		wet = "farming:soil_wet" | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| minetest.register_node("woodsoils:grass_with_leaves_2", { | ||||
| @@ -73,6 +88,11 @@ minetest.register_node("woodsoils:grass_with_leaves_2", { | ||||
| 	sounds = default.node_sound_dirt_defaults({ | ||||
| 		footstep = {name="default_grass_footstep", gain=0.4}, | ||||
| 	}), | ||||
| 	soil = { | ||||
| 		base = "woodsoils:grass_with_leaves_2", | ||||
| 		dry = "farming:soil", | ||||
| 		wet = "farming:soil_wet" | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| -- For compatibility with older stuff | ||||
|   | ||||
		Reference in New Issue
	
	Block a user