From ff153c9c1ff015a0f3769e30066ebb346c16bcfb Mon Sep 17 00:00:00 2001 From: TenPlus1 Date: Wed, 13 Mar 2019 21:05:35 +0000 Subject: [PATCH] add Tundra biome if 5.0 found --- init.lua | 239 +++++++++++++++++++++++++++-------------------------- mapgen.lua | 105 +++++++++++++++++++++++ 2 files changed, 225 insertions(+), 119 deletions(-) diff --git a/init.lua b/init.lua index 9be5f7d..2d94411 100644 --- a/init.lua +++ b/init.lua @@ -1,119 +1,120 @@ ---[[ - - Minetest Ethereal Mod - - Created by ChinChow - - Updated by TenPlus1 - -]] - - -- DO NOT change settings below, use the settings.conf file instead -ethereal = { - - version = "1.25", - leaftype = 0, -- 0 for 2D plantlike, 1 for 3D allfaces - leafwalk = false, -- true for walkable leaves, false to fall through - cavedirt = true, -- caves chop through dirt when true - torchdrop = true, -- torches drop when touching water - papyruswalk = true, -- papyrus can be walked on - lilywalk = true, -- waterlilies can be walked on - xcraft = true, -- allow cheat crafts for cobble->gravel->dirt->sand, ice->snow, dry dirt->desert sand - glacier = 1, -- Ice glaciers with snow - bamboo = 1, -- Bamboo with sprouts - mesa = 1, -- Mesa red and orange clay with giant redwood - alpine = 1, -- Snowy grass - healing = 1, -- Snowy peaks with healing trees - snowy = 1, -- Cold grass with pine trees and snow spots - frost = 1, -- Blue dirt with blue/pink frost trees - grassy = 1, -- Green grass with flowers and trees - caves = 1, -- Desert stone ares with huge caverns underneath - grayness = 1, -- Grey grass with willow trees - grassytwo = 1, -- Sparse trees with old trees and flowers - prairie = 1, -- Flowery grass with many plants and flowers - jumble = 1, -- Green grass with trees and jungle grass - junglee = 1, -- Jungle grass with tall jungle trees - desert = 1, -- Desert sand with cactus - grove = 1, -- Banana groves and ferns - mushroom = 1, -- Purple grass with giant mushrooms - sandstone = 1, -- Sandstone with smaller cactus - quicksand = 1, -- Quicksand banks - plains = 1, -- Dry dirt with scorched trees - savannah = 1, -- Dry yellow grass with acacia tree's - fiery = 1, -- Red grass with lava craters - sandclay = 1, -- Sand areas with clay underneath - swamp = 1, -- Swamp areas with vines on tree's, mushrooms, lilly's and clay sand - sealife = 1, -- Enable coral and seaweed - reefs = 1, -- Enable new 0.4.15 coral reefs in default - sakura = 1, -- Enable sakura biome with trees -} - -local path = minetest.get_modpath("ethereal") - --- Load new settings if found -local input = io.open(path.."/settings.conf", "r") -if input then - dofile(path .. "/settings.conf") - input:close() - input = nil -end - --- Intllib -local S -if minetest.global_exists("intllib") then - if intllib.make_gettext_pair then - -- New method using gettext. - S = intllib.make_gettext_pair() - else - -- Old method using text files. - S = intllib.Getter() - end -else - S = function(s) return s end -end -ethereal.intllib = S - --- Falling node function -ethereal.check_falling = minetest.check_for_falling or nodeupdate - --- creative check -local creative_mode_cache = minetest.settings:get_bool("creative_mode") -function ethereal.check_creative(name) - return creative_mode_cache or minetest.check_player_privs(name, {creative = true}) -end - -dofile(path .. "/plantlife.lua") -dofile(path .. "/mushroom.lua") -dofile(path .. "/onion.lua") -dofile(path .. "/crystal.lua") -dofile(path .. "/water.lua") -dofile(path .. "/dirt.lua") -dofile(path .. "/food.lua") -dofile(path .. "/wood.lua") -dofile(path .. "/leaves.lua") -dofile(path .. "/sapling.lua") -dofile(path .. "/strawberry.lua") -dofile(path .. "/fishing.lua") -dofile(path .. "/extra.lua") -dofile(path .. "/sealife.lua") -dofile(path .. "/fences.lua") -dofile(path .. "/gates.lua") -dofile(path .. "/mapgen.lua") -dofile(path .. "/compatibility.lua") -dofile(path .. "/stairs.lua") -dofile(path .. "/lucky_block.lua") - --- Set bonemeal aliases -if minetest.get_modpath("bonemeal") then - minetest.register_alias("ethereal:bone", "bonemeal:bone") - minetest.register_alias("ethereal:bonemeal", "bonemeal:bonemeal") -else -- or return to where it came from - minetest.register_alias("ethereal:bone", "default:dirt") - minetest.register_alias("ethereal:bonemeal", "default:dirt") -end - -if minetest.get_modpath("xanadu") then - dofile(path .. "/plantpack.lua") -end - -print (S("[MOD] Ethereal loaded")) +--[[ + + Minetest Ethereal Mod + + Created by ChinChow + + Updated by TenPlus1 + +]] + + -- DO NOT change settings below, use the settings.conf file instead +ethereal = { + + version = "1.25", + leaftype = 0, -- 0 for 2D plantlike, 1 for 3D allfaces + leafwalk = false, -- true for walkable leaves, false to fall through + cavedirt = true, -- caves chop through dirt when true + torchdrop = true, -- torches drop when touching water + papyruswalk = true, -- papyrus can be walked on + lilywalk = true, -- waterlilies can be walked on + xcraft = true, -- allow cheat crafts for cobble->gravel->dirt->sand, ice->snow, dry dirt->desert sand + glacier = 1, -- Ice glaciers with snow + bamboo = 1, -- Bamboo with sprouts + mesa = 1, -- Mesa red and orange clay with giant redwood + alpine = 1, -- Snowy grass + healing = 1, -- Snowy peaks with healing trees + snowy = 1, -- Cold grass with pine trees and snow spots + frost = 1, -- Blue dirt with blue/pink frost trees + grassy = 1, -- Green grass with flowers and trees + caves = 1, -- Desert stone ares with huge caverns underneath + grayness = 1, -- Grey grass with willow trees + grassytwo = 1, -- Sparse trees with old trees and flowers + prairie = 1, -- Flowery grass with many plants and flowers + jumble = 1, -- Green grass with trees and jungle grass + junglee = 1, -- Jungle grass with tall jungle trees + desert = 1, -- Desert sand with cactus + grove = 1, -- Banana groves and ferns + mushroom = 1, -- Purple grass with giant mushrooms + sandstone = 1, -- Sandstone with smaller cactus + quicksand = 1, -- Quicksand banks + plains = 1, -- Dry dirt with scorched trees + savannah = 1, -- Dry yellow grass with acacia tree's + fiery = 1, -- Red grass with lava craters + sandclay = 1, -- Sand areas with clay underneath + swamp = 1, -- Swamp areas with vines on tree's, mushrooms, lilly's and clay sand + sealife = 1, -- Enable coral and seaweed + reefs = 1, -- Enable new 0.4.15 coral reefs in default + sakura = 1, -- Enable sakura biome with trees + tundra = 1, -- Enable tuntra biome with permafrost +} + +local path = minetest.get_modpath("ethereal") + +-- Load new settings if found +local input = io.open(path.."/settings.conf", "r") +if input then + dofile(path .. "/settings.conf") + input:close() + input = nil +end + +-- Intllib +local S +if minetest.global_exists("intllib") then + if intllib.make_gettext_pair then + -- New method using gettext. + S = intllib.make_gettext_pair() + else + -- Old method using text files. + S = intllib.Getter() + end +else + S = function(s) return s end +end +ethereal.intllib = S + +-- Falling node function +ethereal.check_falling = minetest.check_for_falling or nodeupdate + +-- creative check +local creative_mode_cache = minetest.settings:get_bool("creative_mode") +function ethereal.check_creative(name) + return creative_mode_cache or minetest.check_player_privs(name, {creative = true}) +end + +dofile(path .. "/plantlife.lua") +dofile(path .. "/mushroom.lua") +dofile(path .. "/onion.lua") +dofile(path .. "/crystal.lua") +dofile(path .. "/water.lua") +dofile(path .. "/dirt.lua") +dofile(path .. "/food.lua") +dofile(path .. "/wood.lua") +dofile(path .. "/leaves.lua") +dofile(path .. "/sapling.lua") +dofile(path .. "/strawberry.lua") +dofile(path .. "/fishing.lua") +dofile(path .. "/extra.lua") +dofile(path .. "/sealife.lua") +dofile(path .. "/fences.lua") +dofile(path .. "/gates.lua") +dofile(path .. "/mapgen.lua") +dofile(path .. "/compatibility.lua") +dofile(path .. "/stairs.lua") +dofile(path .. "/lucky_block.lua") + +-- Set bonemeal aliases +if minetest.get_modpath("bonemeal") then + minetest.register_alias("ethereal:bone", "bonemeal:bone") + minetest.register_alias("ethereal:bonemeal", "bonemeal:bonemeal") +else -- or return to where it came from + minetest.register_alias("ethereal:bone", "default:dirt") + minetest.register_alias("ethereal:bonemeal", "default:dirt") +end + +if minetest.get_modpath("xanadu") then + dofile(path .. "/plantpack.lua") +end + +print (S("[MOD] Ethereal loaded")) diff --git a/mapgen.lua b/mapgen.lua index 097108f..1c61022 100644 --- a/mapgen.lua +++ b/mapgen.lua @@ -939,3 +939,108 @@ minetest.register_decoration({ decoration = {"wine:blue_agave"}, }) end + +if ethereal.tundra and minetest.registered_nodes["default:permafrost"] then +minetest.register_biome({ + name = "tundra_highland", + node_dust = "default:snow", + node_riverbed = "default:gravel", + depth_riverbed = 2, + y_max = 180, + y_min = 47, + heat_point = 0, + humidity_point = 40, + }) + + minetest.register_biome({ + name = "tundra", + node_top = "default:permafrost_with_stones", + depth_top = 1, + node_filler = "default:permafrost", + depth_filler = 1, + node_riverbed = "default:gravel", + depth_riverbed = 2, + vertical_blend = 4, + y_max = 46, + y_min = 2, + heat_point = 0, + humidity_point = 40, + }) + + minetest.register_biome({ + name = "tundra_beach", + node_top = "default:gravel", + depth_top = 1, + node_filler = "default:gravel", + depth_filler = 2, + node_riverbed = "default:gravel", + depth_riverbed = 2, + vertical_blend = 1, + y_max = 1, + y_min = -3, + heat_point = 0, + humidity_point = 40, + }) + + minetest.register_biome({ + name = "tundra_ocean", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 3, + node_riverbed = "default:gravel", + depth_riverbed = 2, + vertical_blend = 1, + y_max = -4, + y_min = -112, + heat_point = 0, + humidity_point = 40, + }) + + -- Tundra moss + + minetest.register_decoration({ + deco_type = "simple", + place_on = {"default:permafrost_with_stones"}, + sidelen = 4, + noise_params = { + offset = -0.8, + scale = 2.0, + spread = {x = 100, y = 100, z = 100}, + seed = 53995, + octaves = 3, + persist = 1.0 + }, + biomes = {"tundra"}, + y_max = 50, + y_min = 2, + decoration = "default:permafrost_with_moss", + place_offset_y = -1, + flags = "force_placement", + }) + + -- Tundra patchy snow + + minetest.register_decoration({ + deco_type = "simple", + place_on = { + "default:permafrost_with_moss", + "default:permafrost_with_stones", + "default:stone", + "default:gravel" + }, + sidelen = 4, + noise_params = { + offset = 0, + scale = 1.0, + spread = {x = 100, y = 100, z = 100}, + seed = 172555, + octaves = 3, + persist = 1.0 + }, + biomes = {"tundra", "tundra_beach"}, + y_max = 50, + y_min = 1, + decoration = "default:snow", + }) +end