Compare commits

..

No commits in common. "eb627ae7640f90ece5fab758bb32f430a59fa248" and "5693184c7b719dc986a8773fc70fb092b2b0cf9e" have entirely different histories.

29 changed files with 147 additions and 101 deletions

View File

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

View File

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

View File

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

View File

@ -335,14 +335,6 @@ sed -i "/formspec = formspec/ {
a \\\t\tdreambuilder_theme.make_inv_img_grid_v1(1, 2.95, 2, 1, false).. a \\\t\tdreambuilder_theme.make_inv_img_grid_v1(1, 2.95, 2, 1, false)..
}" $workdir"/mods/technic/machines/register/machine_base.lua" }" $workdir"/mods/technic/machines/register/machine_base.lua"
# this bit makes electric alloy furnaces look right
sed -i "/if data\.upgrade then/ {
i \\\tif data.typename == \"alloy\" then
i \\\t\tformspec = formspec .. dreambuilder_theme.single_slot_v1(2, 0.95, false)
i \\\tend
}" $workdir"/mods/technic/machines/register/machine_base.lua"
sed -i "/size\[8,9;\]/ { sed -i "/size\[8,9;\]/ {
a \\\t\t$LISTCOLORS_HIDE_SLOTS a \\\t\t$LISTCOLORS_HIDE_SLOTS
a \\\t\tdreambuilder_theme.make_inv_img_grid_v1(0, 4.97, 8, 1, true).. a \\\t\tdreambuilder_theme.make_inv_img_grid_v1(0, 4.97, 8, 1, true)..
@ -350,7 +342,7 @@ sed -i "/size\[8,9;\]/ {
a \\\t\tdreambuilder_theme.single_slot_v1(3, 0.95, false).. a \\\t\tdreambuilder_theme.single_slot_v1(3, 0.95, false)..
}" $workdir"/mods/technic/machines/register/generator.lua" }" $workdir"/mods/technic/machines/register/generator.lua"
# this coal alloy furnace change will match in two places, on purpose. # this alloy furnace change will match in two places, on purpose.
sed -i "/size\[8,9\]/ { sed -i "/size\[8,9\]/ {
a \\\t\t$LISTCOLORS_HIDE_SLOTS a \\\t\t$LISTCOLORS_HIDE_SLOTS
a \\\t\tdreambuilder_theme.make_inv_img_grid_v1(2, 0.95, 2, 1, false).. a \\\t\tdreambuilder_theme.make_inv_img_grid_v1(2, 0.95, 2, 1, false)..

View File

@ -92,7 +92,7 @@ minetest.register_node("dryplants:juncus_02", {
-- GENERATE SMALL JUNCUS -- GENERATE SMALL JUNCUS
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- near water or swamp -- near water or swamp
biome_lib.register_on_generate({ biome_lib:register_generate_plant({
surface = { surface = {
"default:dirt_with_grass", "default:dirt_with_grass",
--"default:desert_sand", --"default:desert_sand",
@ -113,7 +113,7 @@ biome_lib.register_on_generate({
abstract_dryplants.grow_juncus abstract_dryplants.grow_juncus
) )
-- at dunes/beach -- at dunes/beach
biome_lib.register_on_generate({ biome_lib:register_generate_plant({
surface = { surface = {
--"default:dirt_with_grass", --"default:dirt_with_grass",
--"default:desert_sand", --"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"}) minetest.swap_node(right_here, {name="dryplants:grass_short"})
end end
biome_lib.register_on_generate({ biome_lib:register_generate_plant({
surface = { surface = {
"default:dirt_with_grass", "default:dirt_with_grass",
}, },

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -950,7 +950,7 @@ local use_glow = function(pos, node, puncher, pointed_thing)
end end
local glow_drops = function(pos, oldnode, oldmetadata, digger) local glow_drops = function(pos, oldnode, oldmetadata, digger)
if digger and minetest.is_creative_enabled(digger:get_player_name()) then if minetest.is_creative_enabled(digger:get_player_name()) then
return return
end end
local glow = oldmetadata and oldmetadata.fields and oldmetadata.fields.glow local glow = oldmetadata and oldmetadata.fields and oldmetadata.fields.glow

View File

@ -1,32 +1,95 @@
for k,v in pairs({1, 2}) do local schems = {
-- why +6? because table entries 1-6 are set in modern.lua :-) single = minetest.register_schematic(string.format("schems%sstreetlight-single.mts",DIR_DELIM)),
streetlights.schematics[k+6] = double = minetest.register_schematic(string.format("schems%sstreetlight-double.mts",DIR_DELIM)),
minetest.register_schematic(string.format("schems%sstreetlight_minedot_"..v..".mts",DIR_DELIM)) }
local s = (v == 1) and "" or "s" local singleMaterials = {
ItemStack("streets:bigpole 6"),
ItemStack("streets:bigpole_edge 2"),
ItemStack("homedecor:glowlight_quarter 1"),
}
minetest.register_tool("simple_streetlights:spawner_minedot_"..v, { local doubleMaterials = {
description = "Streetlight spawner (MineDOT-stylw, with "..v.." lamp"..s..")", ItemStack("streets:bigpole 7"),
inventory_image = "simple_streetlights_inv_minedot_"..v..".png", ItemStack("streets:bigpole_edge 2"),
use_texture_alpha = true, ItemStack("streets:bigpole_tjunction 1"),
tool_capabilities = { full_punch_interval=0.1 }, ItemStack("homedecor:glowlight_quarter 2"),
on_place = function(itemstack, placer, pointed_thing) }
streetlights.check_and_place(itemstack, placer, pointed_thing, {
schematic = streetlights.schematics[k+6], local offsets = {
materials = { single = {
"streets:bigpole "..(v+5), [0] = {x = 0,y = 0,z = 0},
"streets:bigpole_edge 2", [90] = {x = 0,y = 0,z = 0},
"homedecor:glowlight_quarter "..v, [180] = {x = 0,y = 0,z = -2},
(v == 2) and "streets:bigpole_tjunction 1" [270] = {x = -2,y = 0,z = 0},
}, },
protection_box = { double = {
omin = {x = (-2*v + 2), y = 0, z = 0}, [0] = {x = 0,y = 0,z = -2},
omax = {x = 2, y = 5, z = 0}, [90] = {x = -2,y = 0,z = 0},
} [180] = {x = 0,y = 0,z = -2},
}) [270] = {x = -2,y = 0,z = 0},
},
}
local function takeMaterials(player, sneak, materials)
local name = player:get_player_name()
if creative and creative.is_enabled_for(name) then return true end
local inv = minetest.get_inventory({type = "player",name = name})
local hasMaterials = true
for _,i in ipairs(materials) do
if not inv:contains_item("main",i) then hasMaterials = false end
end
if sneak and streetlights.basic_materials and not inv:contains_item("main", streetlights.concrete) then
hasMaterials = false
end
if hasMaterials then
for _,i in ipairs(materials) do inv:remove_item("main",i) end
if sneak then
inv:remove_item("main", streetlights.concrete)
end end
}) return true
else
minetest.chat_send_player(name,"You don't have the necessary materials to do that!")
return false
end
end end
minetest.register_alias("minedot_streetlights:spawner_single", "simple_streetlights:spawner_minedot_1") local function place(itemstack,player,pointed)
minetest.register_alias("minedot_streetlights:spawner_double", "simple_streetlights:spawner_minedot_2") if not player then return end
local sneak = player:get_player_control().sneak
local name = player:get_player_name()
if not minetest.check_player_privs(name,{streetlight = true}) then
minetest.chat_send_player(name,"*** You don't have permission to use a streetlight spawner.")
return
end
local pos = pointed.above
if minetest.is_protected(pos,name) and not minetest.check_player_privs(name,{protection_bypass = true}) then
minetest.record_protection_violation(pos,name)
return
end
local isDouble = string.sub(itemstack:get_name(),-6,-1) == "double"
if not takeMaterials(player, sneak, isDouble and doubleMaterials or singleMaterials) then return end
local facedir = minetest.facedir_to_dir(minetest.dir_to_facedir(player:get_look_dir()))
local schemDir = 0
if facedir.x == 1 then schemDir = 180
elseif facedir.z == 1 then schemDir = 90
elseif facedir.z == -1 then schemDir = 270 end
local offset = offsets[isDouble and "double" or "single"][schemDir]
if sneak and streetlights.basic_materials then
minetest.set_node({x=pos.x, y=pos.y-1, z=pos.z}, {name = streetlights.concrete})
end
local pos = vector.add(pos,offset)
minetest.place_schematic(pos,isDouble and schems.double or schems.single,schemDir,nil,false)
end
minetest.register_tool(":minedot_streetlights:spawner_single",{
description = "MineDOT-style Street Light Spawner (single-sided)",
inventory_image = "minedot_streetlights_single.png",
on_place = place,
})
minetest.register_tool(":minedot_streetlights:spawner_double",{
description = "MineDOT-style Street Light Spawner (double-sided)",
inventory_image = "minedot_streetlights_double.png",
on_place = place,
})

Binary file not shown.

Binary file not shown.

View File

@ -64,9 +64,6 @@ function technic.register_base_machine(data)
"listring[current_player;main]".. "listring[current_player;main]"..
"listring[current_name;src]".. "listring[current_name;src]"..
"listring[current_player;main]" "listring[current_player;main]"
if data.typename == "alloy" then
formspec = formspec .. dreambuilder_theme.single_slot_v1(2, 0.95, false)
end
if data.upgrade then if data.upgrade then
formspec = formspec.. formspec = formspec..
dreambuilder_theme.make_inv_img_grid_v1(1, 2.95, 2, 1, false).. dreambuilder_theme.make_inv_img_grid_v1(1, 2.95, 2, 1, false)..
@ -104,9 +101,6 @@ function technic.register_base_machine(data)
end end
local EU_upgrade, tube_upgrade = 0, 0 local EU_upgrade, tube_upgrade = 0, 0
if data.typename == "alloy" then
formspec = formspec .. dreambuilder_theme.single_slot_v1(2, 0.95, false)
end
if data.upgrade then if data.upgrade then
EU_upgrade, tube_upgrade = technic.handle_machine_upgrades(meta) EU_upgrade, tube_upgrade = technic.handle_machine_upgrades(meta)
end end

View File

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

View File

@ -95,7 +95,6 @@ for r = 0, 3 do
sunlight_propagates = true, sunlight_propagates = true,
walkable = false, walkable = false,
node_box = cbox, node_box = cbox,
buildable_to = true,
groups = {snappy = 3, flammable = 3, attached_node=1, not_in_creative_inventory = r}, groups = {snappy = 3, flammable = 3, attached_node=1, not_in_creative_inventory = r},
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
drop = "trunks:moss_plain_0", drop = "trunks:moss_plain_0",
@ -115,7 +114,6 @@ for r = 0, 3 do
sunlight_propagates = true, sunlight_propagates = true,
walkable = false, walkable = false,
node_box = cbox, node_box = cbox,
buildable_to = true,
groups = {snappy = 3, flammable = 3, attached_node=1, not_in_creative_inventory = r}, groups = {snappy = 3, flammable = 3, attached_node=1, not_in_creative_inventory = r},
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
drop = "trunks:moss_with_fungus_0", drop = "trunks:moss_with_fungus_0",

View File

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

View File

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

View File

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