Compare commits

...

5 Commits

Author SHA1 Message Date
Vanessa Dannenberg 680b02f7e2 fix crash for sure this time 2021-07-19 23:56:47 -04:00
Vanessa Dannenberg a2976c609a update all generate, spawn, and grow calls
to use "." instead of ":" notation
(quells all those "deprecated" warnings)
2021-07-19 14:18:01 -04:00
Vanessa Dannenberg 46717958bc use biome_lib.get_nodedef_field
instead of biome_lib:get_nodedef_field
(change `.` to `:`)
2021-07-19 14:08:57 -04:00
Vanessa Dannenberg 52b2d18523 make moss buildable_to
and make sunflower attached_node like other plants
2021-06-29 13:44:00 -04:00
Vanessa Dannenberg bfd08f01c8 Just run the conversion LBM on every load
it won't take any appreciable CPU anyway if there's nothing to do.

Minetest seems to not new (or newly-renamed) LBMs when it should, when
it's set to only run once.  Also covers cases where a crash could
prevent mapblocks being checked later.
2021-06-23 21:09:48 -04:00
19 changed files with 60 additions and 57 deletions

View File

@ -199,7 +199,7 @@ abstract_bushes.grow_bush_node = function(pos,dir, leaf_type)
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"stoneage:grass_with_silex",
@ -244,7 +244,7 @@ abstract_bushes.grow_youngtree_node2 = function(pos, height)
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"stoneage:grass_with_silex",

View File

@ -30,7 +30,7 @@ local modpath = minetest.get_modpath('bushes_classic')
dofile(modpath..'/cooking.lua')
dofile(modpath..'/nodes.lua')
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = 3600,
spawn_plants = bushes_classic.spawn_list,
avoid_radius = 10,

View File

