mirror of
https://github.com/FaceDeer/dfcaverns.git
synced 2025-07-16 23:40:25 +02:00
Small stuff (#8)
* 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
This commit is contained in:
@ -20,6 +20,9 @@ local c_dry_flowstone = minetest.get_content_id("df_mapitems:dry_flowstone")
|
||||
|
||||
local c_glow_ore = minetest.get_content_id("df_mapitems:glow_ruby_ore")
|
||||
|
||||
local c_salty_cobble = minetest.get_content_id("df_mapitems:salty_cobble")
|
||||
local c_salt_crystal = minetest.get_content_id("df_mapitems:salt_crystal")
|
||||
|
||||
local c_sprite
|
||||
if minetest.get_modpath("ice_sprites") then
|
||||
c_sprite = minetest.get_content_id("ice_sprites:ice_sprite")
|
||||
@ -157,20 +160,28 @@ local nether_cap_cavern_ceiling = function(abs_cracks, vert_rand, vi, area, data
|
||||
end
|
||||
|
||||
local blood_thorn_cavern_floor = function(abs_cracks, vert_rand, vi, area, data, data_param2)
|
||||
local ai = vi+area.ystride
|
||||
|
||||
if abs_cracks < 0.075 then
|
||||
if vert_rand < 0.004 then
|
||||
subterrane.big_stalagmite(vi+area.ystride, area, data, 6, 15, c_dry_flowstone, c_dry_flowstone, c_dry_flowstone)
|
||||
subterrane.big_stalagmite(ai, area, data, 6, 15, c_dry_flowstone, c_dry_flowstone, c_dry_flowstone)
|
||||
elseif data[vi] ~= air and math.random() < 0.5 then
|
||||
data[vi] = c_salty_cobble
|
||||
if data[ai] == c_air and math.random() < 0.25 then
|
||||
data[ai] = c_salt_crystal
|
||||
data_param2[ai] = math.random(1,4)-1
|
||||
end
|
||||
else
|
||||
local param2 = abs_cracks*1000000 - math.floor(abs_cracks*1000000/4)*4
|
||||
local height = math.floor(abs_cracks * 66)
|
||||
subterrane.stalagmite(vi+area.ystride, area, data, data_param2, param2, height, df_mapitems.dry_stalagmite_ids)
|
||||
subterrane.stalagmite(ai, area, data, data_param2, param2, height, df_mapitems.dry_stalagmite_ids)
|
||||
end
|
||||
elseif math.random() > abs_cracks + 0.66 then
|
||||
df_trees.spawn_blood_thorn_vm(vi+area.ystride, area, data, data_param2)
|
||||
df_trees.spawn_blood_thorn_vm(ai, area, data, data_param2)
|
||||
data[vi] = c_desert_sand
|
||||
else
|
||||
if math.random() < 0.1 then
|
||||
df_caverns.place_shrub(vi+area.ystride, area, data, data_param2, blood_thorn_shrublist)
|
||||
df_caverns.place_shrub(ai, area, data, data_param2, blood_thorn_shrublist)
|
||||
data[vi] = c_desert_sand
|
||||
elseif math.random() > 0.25 then
|
||||
data[vi] = c_desert_sand
|
||||
@ -310,7 +321,16 @@ local decorate_level_3 = function(minp, maxp, seed, vm, node_arrays, area, data)
|
||||
else
|
||||
-- bloodthorn ceiling
|
||||
if abs_cracks < 0.075 then
|
||||
df_caverns.stalactites(abs_cracks, vert_rand, vi, area, data, data_param2, false)
|
||||
if data[vi] ~= air and math.random() < 0.5 then
|
||||
data[vi] = c_salty_cobble
|
||||
local bi = vi - area.ystride
|
||||
if data[bi] == c_air and math.random() < 0.25 then
|
||||
data[bi] = c_salt_crystal
|
||||
data_param2[bi] = 19 + math.random(1,4)
|
||||
end
|
||||
else
|
||||
df_caverns.stalactites(abs_cracks, vert_rand, vi, area, data, data_param2, false)
|
||||
end
|
||||
elseif abs_cracks > 0.75 and math.random() < 0.05 then
|
||||
data[vi] = c_glow_ore
|
||||
df_mapitems.place_big_crystal(data, data_param2, vi-area.ystride, true)
|
||||
|
Reference in New Issue
Block a user