diff --git a/README.md b/README.md index c910077..6080877 100644 --- a/README.md +++ b/README.md @@ -2,18 +2,20 @@ This mod adds mushrooms to minetest. The growing tool can make them giant. -**Depends:** see [depends.txt](https://raw.githubusercontent.com/HybridDog/riesenpilz/master/depends.txt) -**License:** see [LICENSE.txt](https://raw.githubusercontent.com/HybridDog/riesenpilz/master/LICENSE.txt) -**Download:** [zip](https://github.com/HybridDog/riesenpilz/archive/master.zip), [tar.gz](https://github.com/HybridDog/riesenpilz/archive/master.tar.gz) +**Depends:** see [depends.txt](https://raw.githubusercontent.com/HybridDog/riesenpilz/master/depends.txt)
+**License:** see [LICENSE.txt](https://raw.githubusercontent.com/HybridDog/riesenpilz/master/LICENSE.txt)
+**Download:** [zip](https://github.com/HybridDog/riesenpilz/archive/master.zip), [tar.gz](https://github.com/HybridDog/riesenpilz/archive/master.tar.gz)
![I'm a screenshot!](https://cloud.githubusercontent.com/assets/3192173/5332059/421c735a-7e47-11e4-88cc-b9ed90b659a8.png) If you got ideas or found bugs, please tell them to me. -TODO: -— add more giant mushrooms -— finish supporting the mushrooms mod -— add lava suit -— use visual_scale → crop textures and change nodeboxes (maybe automatically) -— make the growingtool craftable +TODO: +* add more giant mushrooms +* finish supporting the mushrooms mod +* add lava suit +* use visual_scale → crop textures and change nodeboxes (maybe automatically) +* make the growingtool craftable +* mapgen: do not use fixed tree stuff +* add settingtypes.txt diff --git a/mapgen.lua b/mapgen.lua index 4c8bfbb..184c510 100644 --- a/mapgen.lua +++ b/mapgen.lua @@ -77,7 +77,8 @@ function is_toremove(id) end -local data, area, pr +local data = {} +local area, pr function riesenpilz_circle(nam, pos, radius, chance) local circle = vector.circle(radius) for i = 1,#circle do @@ -92,25 +93,11 @@ function riesenpilz_circle(nam, pos, radius, chance) end --- perlin noise "hills" are not peaks but looking like sinus curve -local function upper_rarity(rarity) - return math.sign(rarity)*math.sin(math.abs(rarity)*math.pi/2) -end - -local rarity = riesenpilz.mapgen_rarity -local riesenpilz_size = riesenpilz.mapgen_size - -local nosmooth_rarity = 1-rarity/50 -local perlin_scale = riesenpilz_size*100/rarity -local smooth_rarity_max, smooth_rarity_min, smooth_rarity_dif -local smooth = riesenpilz.smooth -if smooth then - local smooth_trans_size = riesenpilz.smooth_trans_size - smooth_rarity_max = upper_rarity(nosmooth_rarity+smooth_trans_size*2/perlin_scale) - smooth_rarity_min = upper_rarity(nosmooth_rarity-smooth_trans_size/perlin_scale) - smooth_rarity_dif = smooth_rarity_max-smooth_rarity_min -end -nosmooth_rarity = upper_rarity(nosmooth_rarity) +local nosmooth_rarity = 0.5 +local smooth_rarity_max = 0.6 +local smooth_rarity_min = 0.4 +local smooth_rarity_dif = smooth_rarity_max - smooth_rarity_min +local perlin_scale = 500 local contents_defined minetest.register_on_generated(function(minp, maxp, seed) @@ -158,7 +145,7 @@ minetest.register_on_generated(function(minp, maxp, seed) local hm_zstride = divs+1 local vm, emin, emax = minetest.get_mapgen_object("voxelmanip") - data = vm:get_data() + vm:get_data(data) area = VoxelArea:new{MinEdge=emin, MaxEdge=emax} for p_pos in area:iterp(minp, maxp) do --remove tree stuff @@ -344,7 +331,6 @@ minetest.register_on_generated(function(minp, maxp, seed) vm:set_lighting({day=0, night=0}) vm:calc_lighting() vm:write_to_map() - data = nil area = nil riesenpilz.inform("data set", 2, t2) diff --git a/settings.lua b/settings.lua index de28902..b5b99af 100644 --- a/settings.lua +++ b/settings.lua @@ -1,6 +1,7 @@ --This file contains configuration options for riesenpilz mod. -riesenpilz.enable_mapgen = true +-- mapgen size etc. does not work +riesenpilz.enable_mapgen = false --Generate giant mushroom biomes everywhere riesenpilz.always_generate = false @@ -8,15 +9,6 @@ riesenpilz.always_generate = false --Enables smooth transition of biomes. riesenpilz.smooth = true ---rarity in % -riesenpilz.mapgen_rarity = 0.4 - ---size of the generated... (has an effect to the rarity, too) -riesenpilz.mapgen_size = 200 - ---approximate size of smooth transitions -riesenpilz.smooth_trans_size = 2 - --says some information. riesenpilz.info = true