diff --git a/init.lua b/init.lua index e1a95fb..914bed7 100644 --- a/init.lua +++ b/init.lua @@ -1,4 +1,3 @@ - nssb = {} local path = minetest.get_modpath("nssb") diff --git a/mapgen.lua b/mapgen.lua index 1900fb5..55292b1 100644 --- a/mapgen.lua +++ b/mapgen.lua @@ -5,7 +5,7 @@ if minetest.get_modpath("moreores") then end -nssb.mymapgenis = tonumber(minetest.settings:get('mymapgenis')) or 7 +nssb.mymapgenis = tonumber(minetest.settings:get("mymapgenis")) or 7 if (nssb.mymapgenis ~= 6) and (nssb.mymapgenis ~= 7) then nssb.mymapgenis = 7 @@ -14,7 +14,7 @@ end -- get gneration level from settings local level = tonumber(minetest.settings:get("nssb.morlendor_level")) or -30000 ---schematichs generation +-- schematichs generation local posplace = {x = 0, y = level - 93, z = 0} local posmemory = {x = 0, y = level - 92, z = 0} @@ -38,60 +38,87 @@ function nssb_register_buildings( portal) -- is this schematic a portal for the morlendor? minetest.register_on_generated(function(minp, maxp, seed) + if underground==false then + local i, j, k local flag=0 local posd + i = math.random(minp.x, maxp.x) k = math.random(minp.z, maxp.z) + for j=minp.y,maxp.y do + local pos1 = {x=i, y=j, z=k} local pos2 = {x=i+down, y=j-1, z=k+down} local pos3 = {x=i, y=j+above, z=k} local n = minetest.get_node(pos1).name local u = minetest.get_node(pos2).name local d = minetest.get_node(pos3).name + if (downblock==nil) then u = downblock end + if (aboveblock==nil) then d = aboveblock end - if n== posschem and u== downblock and d==aboveblock and flag==0 and math.random(1,rand)==1 then + + if n == posschem and u == downblock and d == aboveblock and flag == 0 + and math.random(1, rand) == 1 then + if minetest.find_node_near(pos3, radius, near) then - minetest.place_schematic(pos1, minetest.get_modpath("nssb").."/schems/".. build ..".mts", "0", {}, true) - --minetest.chat_send_all("Added schematic in "..(minetest.pos_to_string(pos1))) - posd=pos1 - flag=1 + + minetest.place_schematic(pos1, minetest.get_modpath("nssb") + .. "/schems/".. build ..".mts", "0", {}, true) + +-- minetest.chat_send_all("Added schematic in "..(minetest.pos_to_string(pos1))) + + posd = pos1 + flag = 1 end end end - --Puts dirt/ice under the schematic to fill the space under it - if flag==1 and side>0 then - for dx = 0,side do - for dz = 0,side do - local dy=posd.y-1 - local f = {x = posd.x+dx, y=dy, z=posd.z+dz} + + -- Puts dirt/ice under the schematic to fill the space under it + if flag == 1 and side > 0 then + + for dx = 0, side do + + for dz = 0, side do + + local dy = posd.y - 1 + local f = {x = posd.x + dx, y = dy, z = posd.z + dz} local fg = minetest.get_node(f).name + if ice == false then - while fg=="air" do - minetest.set_node(f, {name="default:dirt"}) + + while fg == "air" do + + minetest.set_node(f, {name = "default:dirt"}) + f.y=f.y-1 + fg = minetest.get_node(f).name end else while fg=="air" do - minetest.set_node(f, {name="default:ice"}) - f.y=f.y-1 - fg = minetest.get_node(f).name + + minetest.set_node(f, {name = "default:ice"}) + + f.y = f.y - 1 + + fg = minetest.get_node(f).name end end end end end - if portal==true then + + if portal == true then --[[ - --this is a portal for the morlendor + -- this is a portal for the morlendor if already_spawned == 0 then --already_spawned = 1 local name = minetest.get_node(posplace).name @@ -120,36 +147,48 @@ function nssb_register_buildings( ]]-- end else --underground==true - if minp.y<0 then - --minetest.chat_send_all("Posmin: "..(minetest.pos_to_string(minp)).." Posmax: "..(minetest.pos_to_string(maxp))) + if minp.y < 0 then + +-- minetest.chat_send_all("Posmin: " .. (minetest.pos_to_string(minp)).." Posmax: " .. (minetest.pos_to_string(maxp))) + local i, jj, k, j - local flag=0 + local flag = 0 i = math.random(minp.x, maxp.x) k = math.random(minp.z, maxp.z) jj = math.random(minp.y, maxp.y) - if height~=nil then - if height>maxp.y then + + if height ~= nil then + + if height > maxp.y then j = jj - elseif height>minp.y and height minp.y and height < maxp.y then j = math.random(minp.y, height) else return end else - if jj>0 then + if jj > 0 then j = math.random(minp.y, 0) end end - local pos1={x=i, y=j, z=k} + + local pos1 = {x = i, y = j, z = k} local n = minetest.get_node(pos1).name - if minetest.find_node_near(pos1, radius, "default:lava_source")or flag==1 then + + if minetest.find_node_near(pos1, radius, "default:lava_source") + or flag == 1 then return else - if n==posschem and math.random(1,rand)==1 then - minetest.place_schematic(pos1, minetest.get_modpath("nssb").."/schems/".. build ..".mts", "0", {}, true) - flag=1 - --minetest.chat_send_all("Added schematic in "..(minetest.pos_to_string(pos1))) + if n == posschem and math.random(1, rand) == 1 then + + minetest.place_schematic(pos1, minetest.get_modpath("nssb") + .. "/schems/" .. build .. ".mts", "0", {}, true) + + flag = 1 + +-- minetest.chat_send_all("Added schematic in "..(minetest.pos_to_string(pos1))) + end end end @@ -157,120 +196,193 @@ function nssb_register_buildings( end) end + if nssb.mymapgenis == 6 then - nssb_register_buildings ('spiaggiagranchius', 2, "default:sand", 3, "default:sand", 2, "air", 3, "air", 0, false, nil, false, false, false) - nssb_register_buildings ('acquagranchius', 3, "default:sand", 3, "default:sand", 12,"default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) - nssb_register_buildings ('ooteca', 6, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 24, "default:tree", 8, false, nil, false, false, false) - nssb_register_buildings ('minuscolaooteca', 6, "default:dirt_with_grass",3 , "default:dirt", 2, "air", 24, "default:tree", 2, false, nil, false, false, false) - nssb_register_buildings ('piccolaooteca', 6, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "default:tree", 4, false, nil, false, false, false) - nssb_register_buildings ('arcate', 8, "default:sand", 3, "default:sand", 13, "default:water_source", 3, "default:water_source",0, false, nil, false, false, false) - nssb_register_buildings ('grandepiramide', 8, "default:dirt", 3, "default:dirt", 20, "default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) - nssb_register_buildings ('collina', 5, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 3, "air", 12, false, nil, false, false, false) - nssb_register_buildings ('megaformicaio', 7, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 25, false, nil, false, false, false) - nssb_register_buildings ('antqueenhill', 8, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 21, false, nil, false, false, false) - nssb_register_buildings ('rovine1', 4, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - --nssb_register_buildings ('rovine2', 1, "default:stone", 0, "air", 0, "air", 24, "default:jungletree", 5, true, -8, false, false) - nssb_register_buildings ('rovine3', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine4', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine5', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine6', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine7', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine8', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine9', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine10', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('bozzoli', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('picco', 12, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 10, false, nil, false, false, false) - nssb_register_buildings ('piccoghiaccio', 12, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 10, false, nil, true, false, false) - nssb_register_buildings ('icehall', 8, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 30, false, nil, true, false, false) - nssb_register_buildings ('piccomoonheron', 8, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 3, false, nil, true, false, false) - nssb_register_buildings ('doppiopiccoghiaccio', 11, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 7, false, nil, true, false, false) - nssb_register_buildings ('doppiopiccosabbia', 11, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 7, false, nil, false, false, false) - nssb_register_buildings ('piccoscrausics', 8, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 3, false, nil, false, false, false) - nssb_register_buildings ('fossasand', 20, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 16, false, nil, false, false, false) - nssb_register_buildings ('portal', 100, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "air", 11, false, nil, false, false, true) -else --mymapgenis 7 - nssb_register_buildings ('spiaggiagranchius', 5, "default:sand", 3, "default:sand", 2, "air", 3, "air", 0, false, nil, false, false, false) - nssb_register_buildings ('acquagranchius', 6, "default:sand", 3, "default:sand", 12,"default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) - nssb_register_buildings ('ooteca', 12, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 24, "default:tree", 8, false, nil, false, false, false) - nssb_register_buildings ('minuscolaooteca', 11, "default:dirt_with_grass",3 , "default:dirt", 2, "air", 24, "default:tree", 2, false, nil, false, false, false) - nssb_register_buildings ('piccolaooteca', 11, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "default:tree", 4, false, nil, false, false, false) - nssb_register_buildings ('arcate', 24, "default:sand", 3, "default:sand", 13, "default:water_source", 3, "default:water_source",0, false, nil, false, false, false) - nssb_register_buildings ('grandepiramide', 24, "default:dirt", 3, "default:dirt", 20, "default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) - nssb_register_buildings ('collina', 14, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 3, "air", 12, false, nil, false, false, false) - nssb_register_buildings ('megaformicaio', 20, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 25, false, nil, false, false, false) - nssb_register_buildings ('antqueenhill', 22, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 21, false, nil, false, false, false) - nssb_register_buildings ('rovine1', 6, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - --nssb_register_buildings ('rovine2', 1, "default:stone", 0, "air", 0, "air", 24, "default:jungletree", 5, true, -8, false, false) - nssb_register_buildings ('rovine3', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine4', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine5', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine6', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine7', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine8', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine9', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('rovine10', 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) - nssb_register_buildings ('bozzoli', 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + nssb_register_buildings ("spiaggiagranchius", 2, "default:sand", 3, "default:sand", 2, "air", 3, "air", 0, false, nil, false, false, false) - nssb_register_buildings ('picco', 32, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 10, false, nil, false, false, false) - nssb_register_buildings ('piccoghiaccio', 32, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 10, false, nil, true, false, false) - nssb_register_buildings ('icehall', 40, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 30, false, nil, true, false, false) - nssb_register_buildings ('piccomoonheron', 32, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 3, false, nil, true, false, false) - nssb_register_buildings ('doppiopiccoghiaccio', 32, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 7, false, nil, true, false, false) - nssb_register_buildings ('doppiopiccosabbia', 32, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 7, false, nil, false, false, false) - nssb_register_buildings ('piccoscrausics', 32, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 3, false, nil, false, false, false) - nssb_register_buildings ('fossasand', 50, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 16, false, nil, false, false, false) - nssb_register_buildings ('portal', 200, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "air", 11, false, nil, false, false, true) + nssb_register_buildings ("acquagranchius", 3, "default:sand", 3, "default:sand", 12,"default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) + + nssb_register_buildings ("ooteca", 6, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 24, "default:tree", 8, false, nil, false, false, false) + + nssb_register_buildings ("minuscolaooteca", 6, "default:dirt_with_grass",3 , "default:dirt", 2, "air", 24, "default:tree", 2, false, nil, false, false, false) + + nssb_register_buildings ("piccolaooteca", 6, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "default:tree", 4, false, nil, false, false, false) + + nssb_register_buildings ("arcate", 8, "default:sand", 3, "default:sand", 13, "default:water_source", 3, "default:water_source",0, false, nil, false, false, false) + + nssb_register_buildings ("grandepiramide", 8, "default:dirt", 3, "default:dirt", 20, "default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) + + nssb_register_buildings ("collina", 5, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 3, "air", 12, false, nil, false, false, false) + + nssb_register_buildings ("megaformicaio", 7, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 25, false, nil, false, false, false) + + nssb_register_buildings ("antqueenhill", 8, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 21, false, nil, false, false, false) + + nssb_register_buildings ("rovine1", 4, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + -- nssb_register_buildings ("rovine2", 1, "default:stone", 0, "air", 0, "air", 24, "default:jungletree", 5, true, -8, false, false) + + nssb_register_buildings ("rovine3", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine4", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine5", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine6", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine7", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine8", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine9", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine10", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("bozzoli", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("picco", 12, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 10, false, nil, false, false, false) + + nssb_register_buildings ("piccoghiaccio", 12, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 10, false, nil, true, false, false) + + nssb_register_buildings ("icehall", 8, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 30, false, nil, true, false, false) + + nssb_register_buildings ("piccomoonheron", 8, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 3, false, nil, true, false, false) + + nssb_register_buildings ("doppiopiccoghiaccio", 11, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 7, false, nil, true, false, false) + + nssb_register_buildings ("doppiopiccosabbia", 11, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 7, false, nil, false, false, false) + + nssb_register_buildings ("piccoscrausics", 8, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 3, false, nil, false, false, false) + + nssb_register_buildings ("fossasand", 20, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 16, false, nil, false, false, false) + + nssb_register_buildings ("portal", 100, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "air", 11, false, nil, false, false, true) + +else -- mymapgenis 7 + + nssb_register_buildings ("spiaggiagranchius", 5, "default:sand", 3, "default:sand", 2, "air", 3, "air", 0, false, nil, false, false, false) + + nssb_register_buildings ("acquagranchius", 6, "default:sand", 3, "default:sand", 12,"default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) + + nssb_register_buildings ("ooteca", 12, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 24, "default:tree", 8, false, nil, false, false, false) + + nssb_register_buildings ("minuscolaooteca", 11, "default:dirt_with_grass",3 , "default:dirt", 2, "air", 24, "default:tree", 2, false, nil, false, false, false) + + nssb_register_buildings ("piccolaooteca", 11, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "default:tree", 4, false, nil, false, false, false) + + nssb_register_buildings ("arcate", 24, "default:sand", 3, "default:sand", 13, "default:water_source", 3, "default:water_source",0, false, nil, false, false, false) + + nssb_register_buildings ("grandepiramide", 24, "default:dirt", 3, "default:dirt", 20, "default:water_source", 3, "default:water_source", 0, false, nil, false, false, false) + + nssb_register_buildings ("collina", 14, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 3, "air", 12, false, nil, false, false, false) + + nssb_register_buildings ("megaformicaio", 20, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 25, false, nil, false, false, false) + + nssb_register_buildings ("antqueenhill", 22, "default:dirt_with_grass", 4, "default:dirt", 2, "air", 3, "air", 21, false, nil, false, false, false) + + nssb_register_buildings ("rovine1", 6, "default:dirt_with_grass", 3, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + -- nssb_register_buildings ("rovine2", 1, "default:stone", 0, "air", 0, "air", 24, "default:jungletree", 5, true, -8, false, false) + + nssb_register_buildings ("rovine3", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine4", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine5", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine6", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine7", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine8", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine9", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("rovine10", 6, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("bozzoli", 4, "default:dirt_with_grass", 1, "default:dirt", 2, "air", 8, "default:jungletree", 10, false, nil, false, false, false) + + nssb_register_buildings ("picco", 32, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 10, false, nil, false, false, false) + + nssb_register_buildings ("piccoghiaccio", 32, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 10, false, nil, true, false, false) + + nssb_register_buildings ("icehall", 40, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 30, false, nil, true, false, false) + + nssb_register_buildings ("piccomoonheron", 32, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 3, false, nil, true, false, false) + + nssb_register_buildings ("doppiopiccoghiaccio", 32, "default:dirt_with_snow", 1, "default:dirt", 1, "air", 3, "default:dirt_with_snow", 7, false, nil, true, false, false) + + nssb_register_buildings ("doppiopiccosabbia", 32, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 7, false, nil, false, false, false) + + nssb_register_buildings ("piccoscrausics", 32, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 3, false, nil, false, false, false) + + nssb_register_buildings ("fossasand", 50, "default:desert_sand", 1, "default:desert_stone", 1, "air", 3, "default:desert_sand", 16, false, nil, false, false, false) + + nssb_register_buildings ("portal", 200, "default:dirt_with_grass", 2, "default:dirt", 2, "air", 24, "air", 11, false, nil, false, false, true) end -nssb_register_buildings ('blocohouse', 4, "default:stone", 0, "air", 0, "air", 3, "default:stone", 5, true, -10, false, false, false) -nssb_register_buildings ('bigblocohouse', 4, "default:stone", 0, "air", 0, "air", 3, "default:stone", 5, true, -20, false, false, false) -nssb_register_buildings ('blocobiggesthouse', 4, "default:stone", 0, "air", 0, "air", 3, "default:stone", 5, true, -30, false, false, false) +nssb_register_buildings ("blocohouse", 4, "default:stone", 0, "air", 0, "air", 3, "default:stone", 5, true, -10, false, false, false) +nssb_register_buildings ("bigblocohouse", 4, "default:stone", 0, "air", 0, "air", 3, "default:stone", 5, true, -20, false, false, false) +nssb_register_buildings ("blocobiggesthouse", 4, "default:stone", 0, "air", 0, "air", 3, "default:stone", 5, true, -30, false, false, false) +-- nodes gen +-- This dimension is "divided" in in 7 layer. +-- 1st layer is indistructible, made of indistructible morentir +for i = 1, 9 do ---nodes gen - ---This dimension is "divided" in in 7 layer. ---1st layer is indistructible, made of indistructible morentir - - - -for i=1,9 do minetest.register_ore({ ore_type = "scatter", ore = "nssb:indistructible_morentir", - wherein = {"default:water_source","default:water_flowing","default:gravel", "default:dirt", "default:sand", "default:lava_source", "default:lava_flowing", "default:mese_block", "default:stone","air","default:stone_with_coal","default:stone_with_iron","default:stone_with_mese","default:stone_with_diamond","default:stone_with_gold","default:stone_with_copper","nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick"}, + wherein = { + "default:water_source","default:water_flowing","default:gravel", + "default:dirt", "default:sand", "default:lava_source", "default:lava_flowing", + "default:mese_block", "default:stone", "air", "default:stone_with_coal", + "default:stone_with_iron", "default:stone_with_mese", + "default:stone_with_diamond", "default:stone_with_gold", + "default:stone_with_copper", "nssb:ant_dirt", "default:stone", + "default:cobble", "default:stonebrick", "default:mossycobble", + "default:desert_stone", "default:desert_cobble", "default:desert_stonebrick", + "default:sandstone", "default:sandstonebrick" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 44, - y_max = level - 37, + y_max = level - 37 }) end if moreores then - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = "nssb:indistructible_morentir", - wherein = {"moreores:mineral_tin", "moreores:mineral_silver", "moreores:mineral_mithril"}, + wherein = { + "moreores:mineral_tin", "moreores:mineral_silver", + "moreores:mineral_mithril" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 44, - y_max = level - 37, + y_max = level - 37 }) end end ---2nd layer is "stalagmitic", have bats and morelentir +-- 2nd layer is "stalagmitic", have bats and morelentir local function replace2(old, new) - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = new, @@ -279,11 +391,12 @@ local function replace2(old, new) clust_num_ores = 1, clust_size = 1, y_min = level - 65, - y_max = level - 45, + y_max = level - 45 }) end end + replace2("default:stone", "nssb:morentir") replace2("default:stone_with_coal", "nssb:morelentir") replace2("default:stone_with_iron", "nssb:morelentir") @@ -299,209 +412,235 @@ replace2("default:water_flowing", "nssb:morelentir") replace2("default:lava_source", "nssb:morelentir") replace2("default:lava_flowing", "nssb:morelentir") replace2("default:mese_block", "nssb:morelentir") -replace2({"nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick"}, "nssb:morelentir") +replace2({"nssb:ant_dirt", "default:stone", "default:cobble", "default:stonebrick", + "default:mossycobble", "default:desert_stone", "default:desert_cobble", + "default:desert_stonebrick", "default:sandstone", "default:sandstonebrick"}, + "nssb:morelentir") + if moreores then - replace2({"moreores:mineral_tin", "moreores:mineral_silver", "moreores:mineral_mithril"},"air") + + replace2({"moreores:mineral_tin", "moreores:mineral_silver", + "moreores:mineral_mithril"},"air") end minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morvilya", - wherein = "nssb:morentir", - clust_scarcity = 15 * 15 * 15, - clust_size = 6, - y_min = level - 65, - y_max = level - 45, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) -for i=1,3 do -minetest.register_ore({ - ore_type = "scatter", - ore = "air", - wherein = "nssb:morentir", - clust_scarcity = 1, - clust_num_ores = 1, - clust_size = 1, - y_min = level - 66, - y_max = level - 58, - }) -end + ore_type = "blob", + ore = "nssb:morvilya", + wherein = "nssb:morentir", + clust_scarcity = 15 * 15 * 15, + clust_size = 6, + y_min = level - 65, + y_max = level - 45, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + }, +}) +for i = 1, 3 do ---3rd layer is made by air - -for i=1,32 do minetest.register_ore({ ore_type = "scatter", ore = "air", - wherein = {"nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick","default:water_source","default:water_flowing","default:gravel", "default:dirt", "default:sand", "default:lava_source", "default:lava_flowing", "default:mese_block", "default:stone","air","default:stone_with_coal","default:stone_with_iron","default:stone_with_mese","default:stone_with_diamond","default:stone_with_gold","default:stone_with_copper"}, + wherein = "nssb:morentir", + clust_scarcity = 1, + clust_num_ores = 1, + clust_size = 1, + y_min = level - 66, + y_max = level - 58 + }) +end + +-- 3rd layer is made by air + +for i = 1, 32 do + + minetest.register_ore({ + ore_type = "scatter", + ore = "air", + wherein = { + "nssb:ant_dirt", "default:stone", "default:cobble", "default:stonebrick", + "default:mossycobble", "default:desert_stone", "default:desert_cobble", + "default:desert_stonebrick", "default:sandstone", "default:sandstonebrick", + "default:water_source", "default:water_flowing", "default:gravel", + "default:dirt", "default:sand", "default:lava_source", "default:lava_flowing", + "default:mese_block", "default:stone", "air", "default:stone_with_coal", + "default:stone_with_iron", "default:stone_with_mese", + "default:stone_with_diamond", "default:stone_with_gold", + "default:stone_with_copper" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 93, - y_max = level - 66, + y_max = level - 66 }) end + if moreores then - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = "air", - wherein = {"moreores:mineral_tin", "moreores:mineral_silver", "moreores:mineral_mithril"}, + wherein = { + "moreores:mineral_tin", "moreores:mineral_silver", + "moreores:mineral_mithril" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 93, - y_max = level - 66, + y_max = level - 66 }) end end minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morelentir", - wherein = "air", - clust_scarcity = 10 * 10 * 10, - clust_size = 3, - y_min = level - 68, - y_max = level - 65, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morelentir", + wherein = "air", + clust_scarcity = 10 * 10 * 10, + clust_size = 3, + y_min = level - 68, + y_max = level - 65, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morelentir", - wherein = "air", - clust_scarcity = 16 * 16 * 16, - clust_size = 6, - y_min = level - 71, - y_max = level - 65, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morelentir", + wherein = "air", + clust_scarcity = 16 * 16 * 16, + clust_size = 6, + y_min = level - 71, + y_max = level - 65, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morvilya", - wherein = "nssb:morentir", - clust_scarcity = 15 * 15 * 15, - clust_size = 6, - y_min = level - 92, - y_max = level - 66, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morvilya", + wherein = "nssb:morentir", + clust_scarcity = 15 * 15 * 15, + clust_size = 6, + y_min = level - 92, + y_max = level - 66, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morentir", - wherein = "air", - clust_scarcity = 13 * 13 * 13, - clust_size = 6, - y_min = level - 95, - y_max = level - 89, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morentir", + wherein = "air", + clust_scarcity = 13 * 13 * 13, + clust_size = 6, + y_min = level - 95, + y_max = level - 89, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morentir", - wherein = "air", - clust_scarcity = 11 * 11 * 11, - clust_size = 5, - y_min = level - 95, - y_max = level - 90, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morentir", + wherein = "air", + clust_scarcity = 11 * 11 * 11, + clust_size = 5, + y_min = level - 95, + y_max = level - 90, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morentir", - wherein = "air", - clust_scarcity = 10 * 10 * 10, - clust_size = 4, - y_min = level - 95, - y_max = level - 91, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morentir", + wherein = "air", + clust_scarcity = 10 * 10 * 10, + clust_size = 4, + y_min = level - 95, + y_max = level - 91, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) minetest.register_ore({ - ore_type = "blob", - ore = "nssb:morentir", - wherein = "air", - clust_scarcity = 10 * 10 * 10, - clust_size = 10, - y_min = level - 95, - y_max = level - 89, - noise_threshold = 0.0, - noise_params = { - offset = 1, - scale = 1, - spread = {x = 1, y = 1000, z = 1}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, - }) + ore_type = "blob", + ore = "nssb:morentir", + wherein = "air", + clust_scarcity = 10 * 10 * 10, + clust_size = 10, + y_min = level - 95, + y_max = level - 89, + noise_threshold = 0.0, + noise_params = { + offset = 1, + scale = 1, + spread = {x = 1, y = 1000, z = 1}, + seed = 17676, + octaves = 1, + persist = 0.0 + } +}) ---4th layer is a plain with mobs, fire, water... +-- 4th layer is a plain with mobs, fire, water... local function replace4(old, new) - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = new, @@ -510,11 +649,12 @@ local function replace4(old, new) clust_num_ores = 1, clust_size = 1, y_min = level - 107, - y_max = level - 94, + y_max = level - 94 }) end end + replace4("default:stone", "nssb:morentir") replace4("default:stone_with_coal", "nssb:mornen") replace4("default:stone_with_iron", "air") @@ -530,48 +670,56 @@ replace4("default:lava_flowing", "nssb:mornen_flowing") replace4("default:water_source", "nssb:mornen") replace4("default:water_flowing", "nssb:mornen_flowing") replace4("default:mese_block", "nssb:life_energy_ore") -replace4({"nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick"}, "nssb:morkemen") +replace4({"nssb:ant_dirt", "default:stone", "default:cobble", "default:stonebrick", + "default:mossycobble", "default:desert_stone", "default:desert_cobble", + "default:desert_stonebrick", "default:sandstone", "default:sandstonebrick"}, + "nssb:morkemen") + if moreores then - replace4({"moreores:mineral_tin", "moreores:mineral_silver", "moreores:mineral_mithril"},"nssb:morentir") + + replace4({"moreores:mineral_tin", "moreores:mineral_silver", + "moreores:mineral_mithril"},"nssb:morentir") end minetest.register_ore({ - ore_type = "scatter", - ore = "nssb:morlote", - wherein = "air", - clust_scarcity = 7*7*7, - clust_num_ores = 1, - clust_size = 1, - y_min = level - 94, - y_max = level - 93, - }) + ore_type = "scatter", + ore = "nssb:morlote", + wherein = "air", + clust_scarcity = 7*7*7, + clust_num_ores = 1, + clust_size = 1, + y_min = level - 94, + y_max = level - 93 +}) minetest.register_ore({ - ore_type = "scatter", - ore = "nssb:mornar", - wherein = "air", - clust_scarcity = 4*4*4, - clust_num_ores = 1, - clust_size = 1, - y_min = level - 94, - y_max = level - 93, - }) + ore_type = "scatter", + ore = "nssb:mornar", + wherein = "air", + clust_scarcity = 4*4*4, + clust_num_ores = 1, + clust_size = 1, + y_min = level - 94, + y_max = level - 93 +}) minetest.register_ore({ - ore_type = "scatter", - ore = "nssm:morwa_statue", - wherein = "air", - clust_scarcity = 18*18*18, - clust_num_ores = 1, - clust_size = 1, - y_min = level - 94, - y_max = level - 93, - }) + ore_type = "scatter", + ore = "nssm:morwa_statue", + wherein = "air", + clust_scarcity = 18*18*18, + clust_num_ores = 1, + clust_size = 1, + y_min = level - 94, + y_max = level - 93 +}) ---5th layer is underground with caves +-- 5th layer is underground with caves local function replace5(old, new) - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = new, @@ -580,30 +728,31 @@ local function replace5(old, new) clust_num_ores = 1, clust_size = 1, y_min = level - 156, - y_max = level - 108, + y_max = level - 108 }) end end minetest.register_ore({ - ore_type = "blob", - ore = "nssb:fall_morentir", - wherein = "air", - clust_scarcity = 16 * 16 * 16, - clust_size = 6, - y_min = level - 204, - y_max = level - 109, - noise_threshold = 0.0, - noise_params = { - offset = 0.5, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = 17676, - octaves = 1, - persist = 0.0 - }, + ore_type = "blob", + ore = "nssb:fall_morentir", + wherein = "air", + clust_scarcity = 16 * 16 * 16, + clust_size = 6, + y_min = level - 204, + y_max = level - 109, + noise_threshold = 0.0, + noise_params = { + offset = 0.5, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = 17676, + octaves = 1, + persist = 0.0 + } }) + replace5("default:stone", "nssb:morentir") replace5("default:stone_with_coal", "nssb:life_energy_ore") replace5("default:stone_with_iron", "nssb:morentir") @@ -619,17 +768,23 @@ replace5("default:lava_flowing", "nssb:morentir") replace5("default:water_source", "nssb:mornen") replace5("default:water_flowing", "nssb:mornen_flowing") replace5("default:mese_block", "nssb:life_energy_ore") -replace5({"nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick"}, "nssb:morkemen") +replace5({"nssb:ant_dirt", "default:stone", "default:cobble", "default:stonebrick", + "default:mossycobble", "default:desert_stone", "default:desert_cobble", + "default:desert_stonebrick", "default:sandstone", "default:sandstonebrick"}, + "nssb:morkemen") + if moreores then replace5("moreores:mineral_tin","nssb:life_energy_ore") replace5("moreores:mineral_silver","nssb:morentir") replace5("moreores:mineral_mithril","nssb:moranga") end ---6th layer is underground with other caves and the special metal +-- 6th layer is underground with other caves and the special metal local function replace6(old, new) - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = new, @@ -638,11 +793,12 @@ local function replace6(old, new) clust_num_ores = 1, clust_size = 1, y_min = level - 205, - y_max = level - 157, + y_max = level - 157 }) end end + replace6("default:stone", "nssb:morentir") replace6("default:stone_with_coal", "nssb:life_energy_ore") replace6("default:stone_with_iron", "nssb:moranga") @@ -658,7 +814,11 @@ replace6("default:lava_flowing", "nssb:morentir") replace6("default:water_source", "nssb:mornen") replace6("default:water_flowing", "nssb:mornen_flowing") replace6("default:mese_block", "nssb:life_energy_ore") -replace6({"nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick"}, "nssb:morkemen") +replace6({"nssb:ant_dirt", "default:stone", "default:cobble", "default:stonebrick", + "default:mossycobble", "default:desert_stone", "default:desert_cobble", + "default:desert_stonebrick", "default:sandstone", "default:sandstonebrick"}, + "nssb:morkemen") + if moreores then replace6("moreores:mineral_tin","nssb:life_energy_ore") replace6("moreores:mineral_silver","nssb:moranga") @@ -666,103 +826,168 @@ if moreores then end minetest.register_ore({ - ore_type = "scatter", - ore = "nssb:boum_morentir", - wherein = "nssb:morentir", - clust_scarcity = 13*13*13, - clust_num_ores = 1, - clust_size = 1, - y_min = level - 205, - y_max = level - 157, - }) + ore_type = "scatter", + ore = "nssb:boum_morentir", + wherein = "nssb:morentir", + clust_scarcity = 13*13*13, + clust_num_ores = 1, + clust_size = 1, + y_min = level - 205, + y_max = level - 157 +}) ---7th layer is indistructible +-- 7th layer is indistructible + +for i = 1, 9 do -for i=1,9 do minetest.register_ore({ ore_type = "scatter", ore = "nssb:indistructible_morentir", - wherein = {"nssb:ant_dirt","default:stone","default:cobble","default:stonebrick","default:mossycobble","default:desert_stone","default:desert_cobble","default:desert_stonebrick","default:sandstone","default:sandstonebrick","default:water_source","default:water_flowing","default:gravel", "default:dirt", "default:sand", "default:lava_source", "default:lava_flowing", "default:mese_block", "default:stone","air","default:stone_with_coal","default:stone_with_iron","default:stone_with_mese","default:stone_with_diamond","default:stone_with_gold","default:stone_with_copper"}, + wherein = { + "nssb:ant_dirt", "default:stone", "default:cobble", "default:stonebrick", + "default:mossycobble", "default:desert_stone", "default:desert_cobble", + "default:desert_stonebrick", "default:sandstone", "default:sandstonebrick", + "default:water_source", "default:water_flowing", "default:gravel", + "default:dirt", "default:sand", "default:lava_source", "default:lava_flowing", + "default:mese_block", "default:stone", "air", "default:stone_with_coal", + "default:stone_with_iron", "default:stone_with_mese", + "default:stone_with_diamond", "default:stone_with_gold", + "default:stone_with_copper" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 213, - y_max = level - 206, + y_max = level - 206 }) end if moreores then - for i=1,9 do + + for i = 1, 9 do + minetest.register_ore({ ore_type = "scatter", ore = "nssb:indistructible_morentir", - wherein = {"moreores:mineral_tin", "moreores:mineral_silver", "moreores:mineral_mithril"}, + wherein = { + "moreores:mineral_tin", "moreores:mineral_silver", + "moreores:mineral_mithril" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 213, - y_max = level - 206, + y_max = level - 206 }) end end -for i=1,12 do +for i = 1, 12 do + minetest.register_ore({ ore_type = "scatter", ore = "air", - wherein = {"default:water_source", "default:water_flowing", "default:lava_source", "default:lava_flowing"}, + wherein = { + "default:water_source", "default:water_flowing", "default:lava_source", + "default:lava_flowing" + }, clust_scarcity = 1, clust_num_ores = 1, clust_size = 1, y_min = level - 207, - y_max = level - 45, + y_max = level - 45 }) end ---Place the buildings in the morlendor -posmorvalarblock = {x=827, y= level - 94, z=-817} -posplace = {x=0, y= level - 93, z=0} -posmemory = {x=0, y= level - 92, z=0} +-- Place the buildings in the morlendor + +posmorvalarblock = {x = 827, y = level - 94, z = -817} +posplace = {x = 0, y = level - 93, z = 0} +posmemory = {x = 0, y = level - 92, z = 0} + if posplace then + --[[if name11 == "ignore" then local pmin, pmax = minetest.get_voxel_manip():read_from_map(posplace, posplace) end ]] - --minetest.get_voxel_manip():read_from_map(posplace, posplace) + + -- minetest.get_voxel_manip():read_from_map(posplace, posplace) + if not minetest.get_node_or_nil(posplace) then minetest.emerge_area(vector.subtract(posplace, 80), vector.add(posplace, 80)) end + minetest.after(5, function(posplace) - minetest.place_schematic(posplace, minetest.get_modpath("nssb").."/schems/memoportal.mts", 0, {}, true) + + minetest.place_schematic(posplace, minetest.get_modpath("nssb") + .. "/schems/memoportal.mts", 0, {}, true) end, posplace) end -posarena = {x=777, y= level - 96, z=-777} +posarena = {x = 777, y = level - 96, z = -777} + if posarena then - --minetest.get_voxel_manip():read_from_map(posplace, posplace) + + -- minetest.get_voxel_manip():read_from_map(posplace, posplace) if not minetest.get_node_or_nil(posarena) then minetest.emerge_area(vector.subtract(posarena, 120), vector.add(posarena, 120)) end + -- teleport the player minetest.after(5, function(posarena) - minetest.place_schematic(posarena, minetest.get_modpath("nssb").."/schems/arena51.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=level - 96, z=posarena.z-9}, minetest.get_modpath("nssb").."/schems/arena52.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-18}, minetest.get_modpath("nssb").."/schems/arena53.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-27}, minetest.get_modpath("nssb").."/schems/arena54.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=level - 96, z=posarena.z-36}, minetest.get_modpath("nssb").."/schems/arena55.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-45}, minetest.get_modpath("nssb").."/schems/arena56.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-54}, minetest.get_modpath("nssb").."/schems/arena57.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-63}, minetest.get_modpath("nssb").."/schems/arena58.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-72}, minetest.get_modpath("nssb").."/schems/arena59.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-81}, minetest.get_modpath("nssb").."/schems/arena510.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-90}, minetest.get_modpath("nssb").."/schems/arena511.mts", "0", {}, true) + + local mp = minetest.get_modpath("nssb") + + minetest.place_schematic(posarena, mp .. "/schems/arena51.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-9}, + mp .. "/schems/arena52.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-18}, + mp .. "/schems/arena53.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-27}, + mp .. "/schems/arena54.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-36}, + mp .. "/schems/arena55.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-45}, + mp .. "/schems/arena56.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-54}, + mp .. "/schems/arena57.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-63}, + mp .. "/schems/arena58.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-72}, + mp .. "/schems/arena59.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-81}, + mp .. "/schems/arena510.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-90}, + mp .. "/schems/arena511.mts", "0", {}, true) + local objects = minetest.get_objects_inside_radius(posmorvalarblock, 90) local found = 0 + for _,obj in ipairs(objects) do - if (obj:get_luaentity() and (obj:get_luaentity().name=="nssm:morvalar0" or obj:get_luaentity().name=="nssm:morvalar1" or obj:get_luaentity().name=="nssm:morvalar2" or obj:get_luaentity().name=="nssm:morvalar3" or obj:get_luaentity().name=="nssm:morvalar4" or obj:get_luaentity().name=="nssm:morvalar5" or obj:get_luaentity().name=="nssm:morvalar6" or obj:get_luaentity().name=="nssm:morvalar")) then + + if (obj:get_luaentity() and (obj:get_luaentity().name=="nssm:morvalar0" + or obj:get_luaentity().name=="nssm:morvalar1" + or obj:get_luaentity().name=="nssm:morvalar2" + or obj:get_luaentity().name=="nssm:morvalar3" + or obj:get_luaentity().name=="nssm:morvalar4" + or obj:get_luaentity().name=="nssm:morvalar5" + or obj:get_luaentity().name=="nssm:morvalar6" + or obj:get_luaentity().name=="nssm:morvalar")) then found = 1 end end + if found == 0 then minetest.set_node(posmorvalarblock, {name="nssb:morvalar_block"}) end @@ -772,85 +997,125 @@ end minetest.register_abm({ nodenames = {"nssb:indistructible_morentir"}, neighbors = {"nssb:mornar"}, - interval = 1.0, + interval = 1, chance = 1, action = function(pos, node) - --minetest.chat_send_all("Ciao ciao pirloni") - minetest.place_schematic(posarena, minetest.get_modpath("nssb").."/schems/arena51.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y= level - 96, z=posarena.z-9}, minetest.get_modpath("nssb").."/schems/arena52.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-18}, minetest.get_modpath("nssb").."/schems/arena53.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-27}, minetest.get_modpath("nssb").."/schems/arena54.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-36}, minetest.get_modpath("nssb").."/schems/arena55.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-45}, minetest.get_modpath("nssb").."/schems/arena56.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-54}, minetest.get_modpath("nssb").."/schems/arena57.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-63}, minetest.get_modpath("nssb").."/schems/arena58.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-72}, minetest.get_modpath("nssb").."/schems/arena59.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-81}, minetest.get_modpath("nssb").."/schems/arena510.mts", "0", {}, true) - minetest.place_schematic({x=posarena.x, y=- level - 96, z=posarena.z-90}, minetest.get_modpath("nssb").."/schems/arena511.mts", "0", {}, true) - end + +-- minetest.chat_send_all("Ciao ciao pirloni") + + local mp = minetest.get_modpath("nssb") + + minetest.place_schematic(posarena, mp .. "/schems/arena51.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-9}, + mp .. "/schems/arena52.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-18}, + mp .. "/schems/arena53.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-27}, + mp .. "/schems/arena54.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-36}, + mp .. "/schems/arena55.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-45}, + mp .. "/schems/arena56.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-54}, + mp .. "/schems/arena57.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-63}, + mp .. "/schems/arena58.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-72}, + mp .. "/schems/arena59.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-81}, + mp .. "/schems/arena510.mts", "0", {}, true) + + minetest.place_schematic({x = posarena.x, y = level - 96, z = posarena.z-90}, + mp .. "/schems/arena511.mts", "0", {}, true) + end }) --[[ minetest.register_abm({ nodenames = {"default:lava_source"}, - neighbors = {"nssb:morentir","nssb:morkemen", "nssb:morelentir", "nssb:mornen", "nssb:mornar","nssb:indistructible_morentir"}, - interval = 1.0, + neighbors = { + "nssb:morentir","nssb:morkemen", "nssb:morelentir", "nssb:mornen", + "nssb:mornar","nssb:indistructible_morentir" + }, + interval = 1, chance = 1, action = function(pos, node) minetest.set_node({x = pos.x, y = pos.y , z = pos.z}, {name = "air"}) end }) ]] + minetest.register_abm({ - nodenames = {"default:lava_source", "default:lava_flowing", "default:water_source", "default:water_flowing"}, + nodenames = { + "default:lava_source", "default:lava_flowing", "default:water_source", + "default:water_flowing" + }, neighbors = {"air"}, - interval = 1.0, + interval = 1, chance = 1, action = function(pos, node) - if pos.y < level then - minetest.remove_node(pos) - end + if pos.y < level then + minetest.remove_node(pos) + end end }) ---If the generated chunks of map are in Morlendor remove the lava_source nodes + +-- If the generated chunks of map are in Morlendor remove the lava_source nodes --[[ minetest.register_on_generated(function(minp, maxp, seed) + if maxp.y > level then + if minp.y < level then maxp.y = level else return end end + minetest.chat_send_all("Ciao sono qui") + local poslist = minetest.find_nodes_in_area(minp,maxp,"default:lava_source") + for _,v in pairs(poslist) do minetest.chat_send_all("Posizione: "..pos_to_string) minetest.remove_node(v) end end) -]]-- ---[[ + minetest.register_abm({ nodenames = {"default:water_source"}, - neighbors = {"nssb:morentir","nssb:morkemen", "nssb:morelentir", "nssb:mornen", "nssb:mornar","nssb:indistructible_morentir"}, - interval = 1.0, + neighbors = { + "nssb:morentir","nssb:morkemen", "nssb:morelentir", "nssb:mornen", + "nssb:mornar","nssb:indistructible_morentir" + }, + interval = 1, chance = 1, action = function(pos, node) - minetest.set_node({x = pos.x, y = pos.y , z = pos.z}, {name = "air"}) - end + minetest.set_node({x = pos.x, y = pos.y , z = pos.z}, {name = "air"}) + end }) ]] - --Abm +-- Abms + minetest.register_abm({ nodenames = {"default:torch"}, neighbors = {"nssb:morentir","nssb:morkemen"}, - interval = 1.0, + interval = 1, chance = 1, action = function(pos, node) - minetest.set_node({x = pos.x, y = pos.y , z = pos.z}, {name = "nssb:mornar"}) - end + minetest.set_node({x = pos.x, y = pos.y , z = pos.z}, {name = "nssb:mornar"}) + end }) minetest.register_abm({ @@ -858,14 +1123,17 @@ minetest.register_abm({ neighbors = {"air"}, interval = 60, chance = 100, - action = - function(pos, node) + action = function(pos, node) + local pos1 = {x=pos.x, y=pos.y+1, z=pos.z} local n = minetest.get_node(pos1).name + if n ~= "air" then return end + minetest.add_entity(pos1, "nssm:morgre") + minetest.remove_node(pos) end }) @@ -875,9 +1143,10 @@ minetest.register_abm({ neighbors = {"nssb:fall_morentir"}, interval = 1, chance = 1, - action = - function(pos, node) + action = function(pos, node) + for _,obj in ipairs(minetest.get_objects_inside_radius(pos, 7)) do + if obj:is_player() then nodeupdate(pos) end @@ -885,15 +1154,15 @@ minetest.register_abm({ end }) - minetest.register_abm({ nodenames = {"nssb:boum_morentir"}, neighbors = {"nssb:morentir"}, interval = 1, chance = 1, - action = - function(pos, node) + action = function(pos, node) + for _,obj in ipairs(minetest.get_objects_inside_radius(pos, 5)) do + if obj:is_player() then explosion(pos, 3, 0, 1) end @@ -901,32 +1170,31 @@ minetest.register_abm({ end }) - minetest.register_abm({ nodenames = {"nssb:mornen", "nssb:mornen_flowing"}, neighbors = {"air"}, interval = 1.0, chance = 5, - action = - function (pos, node) - minetest.add_particlespawner({ - amount = 1, - time = 2, - minpos = {x=pos.x-0.5, y=pos.y+0.5, z=pos.z-0.5}, - maxpos = {x=pos.x+0.5, y=pos.y+0.5, z=pos.z+0.5}, - minvel = {x=0, y=0.1, z=0}, - maxvel = {x=0, y=0.3, z=0}, - minacc = {x=0,y=0,z=0}, - maxacc = {x=0,y=0,z=0}, - minexptime = 1, - maxexptime = 1.2, - minsize = 0.5, - maxsize = 0.7, - collisiondetection = false, - vertical = true, - texture = "morparticle.png", - }) - end + action = function (pos, node) + + minetest.add_particlespawner({ + amount = 1, + time = 2, + minpos = {x = pos.x - 0.5, y = pos.y + 0.5, z = pos.z - 0.5}, + maxpos = {x = pos.x + 0.5, y = pos.y + 0.5, z = pos.z + 0.5}, + minvel = {x = 0, y = 0.1, z = 0}, + maxvel = {x = 0, y = 0.3, z = 0}, + minacc = {x = 0, y = 0, z = 0}, + maxacc = {x = 0, y = 0, z = 0}, + minexptime = 1, + maxexptime = 1.2, + minsize = 0.5, + maxsize = 0.7, + collisiondetection = false, + vertical = true, + texture = "morparticle.png", + }) + end }) minetest.register_abm({ @@ -934,52 +1202,65 @@ minetest.register_abm({ neighbors = {"air"}, interval = 1, chance = 1, - action = - function (pos, node) - minetest.add_particlespawner({ - amount = 3, - time = 1, - minpos = {x=pos.x-0.5, y=pos.y+0.5, z=pos.z-0.5}, - maxpos = {x=pos.x+0.5, y=pos.y+0.5, z=pos.z+0.5}, - minvel = {x=0, y=0.1, z=0}, - maxvel = {x=0, y=0.8, z=0}, - minacc = {x=0,y=0,z=0}, - maxacc = {x=0,y=0.4,z=0}, - minexptime = 1, - maxexptime = 3, - minsize = 0.5, - maxsize = 1.4, - collisiondetection = false, - vertical = true, - texture = "morparticle.png", - }) - end + action = function (pos, node) + + minetest.add_particlespawner({ + amount = 3, + time = 1, + minpos = {x = pos.x - 0.5, y = pos.y + 0.5, z = pos.z - 0.5}, + maxpos = {x = pos.x + 0.5, y = pos.y + 0.5, z = pos.z + 0.5}, + minvel = {x = 0, y = 0.1, z = 0}, + maxvel = {x = 0, y = 0.8, z = 0}, + minacc = {x = 0, y = 0, z = 0}, + maxacc = {x = 0, y = 0.4, z = 0}, + minexptime = 1, + maxexptime = 3, + minsize = 0.5, + maxsize = 1.4, + collisiondetection = false, + vertical = true, + texture = "morparticle.png", + }) + end }) + minetest.register_abm({ nodenames = {"nssb:portal"}, neighbors = {"air"}, interval = 7, chance = 1, - action = - function (pos, node) - for _,obj in ipairs(minetest.get_objects_inside_radius(pos, 1)) do - if obj:is_player() then - local pos1 = posmemory - local meta = minetest.get_meta(pos1) - --the timer is saved inside a position because for me the tonumber function doesn't work - local timer_pos = minetest.string_to_pos(meta:get_string("player_timer"..obj:get_player_name())) - if not timer_pos or ((timer_pos) and ((os.time() - timer_pos.x) >= 30)) then - local posp = obj:get_pos() - --minetest.chat_send_all("Posizione: "..minetest.pos_to_string(posp)) + action = function (pos, node) - obj:set_pos({x=5, y=pos1.y+2, z =5}) - meta:set_string("player"..obj:get_player_name(), minetest.pos_to_string(posp)) - timer_pos = {x=os.time(), y = 0, z = 0} - meta:set_string("player_timer"..obj:get_player_name(), minetest.pos_to_string(timer_pos)) - end + for _,obj in ipairs(minetest.get_objects_inside_radius(pos, 1)) do + + if obj:is_player() then + + local pos1 = posmemory + local meta = minetest.get_meta(pos1) + + -- the timer is saved inside a position because for me the tonumber + -- function doesn"t work + local timer_pos = minetest.string_to_pos(meta:get_string("player_timer" + .. obj:get_player_name())) + + if not timer_pos or ((timer_pos) and ((os.time() - timer_pos.x) >= 30)) then + + local posp = obj:get_pos() + +-- minetest.chat_send_all("Posizione: "..minetest.pos_to_string(posp)) + + obj:set_pos({x = 5, y = pos1.y + 2, z = 5}) + + meta:set_string("player"..obj:get_player_name(), minetest.pos_to_string(posp)) + + timer_pos = {x = os.time(), y = 0, z = 0} + + meta:set_string("player_timer" .. obj:get_player_name(), + minetest.pos_to_string(timer_pos)) end end end + end }) minetest.register_abm({ @@ -987,26 +1268,25 @@ minetest.register_abm({ neighbors = {"air"}, interval = 1, chance = 1, - action = - function (pos, node) - minetest.add_particlespawner({ - amount = 3, - time = 1, - minpos = {x=pos.x-0.5, y=pos.y+0.5, z=pos.z-0.5}, - maxpos = {x=pos.x+0.5, y=pos.y+0.5, z=pos.z+0.5}, - minvel = {x=0, y=0.1, z=0}, - maxvel = {x=0, y=0.8, z=0}, - minacc = {x=0,y=0,z=0}, - maxacc = {x=0,y=0.4,z=0}, - minexptime = 1, - maxexptime = 3, - minsize = 0.5, - maxsize = 1.4, - collisiondetection = false, - vertical = true, - texture = "earth_particle.png", - }) - end + action = function (pos, node) + minetest.add_particlespawner({ + amount = 3, + time = 1, + minpos = {x = pos.x - 0.5, y = pos.y + 0.5, z = pos.z - 0.5}, + maxpos = {x = pos.x + 0.5, y = pos.y + 0.5, z = pos.z + 0.5}, + minvel = {x = 0, y = 0.1, z = 0}, + maxvel = {x = 0, y = 0.8, z = 0}, + minacc = {x = 0, y = 0, z = 0}, + maxacc = {x = 0, y = 0.4, z = 0}, + minexptime = 1, + maxexptime = 3, + minsize = 0.5, + maxsize = 1.4, + collisiondetection = false, + vertical = true, + texture = "earth_particle.png", + }) + end }) minetest.register_abm({ @@ -1014,27 +1294,38 @@ minetest.register_abm({ neighbors = {"air"}, interval = 7, chance = 2, - action = - function (pos, node) - for _,obj in ipairs(minetest.get_objects_inside_radius(pos, 1)) do - if obj:is_player() then - local pos1 = posmemory - local meta = minetest.get_meta(pos1) - --the timer is saved inside a position because for me the tonumber function doesn't work - local timer_pos = minetest.string_to_pos(meta:get_string("player_timer"..obj:get_player_name())) + action = function (pos, node) - if not timer_pos or ((timer_pos) and ((os.time() - timer_pos.x) >= 30)) then + for _,obj in ipairs(minetest.get_objects_inside_radius(pos, 1)) do - local name = minetest.get_node(pos1).name + if obj:is_player() then - local target = minetest.string_to_pos(meta:get_string("player"..obj:get_player_name())) - if target then - obj:set_pos({x = target.x, y=target.y+1, z=target.z}) - timer_pos = {x=os.time(), y = 0, z = 0} - meta:set_string("player_timer"..obj:get_player_name(), minetest.pos_to_string(timer_pos)) - end + local pos1 = posmemory + local meta = minetest.get_meta(pos1) + -- the timer is saved inside a position because for me the tonumber + -- function doesn"t work + local timer_pos = minetest.string_to_pos(meta:get_string("player_timer" + .. obj:get_player_name())) + + if not timer_pos or ((timer_pos) and ((os.time() - timer_pos.x) >= 30)) then + + local name = minetest.get_node(pos1).name + + local target = minetest.string_to_pos(meta:get_string("player" + .. obj:get_player_name())) + + if target then + + obj:set_pos({x = target.x, y = target.y + 1, z = target.z}) + + timer_pos = {x = os.time(), y = 0, z = 0} + + meta:set_string("player_timer" + .. obj:get_player_name(), + minetest.pos_to_string(timer_pos)) end end end end + end }) diff --git a/nodes.lua b/nodes.lua index f9a2f13..cfb09bf 100644 --- a/nodes.lua +++ b/nodes.lua @@ -124,7 +124,7 @@ minetest.register_node("nssb:vine", { paramtype2 = "wallmounted", selection_box = {type = "wallmounted"}, legacy_wallmounted = true, - groups = {flammable=3, snappy = 3}, + groups = {flammable = 3, snappy = 3}, sounds = default.node_sound_leaves_defaults() }) @@ -254,8 +254,7 @@ minetest.register_node("nssb:web_cocoon", { groups = {snappy = 1, flammable = 2} }) - ---Eggs +-- Eggs function nssb_register_eggs ( name, -- name of the mobs and the eggs @@ -264,8 +263,8 @@ function nssb_register_eggs ( wide, -- the radius in wich mobs are generated troppi, -- maximun number of mobs spawned neigh, -- block that need to be near for spawning the mobs - night, --if only at night - lumin) --luminosity parameter of the egg_block + night, -- if only at night + lumin) -- luminosity parameter of the egg_block minetest.register_node("nssb:" .. name .. "_eggs", { description = descr .." Eggs", @@ -275,7 +274,6 @@ function nssb_register_eggs ( groups = {choppy = 1} }) - minetest.register_abm({ nodenames = {"nssb:" .. name .. "_eggs"}, neighbors = {neigh}, @@ -338,8 +336,8 @@ function nssb_register_eggboss ( wide, -- the radius in wich mobs are generated troppi, -- maximun number of mobs spawned neigh, -- block that need to be near for spawning the mobs - night, --if only at night - lumin) --luminosity parameter of the egg_block + night, -- if only at night + lumin) -- luminosity parameter of the egg_block if lumin > 14 then lumin = 14 end @@ -376,7 +374,7 @@ function nssb_register_eggboss ( local objects = minetest.get_objects_inside_radius(pos, 12) for _,obj in ipairs(objects) do - count = count +1 + count = count + 1 end local t = minetest.get_timeofday() @@ -392,6 +390,7 @@ function nssb_register_eggboss ( end --Bosses of the eggs: + nssb_register_eggboss ("phoenix", "Phoenix", 900, 10, 1, "air", false, 15) nssb_register_eggboss ("tarantula", "Tarantula", 900, 2, 1, "air", false, 5) nssb_register_eggboss ("night_master", "Night Master", 900, 10, 1, "air", true, 0) @@ -426,8 +425,7 @@ minetest.register_abm({ end }) - ---Morlavala nodes +-- Morlavala nodes minetest.register_node("nssb:morentir", { description = "Dark Stone",