mirror of
https://github.com/FaceDeer/dfcaverns.git
synced 2024-11-19 17:00:26 +01:00
12919e9a16
* cave pearls and spindleshrooms (name subject to change) now are things. Not in mapgen yet. * add the wandering "gas wisp" to light up some of the gas-filled caverns * make wisps rarely spawned by gas explosions * revamp spindlestems into a sort of mineral detector, add glowing extract bottles * optimize pngs * add gas wisps to mapgen * add spindlestems to cavern level 1, most level 1 warrens are now lit up * update internal names, adjust mineral detection range * add cave pearls to some level 2 warrens and tunnels * switch experimental simplecrafting_lib support to crafting mod * Pearls don't grow on falling nodes * put spindlestems with goblin caps, make them always grow red when near those * bunch of documentation * add castle coral to replace cave coral, which has been repurposed into column decoration * documentation for cave coral, update some locale text * add a recipe for cooking oil into paraffin * add old bones to the underworld * MIT license for bones_loot * also cook black cap gills into paraffin, they're oily * add salt crystals to the bloodthorn caverns, illuminating the floor * documentation for salt crystals * auto-generate minetestmapper colors. need to update the spindlestem colours manually * add spindlestem to fungiwood caverns too, and increase warren coverage * in anticipation of eventually adding stuff below the Slade, making glowing pit erosion self-limiting. * add a bit of displacement to the underside of the slade layer * Unique images and names for cooking recipes. * revamp bones loot * add softer footsteps for some fungus types * update mapgen_helper * update cave coral screenshot * mention glowing salts in bloodthorn caverns
75 lines
2.0 KiB
Lua
75 lines
2.0 KiB
Lua
df_trees = {}
|
|
|
|
df_trees.node_sound_tree_soft_fungus_defaults = function(table)
|
|
table = table or {}
|
|
table.footstep = table.footstep or
|
|
{name = "dfcaverns_fungus_footstep", gain = 0.3}
|
|
default.node_sound_wood_defaults(table)
|
|
return table
|
|
end
|
|
|
|
--grab a shorthand for the filepath of the mod
|
|
local modpath = minetest.get_modpath(minetest.get_current_modname())
|
|
|
|
--load companion lua files
|
|
dofile(modpath.."/config.lua")
|
|
dofile(modpath.."/doc.lua")
|
|
dofile(modpath.."/aliases.lua")
|
|
|
|
local S, NS = dofile(modpath.."/intllib.lua")
|
|
|
|
df_trees.register_all_stairs = function(name, override_def)
|
|
local mod = "df_trees"
|
|
|
|
local node_def = minetest.registered_nodes[mod..":"..name]
|
|
override_def = override_def or {}
|
|
|
|
-- Note that a circular table reference will result in a crash, TODO: guard against that.
|
|
-- Unlikely to be needed, though - it'd take a lot of work for users to get into this bit of trouble.
|
|
local function deep_copy(table_in)
|
|
local table_out = {}
|
|
|
|
for index, value in pairs(table_in) do
|
|
if type(value) == "table" then
|
|
table_out[index] = deep_copy(value)
|
|
else
|
|
table_out[index] = value
|
|
end
|
|
end
|
|
return table_out
|
|
end
|
|
|
|
local node_copy = deep_copy(node_def)
|
|
for index, value in pairs(override_def) do
|
|
node_copy[index] = value
|
|
end
|
|
|
|
if minetest.get_modpath("stairs") then
|
|
stairs.register_stair_and_slab(
|
|
name,
|
|
mod ..":" .. name,
|
|
node_copy.groups,
|
|
node_copy.tiles,
|
|
S("@1 Stair", node_copy.description),
|
|
S("@1 Slab", node_copy.description),
|
|
node_copy.sounds
|
|
)
|
|
end
|
|
if minetest.get_modpath("moreblocks") then
|
|
stairsplus:register_all(mod, name, mod..":"..name, node_copy)
|
|
end
|
|
end
|
|
|
|
dofile(modpath.."/blood_thorn.lua")
|
|
dofile(modpath.."/fungiwood.lua")
|
|
dofile(modpath.."/tunnel_tube.lua")
|
|
dofile(modpath.."/spore_tree.lua")
|
|
dofile(modpath.."/black_cap.lua")
|
|
dofile(modpath.."/nether_cap.lua")
|
|
dofile(modpath.."/goblin_cap.lua")
|
|
dofile(modpath.."/tower_cap.lua")
|
|
|
|
dofile(modpath.."/torchspine.lua")
|
|
dofile(modpath.."/spindlestem.lua")
|
|
|