@ -1,6 +1,6 @@
--Map Generation Stuff
biome_lib:register_generate_plant(
biome_lib.register_on_generate(
{
surface = {
"default:dirt_with_grass",
@ -20,7 +20,7 @@ biome_lib:register_generate_plant(
}
)
biome_lib:register_generate_plant(
biome_lib.register_on_generate(
{
surface = {
"default:desert_sand",

View File

@ -92,7 +92,7 @@ minetest.register_node("dryplants:juncus_02", {
-- GENERATE SMALL JUNCUS
-----------------------------------------------------------------------------------------------
-- near water or swamp
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
--"default:desert_sand",
@ -113,7 +113,7 @@ biome_lib:register_generate_plant({
abstract_dryplants.grow_juncus
)
-- at dunes/beach
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
--"default:dirt_with_grass",
--"default:desert_sand",

View File

@ -12,7 +12,7 @@ abstract_dryplants.grow_grass_variation = function(pos)
minetest.swap_node(right_here, {name="dryplants:grass_short"})
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
},

View File

@ -7,7 +7,7 @@
-- Looked at code from: default
-----------------------------------------------------------------------------------------------
biome_lib:register_generate_plant(
biome_lib.register_on_generate(
{
surface = {
"default:dirt_with_grass",

View File

@ -327,7 +327,7 @@ minetest.register_entity("dryplants:reedmace_water_entity",{
-----------------------------------------------------------------------------------------------
-- SPAWN REEDMACE
-----------------------------------------------------------------------------------------------
--[[biome_lib:spawn_on_surfaces({
--[[biome_lib.register_active_spawner({
spawn_delay = 1200,
spawn_plants = {"dryplants:reedmace_sapling"},
spawn_chance = 400,
@ -348,7 +348,7 @@ minetest.register_entity("dryplants:reedmace_water_entity",{
-- GENERATE REEDMACE
-----------------------------------------------------------------------------------------------
-- near water or swamp
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"default:desert_sand",
@ -369,7 +369,7 @@ biome_lib:register_generate_plant({
abstract_dryplants.grow_reedmace
)
-- in water
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt",
"default:dirt_with_grass",
@ -392,7 +392,7 @@ biome_lib:register_generate_plant({
abstract_dryplants.grow_reedmace_water
)
-- for oases & tropical beaches & tropical swamps
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:sand",
"sumpf:sumpf"

View File

@ -87,7 +87,7 @@ end
-----------------------------------------------------------------------------------------------
if abstract_ferns.config.lady_ferns_near_tree == true then
biome_lib:register_generate_plant({ -- near trees (woodlands)
biome_lib.register_on_generate({ -- near trees (woodlands)
surface = {
"default:dirt_with_grass",
"default:mossycobble",
@ -116,7 +116,7 @@ if abstract_ferns.config.lady_ferns_near_tree == true then
end
if abstract_ferns.config.lady_ferns_near_rock == true then
biome_lib:register_generate_plant({ -- near stone (mountains)
biome_lib.register_on_generate({ -- near stone (mountains)
surface = {
"default:dirt_with_grass",
"default:mossycobble",
@ -143,7 +143,7 @@ if abstract_ferns.config.lady_ferns_near_rock == true then
end
if abstract_ferns.config.lady_ferns_near_ores == true then -- this one causes a huge fps drop
biome_lib:register_generate_plant({ -- near ores (potential mining sites)
biome_lib.register_on_generate({ -- near ores (potential mining sites)
surface = {
"default:dirt_with_grass",
"default:mossycobble",
@ -183,7 +183,7 @@ if abstract_ferns.config.lady_ferns_near_ores == true then -- this one causes a
end
if abstract_ferns.config.lady_ferns_in_groups == true then -- this one is meant as a replacement of Ferns_near_Ores
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"default:mossycobble",

View File

@ -295,7 +295,7 @@ minetest.register_abm({
-- in jungles
if abstract_ferns.config.enable_giant_treeferns_in_jungle == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"default:dirt_with_rainforest_litter", -- minetest >= 0.4.16
@ -321,7 +321,7 @@ end
-- for oases & tropical beaches
if abstract_ferns.config.enable_giant_treeferns_in_oases == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:sand"--,
--"default:desert_sand"

View File

@ -75,7 +75,7 @@ create_nodes()
-- Spawning
-----------------------------------------------------------------------------------------------
if abstract_ferns.config.enable_horsetails_spawning == true then
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = 1200,
spawn_plants = node_names,
spawn_chance = 400,
@ -104,7 +104,7 @@ end
-----------------------------------------------------------------------------------------------
if abstract_ferns.config.enable_horsetails_on_grass == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"default:dirt_with_coniferous_litter", -- minetest >= 0.5
@ -137,7 +137,7 @@ if abstract_ferns.config.enable_horsetails_on_grass == true then
end
if abstract_ferns.config.enable_horsetails_on_stones == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:gravel", -- roots go deep
"default:mossycobble",

View File

@ -181,7 +181,7 @@ minetest.register_abm({
-- in jungles
if abstract_ferns.config.enable_treeferns_in_jungle == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"default:dirt_with_rainforest_litter", -- minetest >= 0.4.16
@ -210,7 +210,7 @@ end
-- for oases & tropical beaches
if abstract_ferns.config.enable_treeferns_in_oases == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:sand"--,
--"default:desert_sand"

View File

@ -78,16 +78,16 @@ for i in ipairs(lilies_list) do
local above_node = minetest.get_node(pt.above)
local top_node = minetest.get_node(top_pos)
if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then
if biome_lib.get_nodedef_field(under_node.name, "buildable_to") then
if under_node.name ~= "default:water_source" then
place_pos = pt.under
elseif top_node.name ~= "default:water_source"
and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then
and biome_lib.get_nodedef_field(top_node.name, "buildable_to") then
place_pos = top_pos
else
return
end
elseif biome_lib:get_nodedef_field(above_node.name, "buildable_to") then
elseif biome_lib.get_nodedef_field(above_node.name, "buildable_to") then
place_pos = pt.above
end
@ -178,18 +178,19 @@ for i in ipairs(algae_list) do
local above_node = minetest.get_node(pt.above)
local top_node = minetest.get_node(top_pos)
if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then
if biome_lib.get_nodedef_field(under_node.name, "buildable_to") then
if under_node.name ~= "default:water_source" then
place_pos = pt.under
elseif top_node.name ~= "default:water_source"
and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then
and biome_lib.get_nodedef_field(top_node.name, "buildable_to") then
place_pos = top_pos
else
return
end
elseif biome_lib:get_nodedef_field(above_node.name, "buildable_to") then
elseif biome_lib.get_nodedef_field(above_node.name, "buildable_to") then
place_pos = pt.above
end
if not place_pos then return end -- something went wrong :P
if not minetest.is_protected(place_pos, placer:get_player_name()) then
@ -243,7 +244,7 @@ minetest.register_node(":flowers:sunflower", {
walkable = false,
buildable_to = true,
is_ground_content = true,
groups = { dig_immediate=3, flora=1, flammable=3 },
groups = { dig_immediate=3, flora=1, flammable=3, attached_node=1 },
sounds = default.node_sound_leaves_defaults(),
selection_box = box,
collision_box = box,
@ -299,7 +300,7 @@ flowers_plus.grow_waterlily = function(pos)
end
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:water_source"},
max_count = lilies_max_count,
rarity = lilies_rarity,
@ -321,7 +322,7 @@ flowers_plus.grow_seaweed = function(pos)
minetest.swap_node(right_here, {name="along_shore:seaweed_"..math.random(1,4), param2=math.random(1,3)})
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:water_source"},
max_count = seaweed_max_count,
rarity = seaweed_rarity,
@ -338,7 +339,7 @@ biome_lib:register_generate_plant({
-- seaweed at beaches
-- MM: not satisfied with it, but IMHO some beaches should have some algae
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:water_source"},
max_count = seaweed_max_count,
rarity = seaweed_rarity,
@ -354,7 +355,7 @@ biome_lib:register_generate_plant({
},
flowers_plus.grow_seaweed
)
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:sand"},
max_count = seaweed_max_count*2,
rarity = seaweed_rarity/2,
@ -371,7 +372,7 @@ biome_lib:register_generate_plant({
flowers_plus.grow_seaweed
)
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:dirt_with_grass"},
avoid_nodes = { "flowers:sunflower" },
max_count = sunflowers_max_count,
@ -386,7 +387,7 @@ biome_lib:register_generate_plant({
-- spawn ABM registrations
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = SPAWN_DELAY/2,
spawn_plants = {
"flowers:waterlily",
@ -408,7 +409,7 @@ biome_lib:spawn_on_surfaces({
random_facedir = {0,3}
})
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = SPAWN_DELAY*2,
spawn_plants = {"flowers:seaweed"},
spawn_chance = SPAWN_CHANCE*2,
@ -421,7 +422,7 @@ biome_lib:spawn_on_surfaces({
facedir = 1
})
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = SPAWN_DELAY*2,
spawn_plants = {"flowers:seaweed"},
spawn_chance = SPAWN_CHANCE*2,
@ -435,7 +436,7 @@ biome_lib:spawn_on_surfaces({
facedir = 1
})
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = SPAWN_DELAY*2,
spawn_plants = {"flowers:seaweed"},
spawn_chance = SPAWN_CHANCE*2,
@ -449,7 +450,7 @@ biome_lib:spawn_on_surfaces({
facedir = 1
})
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = SPAWN_DELAY*2,
spawn_plants = {"flowers:sunflower"},
spawn_chance = SPAWN_CHANCE*2,

View File

@ -62,7 +62,7 @@ abstract_molehills.place_molehill = function(pos)
end
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:dirt_with_grass"},
max_count = Molehills_Max_Count,
rarity = Molehills_Rarity,

View File

@ -70,7 +70,7 @@ minetest.register_node('poisonivy:climbing', {
buildable_to = true,
})
biome_lib:spawn_on_surfaces({
biome_lib.register_active_spawner({
spawn_delay = SPAWN_DELAY,
spawn_plants = {"poisonivy:seedling"},
avoid_radius = 10,
@ -83,7 +83,7 @@ biome_lib:spawn_on_surfaces({
verticals_list = walls_list
})
biome_lib:grow_plants({
biome_lib.update_plant({
grow_delay = SPAWN_DELAY,
grow_chance = GROW_CHANCE,
grow_plant = "poisonivy:seedling",
@ -91,7 +91,7 @@ biome_lib:grow_plants({
grow_nodes = {"default:dirt_with_grass"}
})
biome_lib:grow_plants({
biome_lib.update_plant({
grow_delay = GROW_DELAY,
grow_chance = GROW_CHANCE*2,
grow_plant = "poisonivy:climbing",

View File

@ -169,7 +169,7 @@ abstract_trunks.place_twig = function(pos)
end
if Twigs_on_ground == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:dirt_with_grass"},
max_count = Twigs_on_ground_Max_Count,
rarity = Twigs_on_ground_Rarity,
@ -186,7 +186,7 @@ biome_lib:register_generate_plant({
end
if Twigs_on_water == true then
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:water_source"},
max_count = Twigs_on_water_Max_Count,
rarity = Twigs_on_water_Rarity,
@ -348,7 +348,7 @@ abstract_trunks.place_trunk = function(pos)
end
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:dirt_with_grass"},
max_count = Trunks_Max_Count, -- 320,
rarity = Trunks_Rarity, -- 99,
@ -382,7 +382,7 @@ abstract_trunks.grow_moss_on_ground = function(pos)
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"default:dirt_with_grass"},
max_count = Moss_on_ground_Max_Count,
rarity = Moss_on_ground_Rarity,
@ -471,7 +471,7 @@ abstract_trunks.grow_moss_on_trunk = function(pos)
--end
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:tree",
"default:jungletree",
@ -548,7 +548,7 @@ abstract_trunks.grow_roots = function(pos)
end
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {"group:tree"},
max_count = 1000,
rarity = 1,

View File

@ -95,6 +95,7 @@ for r = 0, 3 do
sunlight_propagates = true,
walkable = false,
node_box = cbox,
buildable_to = true,
groups = {snappy = 3, flammable = 3, attached_node=1, not_in_creative_inventory = r},
sounds = default.node_sound_leaves_defaults(),
drop = "trunks:moss_plain_0",
@ -114,6 +115,7 @@ for r = 0, 3 do
sunlight_propagates = true,
walkable = false,
node_box = cbox,
buildable_to = true,
groups = {snappy = 3, flammable = 3, attached_node=1, not_in_creative_inventory = r},
sounds = default.node_sound_leaves_defaults(),
drop = "trunks:moss_with_fungus_0",
@ -410,9 +412,9 @@ local fdirtowall = {
}
minetest.register_lbm({
name = "trunks:convert_moss_wallmounted_2",
name = "trunks:convert_moss_wallmounted",
label = "Convert moss to wallmounted mode",
run_at_every_load = false,
run_at_every_load = true,
nodenames = {"trunks:moss", "trunks:moss_fungus"},
action = function(pos, node)
local basedir = math.floor(node.param2 / 4)

View File

@ -133,7 +133,7 @@ vines.register_vine = function( name, defs, biome )
end,
})
biome_lib:spawn_on_surfaces(biome)
biome_lib.register_active_spawner(biome)
end
-- ALIASES

View File

@ -73,7 +73,7 @@ abstract_woodsoils.place_soil = function(pos)
end
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"group:tree",
"ferns:fern_03",
@ -94,7 +94,7 @@ biome_lib:register_generate_plant({
"abstract_woodsoils.place_soil"
)
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"moretrees:apple_tree_sapling_ongen",
"moretrees:beech_sapling_ongen",

View File

@ -133,7 +133,7 @@ abstract_youngtrees.grow_youngtree_node = function(pos, height)
end
biome_lib:register_generate_plant({
biome_lib.register_on_generate({
surface = {
"default:dirt_with_grass",
"stoneage:grass_with_silex",