forked from luanti-org/minetest_game
		
	Add biomes for mgv5 and mgv7
This commit is contained in:
		| @@ -2,7 +2,6 @@ | |||||||
| -- Aliases for map generator outputs | -- Aliases for map generator outputs | ||||||
| -- | -- | ||||||
|  |  | ||||||
|  |  | ||||||
| minetest.register_alias("mapgen_stone", "default:stone") | minetest.register_alias("mapgen_stone", "default:stone") | ||||||
| minetest.register_alias("mapgen_dirt", "default:dirt") | minetest.register_alias("mapgen_dirt", "default:dirt") | ||||||
| minetest.register_alias("mapgen_dirt_with_grass", "default:dirt_with_grass") | minetest.register_alias("mapgen_dirt_with_grass", "default:dirt_with_grass") | ||||||
| @@ -19,6 +18,8 @@ minetest.register_alias("mapgen_snow", "default:snow") | |||||||
| minetest.register_alias("mapgen_ice", "default:ice") | minetest.register_alias("mapgen_ice", "default:ice") | ||||||
| minetest.register_alias("mapgen_sandstone", "default:sandstone") | minetest.register_alias("mapgen_sandstone", "default:sandstone") | ||||||
|  |  | ||||||
|  | -- Flora | ||||||
|  |  | ||||||
| minetest.register_alias("mapgen_tree", "default:tree") | minetest.register_alias("mapgen_tree", "default:tree") | ||||||
| minetest.register_alias("mapgen_leaves", "default:leaves") | minetest.register_alias("mapgen_leaves", "default:leaves") | ||||||
| minetest.register_alias("mapgen_apple", "default:apple") | minetest.register_alias("mapgen_apple", "default:apple") | ||||||
| @@ -28,6 +29,8 @@ minetest.register_alias("mapgen_junglegrass", "default:junglegrass") | |||||||
| minetest.register_alias("mapgen_pinetree", "default:pinetree") | minetest.register_alias("mapgen_pinetree", "default:pinetree") | ||||||
| minetest.register_alias("mapgen_pine_needles", "default:pine_needles") | minetest.register_alias("mapgen_pine_needles", "default:pine_needles") | ||||||
|  |  | ||||||
|  | -- Dungeons | ||||||
|  |  | ||||||
| minetest.register_alias("mapgen_cobble", "default:cobble") | minetest.register_alias("mapgen_cobble", "default:cobble") | ||||||
| minetest.register_alias("mapgen_stair_cobble", "stairs:stair_cobble") | minetest.register_alias("mapgen_stair_cobble", "stairs:stair_cobble") | ||||||
| minetest.register_alias("mapgen_mossycobble", "default:mossycobble") | minetest.register_alias("mapgen_mossycobble", "default:mossycobble") | ||||||
| @@ -39,10 +42,13 @@ minetest.register_alias("mapgen_stair_sandstonebrick", "stairs:stair_sandstonebr | |||||||
| -- Register ores | -- Register ores | ||||||
| -- | -- | ||||||
|  |  | ||||||
|  | -- All mapgens except singlenode | ||||||
| -- Blob ore first to avoid other ores inside blobs | -- Blob ore first to avoid other ores inside blobs | ||||||
|  |  | ||||||
| function default.register_ores() | function default.register_ores() | ||||||
|  |  | ||||||
|  | 	-- Clay | ||||||
|  |  | ||||||
| 	minetest.register_ore({  | 	minetest.register_ore({  | ||||||
| 		ore_type         = "blob", | 		ore_type         = "blob", | ||||||
| 		ore              = "default:clay", | 		ore              = "default:clay", | ||||||
| @@ -62,6 +68,8 @@ function default.register_ores() | |||||||
| 		}, | 		}, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Sand | ||||||
|  |  | ||||||
| 	minetest.register_ore({  | 	minetest.register_ore({  | ||||||
| 		ore_type         = "blob", | 		ore_type         = "blob", | ||||||
| 		ore              = "default:sand", | 		ore              = "default:sand", | ||||||
| @@ -81,6 +89,8 @@ function default.register_ores() | |||||||
| 		}, | 		}, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Dirt | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type         = "blob", | 		ore_type         = "blob", | ||||||
| 		ore              = "default:dirt", | 		ore              = "default:dirt", | ||||||
| @@ -100,6 +110,8 @@ function default.register_ores() | |||||||
| 		}, | 		}, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Gravel | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type         = "blob", | 		ore_type         = "blob", | ||||||
| 		ore              = "default:gravel", | 		ore              = "default:gravel", | ||||||
| @@ -119,6 +131,8 @@ function default.register_ores() | |||||||
| 		}, | 		}, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Coal | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type       = "scatter", | 		ore_type       = "scatter", | ||||||
| 		ore            = "default:stone_with_coal", | 		ore            = "default:stone_with_coal", | ||||||
| @@ -141,6 +155,8 @@ function default.register_ores() | |||||||
| 		y_max          = 0, | 		y_max          = 0, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Iron | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type       = "scatter", | 		ore_type       = "scatter", | ||||||
| 		ore            = "default:stone_with_iron", | 		ore            = "default:stone_with_iron", | ||||||
| @@ -185,6 +201,8 @@ function default.register_ores() | |||||||
| 		y_max          = -64, | 		y_max          = -64, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	--Mese | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type       = "scatter", | 		ore_type       = "scatter", | ||||||
| 		ore            = "default:stone_with_mese", | 		ore            = "default:stone_with_mese", | ||||||
| @@ -218,6 +236,8 @@ function default.register_ores() | |||||||
| 		y_max          = -1024, | 		y_max          = -1024, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Gold | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type       = "scatter", | 		ore_type       = "scatter", | ||||||
| 		ore            = "default:stone_with_gold", | 		ore            = "default:stone_with_gold", | ||||||
| @@ -240,6 +260,8 @@ function default.register_ores() | |||||||
| 		y_max          = -256, | 		y_max          = -256, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Diamond | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type       = "scatter", | 		ore_type       = "scatter", | ||||||
| 		ore            = "default:stone_with_diamond", | 		ore            = "default:stone_with_diamond", | ||||||
| @@ -262,6 +284,8 @@ function default.register_ores() | |||||||
| 		y_max          = -256, | 		y_max          = -256, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Copper | ||||||
|  |  | ||||||
| 	minetest.register_ore({ | 	minetest.register_ore({ | ||||||
| 		ore_type       = "scatter", | 		ore_type       = "scatter", | ||||||
| 		ore            = "default:stone_with_copper", | 		ore            = "default:stone_with_copper", | ||||||
| @@ -290,29 +314,68 @@ end | |||||||
| -- Register biomes | -- Register biomes | ||||||
| -- | -- | ||||||
|  |  | ||||||
|  | -- All mapgens except mgv6 and singlenode | ||||||
|  |  | ||||||
| function default.register_biomes() | function default.register_biomes() | ||||||
| 	minetest.clear_registered_biomes() | 	minetest.clear_registered_biomes() | ||||||
|  |  | ||||||
|  | 	-- Permanent ice | ||||||
|  |  | ||||||
| 	minetest.register_biome({ | 	minetest.register_biome({ | ||||||
| 		name = "default:grassland", | 		name = "glacier", | ||||||
| 		--node_dust = "", | 		node_dust = "default:snowblock", | ||||||
| 		node_top = "default:dirt_with_grass", | 		node_top = "default:snowblock", | ||||||
| 		depth_top = 1, | 		depth_top = 1, | ||||||
| 		node_filler = "default:dirt", | 		node_filler = "default:snowblock", | ||||||
| 		depth_filler = 1, | 		depth_filler = 3, | ||||||
| 		--node_stone = "", | 		node_stone = "default:ice", | ||||||
| 		--node_water_top = "", | 		node_water_top = "default:ice", | ||||||
| 		--depth_water_top = , | 		depth_water_top = 8, | ||||||
| 		--node_water = "", | 		--node_water = "", | ||||||
| 		y_min = 5, | 		y_min = -6, | ||||||
| 		y_max = 31000, | 		y_max = 31000, | ||||||
| 		heat_point = 50, | 		heat_point = -5, | ||||||
| 		humidity_point = 50, | 		humidity_point = 50, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
| 	minetest.register_biome({ | 	minetest.register_biome({ | ||||||
| 		name = "default:grassland_ocean", | 		name = "glacier_ocean", | ||||||
|  | 		node_dust = "default:snowblock", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = -7, | ||||||
|  | 		heat_point = -5, | ||||||
|  | 		humidity_point = 50, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Cold | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "tundra", | ||||||
|  | 		node_dust = "default:snow", | ||||||
|  | 		node_top = "default:dirt_with_snow", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 0, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 2, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 20, | ||||||
|  | 		humidity_point = 30, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "tundra_ocean", | ||||||
| 		--node_dust = "", | 		--node_dust = "", | ||||||
| 		node_top = "default:sand", | 		node_top = "default:sand", | ||||||
| 		depth_top = 1, | 		depth_top = 1, | ||||||
| @@ -322,8 +385,322 @@ function default.register_biomes() | |||||||
| 		--node_water_top = "", | 		--node_water_top = "", | ||||||
| 		--depth_water_top = , | 		--depth_water_top = , | ||||||
| 		--node_water = "", | 		--node_water = "", | ||||||
| 		y_min = -31000, | 		y_min = -112, | ||||||
|  | 		y_max = 1, | ||||||
|  | 		heat_point = 20, | ||||||
|  | 		humidity_point = 30, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "taiga", | ||||||
|  | 		node_dust = "default:snow", | ||||||
|  | 		node_top = "default:snowblock", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 2, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 20, | ||||||
|  | 		humidity_point = 70, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "taiga_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = 1, | ||||||
|  | 		heat_point = 20, | ||||||
|  | 		humidity_point = 70, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Cool | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "stone_grassland", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt_with_grass", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 0, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 45, | ||||||
|  | 		humidity_point = 30, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "stone_grassland_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = 5, | ||||||
|  | 		heat_point = 45, | ||||||
|  | 		humidity_point = 30, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "coniferous_forest", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt_with_grass", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 45, | ||||||
|  | 		humidity_point = 70, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "coniferous_forest_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = 5, | ||||||
|  | 		heat_point = 45, | ||||||
|  | 		humidity_point = 70, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Warm | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "sandstone_grassland", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt_with_grass", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 0, | ||||||
|  | 		node_stone = "default:sandstone", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 70, | ||||||
|  | 		humidity_point = 30, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "sandstone_grassland_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		node_stone = "default:sandstone", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = 5, | ||||||
|  | 		heat_point = 70, | ||||||
|  | 		humidity_point = 30, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "deciduous_forest", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt_with_grass", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 70, | ||||||
|  | 		humidity_point = 70, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "deciduous_forest_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = 5, | ||||||
|  | 		heat_point = 70, | ||||||
|  | 		humidity_point = 70, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Hot | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "desert", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:desert_sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:desert_sand", | ||||||
|  | 		depth_filler = 1, | ||||||
|  | 		node_stone = "default:desert_stone", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 1, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 10, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "desert_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		node_stone = "default:desert_stone", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = 0, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 10, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "savanna", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt_with_dry_grass", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 1, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 5, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 50, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "savanna_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
| 		y_max = 4, | 		y_max = 4, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 50, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "rainforest", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt_with_grass", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 1, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 90, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "rainforest_swamp", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:dirt", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:dirt", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = 0, | ||||||
|  | 		y_max = 0, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 90, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "rainforest_ocean", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		node_top = "default:sand", | ||||||
|  | 		depth_top = 1, | ||||||
|  | 		node_filler = "default:sand", | ||||||
|  | 		depth_filler = 2, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -112, | ||||||
|  | 		y_max = -1, | ||||||
|  | 		heat_point = 95, | ||||||
|  | 		humidity_point = 90, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Underground | ||||||
|  |  | ||||||
|  | 	minetest.register_biome({ | ||||||
|  | 		name = "underground", | ||||||
|  | 		--node_dust = "", | ||||||
|  | 		--node_top = "", | ||||||
|  | 		depth_top = 0, | ||||||
|  | 		--node_filler = "", | ||||||
|  | 		depth_filler = -4, | ||||||
|  | 		--node_stone = "", | ||||||
|  | 		--node_water_top = "", | ||||||
|  | 		--depth_water_top = , | ||||||
|  | 		--node_water = "", | ||||||
|  | 		y_min = -31000, | ||||||
|  | 		y_max = -113, | ||||||
| 		heat_point = 50, | 		heat_point = 50, | ||||||
| 		humidity_point = 50, | 		humidity_point = 50, | ||||||
| 	}) | 	}) | ||||||
| @@ -331,11 +708,13 @@ end | |||||||
|  |  | ||||||
|  |  | ||||||
| -- | -- | ||||||
| -- Register mgv6 decorations | -- Register decorations | ||||||
| -- | -- | ||||||
|  |  | ||||||
|  | -- Mgv6 | ||||||
|  |  | ||||||
| function default.register_mgv6_decorations() | function default.register_mgv6_decorations() | ||||||
|  | 	minetest.clear_registered_decorations() | ||||||
|  |  | ||||||
| 	-- Papyrus | 	-- Papyrus | ||||||
|  |  | ||||||
| @@ -381,7 +760,7 @@ function default.register_mgv6_decorations() | |||||||
| 	        height_max = 4, | 	        height_max = 4, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
| 	-- Grasses | 	-- Long grasses | ||||||
|  |  | ||||||
| 	for length = 1, 5 do | 	for length = 1, 5 do | ||||||
| 		minetest.register_decoration({ | 		minetest.register_decoration({ | ||||||
| @@ -422,214 +801,245 @@ function default.register_mgv6_decorations() | |||||||
| 	}) | 	}) | ||||||
| end | end | ||||||
|  |  | ||||||
|  | -- All mapgens except mgv6 and singlenode | ||||||
|  |  | ||||||
| -- | local function register_grass_decoration(offset, scale, length) | ||||||
| -- Register decorations | 	minetest.register_decoration({ | ||||||
| -- | 		deco_type = "simple", | ||||||
|  | 		place_on = {"default:dirt_with_grass", "default:sand"}, | ||||||
|  | 		sidelen = 16, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = offset, | ||||||
|  | 			scale = scale, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = 329, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.6 | ||||||
|  | 		}, | ||||||
|  | 		biomes = { | ||||||
|  | 			"stone_grassland", "stone_grassland_ocean", | ||||||
|  | 			"sandstone_grassland", "sandstone_grassland_ocean", | ||||||
|  | 			"deciduous_forest", "deciduous_forest_ocean", | ||||||
|  | 			"coniferous_forest", "coniferous_forest_ocean", | ||||||
|  | 		}, | ||||||
|  | 		y_min = 5, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		decoration = "default:grass_"..length, | ||||||
|  | 	}) | ||||||
|  | end | ||||||
|  |  | ||||||
|  | local function register_dry_grass_decoration(length) | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "simple", | ||||||
|  | 		place_on = {"default:dirt_with_dry_grass"}, | ||||||
|  | 		sidelen = 16, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = 0.04, | ||||||
|  | 			scale = 0.02, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = 329, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.6 | ||||||
|  | 		}, | ||||||
|  | 		biomes = {"savanna"}, | ||||||
|  | 		y_min = 5, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		decoration = "default:dry_grass_"..length, | ||||||
|  | 	}) | ||||||
|  | end | ||||||
|  |  | ||||||
| function default.register_decorations() | function default.register_decorations() | ||||||
|  | 	minetest.clear_registered_decorations() | ||||||
|  |  | ||||||
| 	-- Flowers | 	-- Apple tree | ||||||
|  |  | ||||||
| 	minetest.register_decoration({ | 	minetest.register_decoration({ | ||||||
| 		deco_type = "simple", | 		deco_type = "schematic", | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.03, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 436, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "flowers:rose", |  | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.03, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 19822, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = 33, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "flowers:tulip", |  | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.03, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 1220999, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "flowers:dandelion_yellow", |  | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.03, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 36662, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "flowers:geranium", |  | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.03, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 1133, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "flowers:viola", |  | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.03, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 73133, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "flowers:dandelion_white", |  | ||||||
| 	}) |  | ||||||
|  |  | ||||||
| 	-- Grasses |  | ||||||
|  |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, | 		place_on = {"default:dirt_with_grass"}, | ||||||
| 		sidelen = 16, | 		sidelen = 16, | ||||||
| 		noise_params = { | 		noise_params = { | ||||||
| 			offset = 0.04, | 			offset = 0.04, | ||||||
| 			scale = 0.04, | 			scale = 0.02, | ||||||
| 			spread = {x = 200, y = 200, z = 200}, | 			spread = {x=250, y=250, z=250}, | ||||||
| 			seed = 66440, | 			seed = 2, | ||||||
| 			octaves = 3, | 			octaves = 3, | ||||||
| 			persist = 0.6 | 			persist = 0.66 | ||||||
| 		}, | 		}, | ||||||
| 		biomes = {"default:grassland"}, | 		biomes = {"deciduous_forest"}, | ||||||
| 		y_min = -31000, | 		y_min = 6, | ||||||
| 		y_max = 31000, | 		y_max = 31000, | ||||||
| 		decoration = "default:grass_1", | 		schematic = minetest.get_modpath("default").."/schematics/apple_tree.mts", | ||||||
|  | 		flags = "place_center_x, place_center_z", | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Jungle tree | ||||||
|  |  | ||||||
| 	minetest.register_decoration({ | 	minetest.register_decoration({ | ||||||
| 		deco_type = "simple", | 		deco_type = "schematic", | ||||||
| 		place_on = {"default:dirt_with_grass"}, | 		place_on = {"default:dirt_with_grass", "default:dirt"}, | ||||||
|  | 		sidelen = 80, | ||||||
|  | 		fill_ratio = 0.09, | ||||||
|  | 		biomes = {"rainforest", "rainforest_swamp"}, | ||||||
|  | 		y_min = 0, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		schematic = minetest.get_modpath("default").."/schematics/jungle_tree.mts", | ||||||
|  | 		flags = "place_center_x, place_center_z", | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Taiga and temperate forest pine tree | ||||||
|  |  | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "schematic", | ||||||
|  | 		place_on = {"default:snowblock", "default:dirt_with_grass"}, | ||||||
| 		sidelen = 16, | 		sidelen = 16, | ||||||
| 		noise_params = { | 		noise_params = { | ||||||
| 			offset = 0.02, | 			offset = 0.04, | ||||||
| 			scale = 0.06, | 			scale = 0.02, | ||||||
| 			spread = {x = 200, y = 200, z = 200}, | 			spread = {x=250, y=250, z=250}, | ||||||
| 			seed = 66440, | 			seed = 2, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.66 | ||||||
|  | 		}, | ||||||
|  | 		biomes = {"taiga", "coniferous_forest"}, | ||||||
|  | 		y_min = 2, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		schematic = minetest.get_modpath("default").."/schematics/pine_tree.mts", | ||||||
|  | 		flags = "place_center_x, place_center_z", | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Acacia tree | ||||||
|  |  | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "schematic", | ||||||
|  | 		place_on = {"default:dirt_with_dry_grass"}, | ||||||
|  | 		sidelen = 80, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = 0.001, | ||||||
|  | 			scale = 0.0015, | ||||||
|  | 			spread = {x=250, y=250, z=250}, | ||||||
|  | 			seed = 2, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.66 | ||||||
|  | 		}, | ||||||
|  | 		biomes = {"savanna"}, | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		schematic = minetest.get_modpath("default").."/schematics/acacia_tree.mts", | ||||||
|  | 		flags = "place_center_x, place_center_z", | ||||||
|  | 		rotation = "random", | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Large cactus | ||||||
|  |  | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "schematic", | ||||||
|  | 		place_on = {"default:desert_sand"}, | ||||||
|  | 		sidelen = 80, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = -0.0005, | ||||||
|  | 			scale = 0.0015, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = 230, | ||||||
| 			octaves = 3, | 			octaves = 3, | ||||||
| 			persist = 0.6 | 			persist = 0.6 | ||||||
| 		}, | 		}, | ||||||
| 		biomes = {"default:grassland"}, | 		biomes = {"desert"}, | ||||||
| 		y_min = -31000, | 		y_min = 2, | ||||||
| 		y_max = 31000, | 		y_max = 31000, | ||||||
| 		decoration = "default:grass_2", | 		schematic = minetest.get_modpath("default").."/schematics/large_cactus.mts", | ||||||
|  | 		flags = "place_center_x", | ||||||
|  | 		rotation = "random", | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|  | 	-- Cactus | ||||||
|  |  | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "simple", | ||||||
|  | 		place_on = {"default:desert_sand"}, | ||||||
|  | 		sidelen = 80, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = -0.0005, | ||||||
|  | 			scale = 0.0015, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = 230, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.6 | ||||||
|  | 		}, | ||||||
|  | 		biomes = {"desert"}, | ||||||
|  | 		y_min = 2, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		decoration = "default:cactus", | ||||||
|  | 		height = 2, | ||||||
|  | 	        height_max = 5, | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Papyrus | ||||||
|  |  | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "schematic", | ||||||
|  | 		place_on = {"default:sand"}, | ||||||
|  | 		sidelen = 16, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = -0.3, | ||||||
|  | 			scale = 0.7, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = 354, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.7 | ||||||
|  | 		}, | ||||||
|  | 		biomes = {"savanna_ocean", "desert_ocean"}, | ||||||
|  | 		y_min = 0, | ||||||
|  | 		y_max = 0, | ||||||
|  | 		schematic = minetest.get_modpath("default").."/schematics/papyrus.mts", | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Grasses | ||||||
|  |  | ||||||
|  | 	register_grass_decoration(-0.03,  0.09,  5) | ||||||
|  | 	register_grass_decoration(-0.015, 0.075, 4) | ||||||
|  | 	register_grass_decoration(0,      0.06,  3) | ||||||
|  | 	register_grass_decoration(0.015,  0.045, 2) | ||||||
|  | 	register_grass_decoration(0.03,   0.03,  1) | ||||||
|  |  | ||||||
|  | 	-- Dry grasses | ||||||
|  |  | ||||||
|  | 	register_dry_grass_decoration(5) | ||||||
|  | 	register_dry_grass_decoration(4) | ||||||
|  | 	register_dry_grass_decoration(3) | ||||||
|  | 	register_dry_grass_decoration(2) | ||||||
|  | 	register_dry_grass_decoration(1) | ||||||
|  |  | ||||||
|  | 	-- Junglegrass | ||||||
|  |  | ||||||
| 	minetest.register_decoration({ | 	minetest.register_decoration({ | ||||||
| 		deco_type = "simple", | 		deco_type = "simple", | ||||||
| 		place_on = {"default:dirt_with_grass"}, | 		place_on = {"default:dirt_with_grass"}, | ||||||
|  | 		sidelen = 80, | ||||||
|  | 		fill_ratio = 0.1, | ||||||
|  | 		biomes = {"rainforest"}, | ||||||
|  | 		y_min = 1, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		decoration = "default:junglegrass", | ||||||
|  | 	}) | ||||||
|  |  | ||||||
|  | 	-- Dry shrub | ||||||
|  |  | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "simple", | ||||||
|  | 		place_on = {"default:desert_sand", "default:dirt_with_snow"}, | ||||||
| 		sidelen = 16, | 		sidelen = 16, | ||||||
| 		noise_params = { | 		noise_params = { | ||||||
| 			offset = 0, | 			offset = 0, | ||||||
| 			scale = 0.08, | 			scale = 0.02, | ||||||
| 			spread = {x = 200, y = 200, z = 200}, | 			spread = {x=200, y=200, z=200}, | ||||||
| 			seed = 66440, | 			seed = 329, | ||||||
| 			octaves = 3, | 			octaves = 3, | ||||||
| 			persist = 0.6 | 			persist = 0.6 | ||||||
| 		}, | 		}, | ||||||
| 		biomes = {"default:grassland"}, | 		biomes = {"desert", "tundra"}, | ||||||
| 		y_min = -31000, | 		y_min = 2, | ||||||
| 		y_max = 31000, | 		y_max = 31000, | ||||||
| 		decoration = "default:grass_3", | 		decoration = "default:dry_shrub", | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.02, |  | ||||||
| 			scale = 0.10, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 66440, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "default:grass_4", |  | ||||||
| 	}) |  | ||||||
| 	 |  | ||||||
| 	minetest.register_decoration({ |  | ||||||
| 		deco_type = "simple", |  | ||||||
| 		place_on = {"default:dirt_with_grass"}, |  | ||||||
| 		sidelen = 16, |  | ||||||
| 		noise_params = { |  | ||||||
| 			offset = -0.04, |  | ||||||
| 			scale = 0.12, |  | ||||||
| 			spread = {x = 200, y = 200, z = 200}, |  | ||||||
| 			seed = 66440, |  | ||||||
| 			octaves = 3, |  | ||||||
| 			persist = 0.6 |  | ||||||
| 		}, |  | ||||||
| 		biomes = {"default:grassland"}, |  | ||||||
| 		y_min = -31000, |  | ||||||
| 		y_max = 31000, |  | ||||||
| 		decoration = "default:grass_5", |  | ||||||
| 	}) | 	}) | ||||||
| end | end | ||||||
|  |  | ||||||
| @@ -638,9 +1048,8 @@ end | |||||||
| -- Generate nyan cats | -- Generate nyan cats | ||||||
| -- | -- | ||||||
|  |  | ||||||
|  | -- All mapgens except singlenode | ||||||
|  |  | ||||||
| -- facedir: 0/1/2/3 (head node facedir value) |  | ||||||
| -- length: length of rainbow tail |  | ||||||
| function default.make_nyancat(pos, facedir, length) | function default.make_nyancat(pos, facedir, length) | ||||||
| 	local tailvec = {x = 0, y = 0, z = 0} | 	local tailvec = {x = 0, y = 0, z = 0} | ||||||
| 	if facedir == 0 then | 	if facedir == 0 then | ||||||
| @@ -652,7 +1061,6 @@ function default.make_nyancat(pos, facedir, length) | |||||||
| 	elseif facedir == 3 then | 	elseif facedir == 3 then | ||||||
| 		tailvec.x = -1 | 		tailvec.x = -1 | ||||||
| 	else | 	else | ||||||
| 		--print("default.make_nyancat(): Invalid facedir: "+dump(facedir)) |  | ||||||
| 		facedir = 0 | 		facedir = 0 | ||||||
| 		tailvec.z = 1 | 		tailvec.z = 1 | ||||||
| 	end | 	end | ||||||
| @@ -665,7 +1073,6 @@ function default.make_nyancat(pos, facedir, length) | |||||||
| 	end | 	end | ||||||
| end | end | ||||||
|  |  | ||||||
|  |  | ||||||
| function default.generate_nyancats(minp, maxp, seed) | function default.generate_nyancats(minp, maxp, seed) | ||||||
| 	local height_min = -31000 | 	local height_min = -31000 | ||||||
| 	local height_max = -32 | 	local height_max = -32 | ||||||
| @@ -693,7 +1100,6 @@ end | |||||||
| -- Detect mapgen to select functions | -- Detect mapgen to select functions | ||||||
| -- | -- | ||||||
|  |  | ||||||
|  |  | ||||||
| -- Mods using singlenode mapgen can call these functions to enable | -- Mods using singlenode mapgen can call these functions to enable | ||||||
| -- the use of minetest.generate_ores or minetest.generate_decorations | -- the use of minetest.generate_ores or minetest.generate_decorations | ||||||
|  |  | ||||||
| @@ -708,4 +1114,3 @@ elseif mg_params.mgname ~= "singlenode" then | |||||||
| 	default.register_decorations() | 	default.register_decorations() | ||||||
| 	minetest.register_on_generated(default.generate_nyancats) | 	minetest.register_on_generated(default.generate_nyancats) | ||||||
| end | end | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,4 +1,6 @@ | |||||||
| local function register_flower(name) | -- Mgv6 | ||||||
|  |  | ||||||
|  | local function register_mgv6_flower(name) | ||||||
| 	minetest.register_decoration({ | 	minetest.register_decoration({ | ||||||
| 		deco_type = "simple", | 		deco_type = "simple", | ||||||
| 		place_on = {"default:dirt_with_grass"}, | 		place_on = {"default:dirt_with_grass"}, | ||||||
| @@ -17,7 +19,7 @@ local function register_flower(name) | |||||||
| 	}) | 	}) | ||||||
| end | end | ||||||
|  |  | ||||||
| local function register_mushroom(name) | local function register_mgv6_mushroom(name) | ||||||
| 	minetest.register_decoration({ | 	minetest.register_decoration({ | ||||||
| 		deco_type = "simple", | 		deco_type = "simple", | ||||||
| 		place_on = {"default:dirt_with_grass"}, | 		place_on = {"default:dirt_with_grass"}, | ||||||
| @@ -37,20 +39,84 @@ local function register_mushroom(name) | |||||||
| end | end | ||||||
|  |  | ||||||
| function flowers.register_mgv6_decorations() | function flowers.register_mgv6_decorations() | ||||||
| 	register_flower("rose") | 	register_mgv6_flower("rose") | ||||||
| 	register_flower("tulip") | 	register_mgv6_flower("tulip") | ||||||
| 	register_flower("dandelion_yellow") | 	register_mgv6_flower("dandelion_yellow") | ||||||
| 	register_flower("geranium") | 	register_mgv6_flower("geranium") | ||||||
| 	register_flower("viola") | 	register_mgv6_flower("viola") | ||||||
| 	register_flower("dandelion_white") | 	register_mgv6_flower("dandelion_white") | ||||||
|  |  | ||||||
|  | 	register_mgv6_mushroom("mushroom_brown") | ||||||
|  | 	register_mgv6_mushroom("mushroom_red") | ||||||
|  | end | ||||||
|  |  | ||||||
|  | -- All other biome API mapgens (not singlenode) | ||||||
|  |  | ||||||
|  | local function register_flower(seed, name) | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "simple", | ||||||
|  | 		place_on = {"default:dirt_with_grass"}, | ||||||
|  | 		sidelen = 16, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = -0.02, | ||||||
|  | 			scale = 0.03, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = seed, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.6 | ||||||
|  | 		}, | ||||||
|  | 		biomes = { | ||||||
|  | 			"stone_grassland", | ||||||
|  | 			"sandstone_grassland", | ||||||
|  | 			"deciduous_forest", | ||||||
|  | 			"coniferous_forest", | ||||||
|  | 		}, | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		decoration = "flowers:"..name, | ||||||
|  | 	}) | ||||||
|  | end | ||||||
|  |  | ||||||
|  | local function register_mushroom(name) | ||||||
|  | 	minetest.register_decoration({ | ||||||
|  | 		deco_type = "simple", | ||||||
|  | 		place_on = {"default:dirt_with_grass"}, | ||||||
|  | 		sidelen = 16, | ||||||
|  | 		noise_params = { | ||||||
|  | 			offset = 0, | ||||||
|  | 			scale = 0.006, | ||||||
|  | 			spread = {x=200, y=200, z=200}, | ||||||
|  | 			seed = 7133, | ||||||
|  | 			octaves = 3, | ||||||
|  | 			persist = 0.6 | ||||||
|  | 		}, | ||||||
|  | 		biomes = {"deciduous_forest", "coniferous_forest"}, | ||||||
|  | 		y_min = 6, | ||||||
|  | 		y_max = 31000, | ||||||
|  | 		decoration = "flowers:"..name, | ||||||
|  | 	}) | ||||||
|  | end | ||||||
|  |  | ||||||
|  | function flowers.register_decorations() | ||||||
|  | 	register_flower(436,     "rose") | ||||||
|  | 	register_flower(19822,   "tulip") | ||||||
|  | 	register_flower(1220999, "dandelion_yellow") | ||||||
|  | 	register_flower(36662,   "geranium") | ||||||
|  | 	register_flower(1133,    "viola") | ||||||
|  | 	register_flower(73133,   "dandelion_white") | ||||||
|  |  | ||||||
| 	register_mushroom("mushroom_brown") | 	register_mushroom("mushroom_brown") | ||||||
| 	register_mushroom("mushroom_red") | 	register_mushroom("mushroom_red") | ||||||
| end | end | ||||||
|  |  | ||||||
| -- Enable in mapgen v6 only | -- Detect mapgen to select functions | ||||||
|  |  | ||||||
| if minetest.get_mapgen_params().mgname == "v6" then | -- Mods using singlenode mapgen can call these functions to enable | ||||||
|  | -- the use of minetest.generate_ores or minetest.generate_decorations | ||||||
|  |  | ||||||
|  | local mg_params = minetest.get_mapgen_params() | ||||||
|  | if mg_params.mgname == "v6" then | ||||||
| 	flowers.register_mgv6_decorations() | 	flowers.register_mgv6_decorations() | ||||||
|  | elseif mg_params.mgname ~= "singlenode" then | ||||||
|  | 	flowers.register_decorations() | ||||||
| end | end | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user