diff options
author | Vanessa Ezekowitz <vanessaezekowitz@gmail.com> | 2016-04-01 22:10:20 -0400 |
---|---|---|
committer | Vanessa Ezekowitz <vanessaezekowitz@gmail.com> | 2016-04-01 22:42:02 -0400 |
commit | 86ad3e7c6a37699f7f8297a387bf08af74e36629 (patch) | |
tree | dc368b1eaf2cc09b9df2200250890b3038d8cf2d /bedrock/mapgen.lua | |
parent | 888b0ebfec8c2eff9015163549a7e47443cb8665 (diff) | |
download | dreambuilder_modpack-86ad3e7c6a37699f7f8297a387bf08af74e36629.tar dreambuilder_modpack-86ad3e7c6a37699f7f8297a387bf08af74e36629.tar.gz dreambuilder_modpack-86ad3e7c6a37699f7f8297a387bf08af74e36629.tar.bz2 dreambuilder_modpack-86ad3e7c6a37699f7f8297a387bf08af74e36629.tar.xz dreambuilder_modpack-86ad3e7c6a37699f7f8297a387bf08af74e36629.zip |
Update all core mods
Diffstat (limited to 'bedrock/mapgen.lua')
-rw-r--r-- | bedrock/mapgen.lua | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/bedrock/mapgen.lua b/bedrock/mapgen.lua new file mode 100644 index 0000000..995bfb0 --- /dev/null +++ b/bedrock/mapgen.lua @@ -0,0 +1,33 @@ + +local bedrock_depth = tonumber(minetest.setting_get("bedrock_depth")) or -30912 +local bedrock_height = tonumber(minetest.setting_get("bedrock_height")) or 5 + +minetest.register_on_generated(function(minp, maxp) + if minp.y > bedrock_depth + bedrock_height or maxp.y < bedrock_depth then + return + end + + local vm, mine, maxe = minetest.get_mapgen_object("voxelmanip") + local area = VoxelArea:new({MinEdge=mine, MaxEdge=maxe}) + local data = vm:get_data() + + local random = math.random + + local c_bedrock = minetest.get_content_id("bedrock:bedrock") + + local highest = math.min(bedrock_depth + bedrock_height, maxe.y) + local lowest = math.max(bedrock_depth, mine.y) + + for y = lowest, highest do + for x = mine.x, maxe.x do + for z = mine.z, maxe.z do + if random(0, y - bedrock_depth) == 0 then + data[area:index(x, y, z)] = c_bedrock + end + end + end + end + vm:set_data(data) + vm:write_to_map() +end) + |