Cooperate with underworlds mod.
This commit is contained in:
parent
bdca26220d
commit
2186b24632
5 changed files with 161 additions and 97 deletions
|
@ -1,5 +1,8 @@
|
||||||
default
|
default
|
||||||
|
bucket?
|
||||||
dye
|
dye
|
||||||
flowers
|
flowers
|
||||||
vessels
|
|
||||||
mobs?
|
mobs?
|
||||||
|
underworlds?
|
||||||
|
vessels
|
||||||
|
wooden_bucket?
|
||||||
|
|
|
@ -127,6 +127,24 @@ minetest.register_craft({
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craftitem("fun_caves:wooden_bowl", {
|
||||||
|
description = "Wooden Bowl",
|
||||||
|
drawtype = "plantlike",
|
||||||
|
paramtype = "light",
|
||||||
|
tiles = {"fun_caves_wooden_bowl.png"},
|
||||||
|
inventory_image = "fun_caves_wooden_bowl.png",
|
||||||
|
groups = {bowl = 1, dig_immediate = 3},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = 'fun_caves:wooden_bowl 20',
|
||||||
|
recipe = {
|
||||||
|
{'group:wood', '', 'group:wood'},
|
||||||
|
{'group:wood', '', 'group:wood'},
|
||||||
|
{'', 'group:wood', ''},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craftitem("fun_caves:disgusting_gruel", {
|
minetest.register_craftitem("fun_caves:disgusting_gruel", {
|
||||||
description = "Disgusting Gruel",
|
description = "Disgusting Gruel",
|
||||||
drawtype = "plantlike",
|
drawtype = "plantlike",
|
||||||
|
@ -164,7 +182,7 @@ minetest.register_craft({
|
||||||
replacements = {
|
replacements = {
|
||||||
{'bucket:bucket_water', 'bucket:bucket_water'},
|
{'bucket:bucket_water', 'bucket:bucket_water'},
|
||||||
{'bucket:bucket_river_water', 'bucket:bucket_river_water'},
|
{'bucket:bucket_river_water', 'bucket:bucket_river_water'},
|
||||||
{'fun_caves:bucket_wood_water', 'fun_caves:bucket_wood_water'},
|
{'wooden_bucket:bucket_wood_water', 'wooden_bucket:bucket_wood_water'},
|
||||||
{'fun_caves:bucket_wood_river_water', 'fun_caves:bucket_wood_river_water'},
|
{'wooden_bucket:bucket_wood_river_water', 'wooden_bucket:bucket_wood_river_water'},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
20
mapgen.lua
20
mapgen.lua
|
@ -176,21 +176,21 @@ local function generate(p_minp, p_maxp, seed)
|
||||||
local csize = vector.add(vector.subtract(maxp, minp), 1)
|
local csize = vector.add(vector.subtract(maxp, minp), 1)
|
||||||
local write
|
local write
|
||||||
|
|
||||||
|
|
||||||
|
if underworlds_mod and underworlds_mod.underzones then
|
||||||
|
local avg = (minp.y + maxp.y) / 2
|
||||||
|
for _, uz in pairs(underworlds_mod.underzones) do
|
||||||
|
if avg <= uz.upper_bound and avg >= uz.lower_bound then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
if fun_caves_mod.use_bi_hi then
|
if fun_caves_mod.use_bi_hi then
|
||||||
heightmap = minetest.get_mapgen_object("heightmap")
|
heightmap = minetest.get_mapgen_object("heightmap")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
-- use the same seed (based on perlin noise).
|
|
||||||
--do
|
|
||||||
-- local seed = minetest.get_perlin(seed_noise):get2d({x=minp.x, y=minp.z})
|
|
||||||
-- if not (seed and type(seed) == 'number') then
|
|
||||||
-- return
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- math.randomseed(seed)
|
|
||||||
--end
|
|
||||||
|
|
||||||
-- Correct heightmap.
|
-- Correct heightmap.
|
||||||
if maxp.y < -300 or minp.y > 300 then
|
if maxp.y < -300 or minp.y > 300 then
|
||||||
for i = 1, #heightmap do
|
for i = 1, #heightmap do
|
||||||
|
|
43
nodes.lua
43
nodes.lua
|
@ -5,13 +5,20 @@
|
||||||
|
|
||||||
local light_max = fun_caves_mod.light_max or 10
|
local light_max = fun_caves_mod.light_max or 10
|
||||||
|
|
||||||
|
if minetest.registered_items['underworlds:black_sand'] then
|
||||||
|
minetest.register_alias("fun_caves:black_sand", 'underworlds:black_sand')
|
||||||
|
else
|
||||||
-- black (oily) sand
|
-- black (oily) sand
|
||||||
local newnode = fun_caves_mod.clone_node("default:sand")
|
local newnode = fun_caves_mod.clone_node("default:sand")
|
||||||
newnode.description = "Black Sand"
|
newnode.description = "Black Sand"
|
||||||
newnode.tiles = {"fun_caves_black_sand.png"}
|
newnode.tiles = {"fun_caves_black_sand.png"}
|
||||||
newnode.groups['falling_node'] = 0
|
newnode.groups['falling_node'] = 0
|
||||||
minetest.register_node("fun_caves:black_sand", newnode)
|
minetest.register_node("fun_caves:black_sand", newnode)
|
||||||
|
end
|
||||||
|
|
||||||
|
if minetest.registered_items['underworlds:hot_cobble'] then
|
||||||
|
minetest.register_alias("fun_caves:hot_cobble", 'underworlds:hot_cobble')
|
||||||
|
else
|
||||||
-- cobble, hot - cobble with lava instead of mortar XD
|
-- cobble, hot - cobble with lava instead of mortar XD
|
||||||
minetest.register_node("fun_caves:hot_cobble", {
|
minetest.register_node("fun_caves:hot_cobble", {
|
||||||
description = "Hot Cobble",
|
description = "Hot Cobble",
|
||||||
|
@ -24,7 +31,12 @@ minetest.register_node("fun_caves:hot_cobble", {
|
||||||
footstep = {name="default_stone_footstep", gain=0.25},
|
footstep = {name="default_stone_footstep", gain=0.25},
|
||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
if minetest.registered_items['underworlds:glowing_fungal_stone'] then
|
||||||
|
minetest.register_alias("fun_caves:glowing_fungal_stone", 'underworlds:glowing_fungal_stone')
|
||||||
|
minetest.register_alias("fun_caves:glowing_fungus", 'underworlds:glowing_fungus')
|
||||||
|
else
|
||||||
-- Glowing fungal stone provides an eerie light.
|
-- Glowing fungal stone provides an eerie light.
|
||||||
minetest.register_node("fun_caves:glowing_fungal_stone", {
|
minetest.register_node("fun_caves:glowing_fungal_stone", {
|
||||||
description = "Glowing Fungal Stone",
|
description = "Glowing Fungal Stone",
|
||||||
|
@ -45,6 +57,7 @@ minetest.register_craftitem("fun_caves:glowing_fungus", {
|
||||||
inventory_image = "vmg_glowing_fungus.png",
|
inventory_image = "vmg_glowing_fungus.png",
|
||||||
groups = {dig_immediate = 3},
|
groups = {dig_immediate = 3},
|
||||||
})
|
})
|
||||||
|
end
|
||||||
|
|
||||||
-- moon glass (glows)
|
-- moon glass (glows)
|
||||||
if not minetest.registered_items['elixirs:moon_glass'] then
|
if not minetest.registered_items['elixirs:moon_glass'] then
|
||||||
|
@ -167,6 +180,25 @@ newnode.tiles = {"fun_caves_radioactive_ore.png"}
|
||||||
newnode.light_source = 4
|
newnode.light_source = 4
|
||||||
minetest.register_node("fun_caves:radioactive_ore", newnode)
|
minetest.register_node("fun_caves:radioactive_ore", newnode)
|
||||||
|
|
||||||
|
if minetest.registered_items['underworlds:thin_ice'] then
|
||||||
|
minetest.register_alias("fun_caves:thin_ice", 'underworlds:thin_ice')
|
||||||
|
else
|
||||||
|
-- ice, thin -- transparent
|
||||||
|
minetest.register_node("fun_caves:thin_ice", {
|
||||||
|
description = "Thin Ice",
|
||||||
|
tiles = {"caverealms_thin_ice.png"},
|
||||||
|
is_ground_content = true,
|
||||||
|
groups = {cracky=3},
|
||||||
|
sounds = default.node_sound_glass_defaults(),
|
||||||
|
use_texture_alpha = true,
|
||||||
|
light_source = 1,
|
||||||
|
drawtype = "glasslike",
|
||||||
|
sunlight_propagates = true,
|
||||||
|
freezemelt = "default:water_source",
|
||||||
|
paramtype = "light",
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
-- What's a cave without speleothems?
|
-- What's a cave without speleothems?
|
||||||
local spel = {
|
local spel = {
|
||||||
{type1="stalactite", type2="stalagmite", tile="default_stone.png"},
|
{type1="stalactite", type2="stalagmite", tile="default_stone.png"},
|
||||||
|
@ -175,6 +207,12 @@ local spel = {
|
||||||
{type1="icicle_down", type2="icicle_up", desc="Icicle", tile="caverealms_thin_ice.png", drop="default:ice"},
|
{type1="icicle_down", type2="icicle_up", desc="Icicle", tile="caverealms_thin_ice.png", drop="default:ice"},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if minetest.registered_items['underworlds:stalactite'] then
|
||||||
|
for _, desc in pairs(spel) do
|
||||||
|
minetest.register_alias("fun_caves:"..desc.type1, 'underworlds:'..desc.type1)
|
||||||
|
minetest.register_alias("fun_caves:"..desc.type2, 'underworlds:'..desc.type2)
|
||||||
|
end
|
||||||
|
else
|
||||||
for _, desc in pairs(spel) do
|
for _, desc in pairs(spel) do
|
||||||
minetest.register_node("fun_caves:"..desc.type1, {
|
minetest.register_node("fun_caves:"..desc.type1, {
|
||||||
description = (desc.desc or "Stalactite"),
|
description = (desc.desc or "Stalactite"),
|
||||||
|
@ -212,6 +250,7 @@ for _, desc in pairs(spel) do
|
||||||
sounds = default.node_sound_stone_defaults(),
|
sounds = default.node_sound_stone_defaults(),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
-- spikes, hot -- silicon-based life
|
-- spikes, hot -- silicon-based life
|
||||||
local spike_size = { 1.0, 1.2, 1.4, 1.6, 1.7 }
|
local spike_size = { 1.0, 1.2, 1.4, 1.6, 1.7 }
|
||||||
|
@ -265,6 +304,9 @@ newnode.sounds = default.node_sound_dirt_defaults({
|
||||||
})
|
})
|
||||||
minetest.register_node("fun_caves:stone_with_algae", newnode)
|
minetest.register_node("fun_caves:stone_with_algae", newnode)
|
||||||
|
|
||||||
|
if minetest.registered_items['underworlds:hot_stone'] then
|
||||||
|
minetest.register_alias("fun_caves:hot_stone", 'underworlds:hot_stone')
|
||||||
|
else
|
||||||
-- stone, hot
|
-- stone, hot
|
||||||
minetest.register_node("fun_caves:hot_stone", {
|
minetest.register_node("fun_caves:hot_stone", {
|
||||||
description = "Hot Stone",
|
description = "Hot Stone",
|
||||||
|
@ -277,6 +319,7 @@ minetest.register_node("fun_caves:hot_stone", {
|
||||||
footstep = {name="default_stone_footstep", gain=0.25},
|
footstep = {name="default_stone_footstep", gain=0.25},
|
||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
|
end
|
||||||
|
|
||||||
-- stone with lichen
|
-- stone with lichen
|
||||||
newnode = fun_caves_mod.clone_node("default:stone")
|
newnode = fun_caves_mod.clone_node("default:stone")
|
||||||
|
|
BIN
textures/fun_caves_wooden_bowl.png
Normal file
BIN
textures/fun_caves_wooden_bowl.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.9 KiB |
Loading…
Add table
Add a link
Reference in a new issue