start getting some MCL equivalents set up

This commit is contained in:
FaceDeer 2022-08-02 04:09:18 -06:00
parent 8f713d6fa4
commit c5fd4917b4
5 changed files with 131 additions and 104 deletions

View File

@ -115,7 +115,7 @@ end)
minetest.register_ore({ minetest.register_ore({
ore_type = "scatter", ore_type = "scatter",
ore = "mine_gas:gas_seep", ore = "mine_gas:gas_seep",
wherein = "default:stone", wherein = df_caverns.node_name.stone,
clust_scarcity = 32 * 32 * 32, clust_scarcity = 32 * 32 * 32,
clust_num_ores = 27, clust_num_ores = 27,
clust_size = 6, clust_size = 6,

View File

@ -1,5 +1,33 @@
local S = minetest.get_translator(minetest.get_current_modname()) local S = minetest.get_translator(minetest.get_current_modname())
local mods_required = {}
local select_required = function(def)
local count = 0
local total = 0
local ret
for mod, item in pairs(def) do
total = total + 1
mods_required[mod] = true
if minetest.get_modpath(mod) then
count = count + 1
ret = item
end
end
assert(count ~= 0, "Unable to find item for dependency set " .. dump(def))
assert(count == 1, "Found more than one item for dependency set " .. dump(def))
--assert(total == 2, "number of options other than two for " .. dump(def))
return ret
end
local select_optional = function(def)
for mod, item in pairs(def) do
if minetest.get_modpath(mod) then
return item
end
end
end
--- From "default" --- From "default"
if minetest.get_modpath("default") then if minetest.get_modpath("default") then
df_dependencies.sound_dirt = default.node_sound_dirt_defaults df_dependencies.sound_dirt = default.node_sound_dirt_defaults
@ -10,54 +38,70 @@ if minetest.get_modpath("default") then
df_dependencies.sound_stone = default.node_sound_stone_defaults df_dependencies.sound_stone = default.node_sound_stone_defaults
df_dependencies.sound_water = default.node_sound_water_defaults df_dependencies.sound_water = default.node_sound_water_defaults
df_dependencies.sound_wood = default.node_sound_wood_defaults df_dependencies.sound_wood = default.node_sound_wood_defaults
elseif minetest.get_modpath("mcl_sounds") then
df_dependencies.sound_dirt = mcl_sounds.node_sound_dirt_defaults
df_dependencies.sound_glass = mcl_sounds.node_sound_glass_defaults
df_dependencies.sound_gravel = function(table)
table = table or {}
table.footstep = table.footstep or {name="default_gravel_footstep", gain=0.45}
return mcl_sounds.node_sound_dirt_defaults(table)
end
df_dependencies.sound_leaves = mcl_sounds.node_sound_leaves_defaults
df_dependencies.sound_sand = mcl_sounds.node_sound_sand_defaults
df_dependencies.sound_stone = mcl_sounds.node_sound_stone_defaults
df_dependencies.sound_water = mcl_sounds.node_sound_water_defaults
df_dependencies.sound_wood = mcl_sounds.node_sound_wood_defaults
else
assert(false, "One of [default] or [mcl_sounds] must be active")
end
df_dependencies.soundfile_grass_footstep = "default_grass_footstep" df_dependencies.soundfile_grass_footstep = select_required({default="default_grass_footstep", mcl_sounds="default_grass_footstep"})
df_dependencies.soundfile_snow_footstep = "default_snow_footstep" df_dependencies.soundfile_snow_footstep = select_required({default="default_snow_footstep", mcl_sounds="pedology_snow_soft_footstep"})
df_dependencies.soundfile_gravel_footstep = "default_gravel_footstep" df_dependencies.soundfile_gravel_footstep = select_required({default="default_gravel_footstep", mcl_sounds="default_gravel_footstep"})
df_dependencies.node_name_apple = "default:apple" df_dependencies.node_name_apple = select_required({default="default:apple", mcl_core="mcl_core:apple"})
df_dependencies.node_name_chest = "default:chest" df_dependencies.node_name_chest = select_required({default="default:chest", mcl_chests="mcl_chests:chest"})
df_dependencies.node_name_coalblock = "default:coalblock" df_dependencies.node_name_coalblock = select_required({default="default:coalblock", mcl_core="mcl_core:coalblock"})
df_dependencies.node_name_cobble = "default:cobble" df_dependencies.node_name_cobble = select_required({default="default:cobble", mcl_core="mcl_core:cobble"})
df_dependencies.node_name_coral_skeleton = "default:coral_skeleton" df_dependencies.node_name_coral_skeleton = select_required({default="default:coral_skeleton", mcl_ocean="mcl_ocean:dead_horn_coral_block"})
df_dependencies.node_name_desert_sand = "default:desert_sand" df_dependencies.node_name_desert_sand = select_required({default="default:desert_sand", mcl_core="mcl_core:redsand"})
df_dependencies.node_name_dirt = "default:dirt" df_dependencies.node_name_dirt = select_required({default="default:dirt", mcl_core="mcl_core:dirt"})
df_dependencies.node_name_dry_grass_3 = "default:dry_grass_3" df_dependencies.node_name_dry_grass_3 = select_required({default="default:dry_grass_3", mcl_core="mcl_core:deadbush"}) -- There doesn't seem to be an MCL equivalent of this
df_dependencies.node_name_dry_grass_4 = "default:dry_grass_4" df_dependencies.node_name_dry_grass_4 = select_required({default="default:dry_grass_4", mcl_core="mcl_core:deadbush"}) -- There doesn't seem to be an MCL equivalent of this
df_dependencies.node_name_dry_shrub = "default:dry_shrub" df_dependencies.node_name_dry_shrub = select_required({default="default:dry_shrub", mcl_core="mcl_core:deadbush"})
df_dependencies.node_name_furnace = "default:furnace" df_dependencies.node_name_furnace = select_required({default="default:furnace", mcl_furnaces="mcl_furnaces:furnace"})
df_dependencies.node_name_gold_ingot = "default:gold_ingot" df_dependencies.node_name_gold_ingot = select_required({default="default:gold_ingot", mcl_core="mcl_core:gold_ingot"})
df_dependencies.node_name_gravel = "default:gravel" df_dependencies.node_name_gravel = select_required({default="default:gravel", mcl_core="mcl_core:gravel"})
df_dependencies.node_name_ice = "default:ice" df_dependencies.node_name_ice = select_required({default="default:ice", mcl_core="mcl_core:ice"})
df_dependencies.node_name_junglewood = "default:junglewood" df_dependencies.node_name_junglewood = select_required({default="default:junglewood", mcl_core="mcl_core:junglewood"})
df_dependencies.node_name_lava_source = "default:lava_source" df_dependencies.node_name_lava_source = select_required({default="default:lava_source", mcl_core="mcl_core:lava_source"})
df_dependencies.node_name_mese_crystal = "default:mese_crystal" df_dependencies.node_name_mese_crystal = select_required({default="default:mese_crystal", mesecons="mesecons:redstone"}) -- TODO make sure this is properly balanced. Also, mesecons mod conflict with non-mcl mesecons?
df_dependencies.node_name_meselamp = "default:meselamp" df_dependencies.node_name_meselamp = select_required({default="default:meselamp", })
df_dependencies.node_name_mossycobble = "default:mossycobble" df_dependencies.node_name_mossycobble = select_required({default="default:mossycobble", mcl_core="mcl_core:mossycobble"})
df_dependencies.node_name_obsidian = "default:obsidian" df_dependencies.node_name_obsidian = select_required({default="default:obsidian", mcl_core="mcl_core:obsidian"})
df_dependencies.node_name_paper = "default:paper" df_dependencies.node_name_paper = select_required({default="default:paper", mcl_core="mcl_core:paper"})
df_dependencies.node_name_river_water_flowing = "default:river_water_flowing" df_dependencies.node_name_river_water_flowing = select_required({default="default:river_water_flowing", mclx_core="mclx_core:river_water_flowing"})
df_dependencies.node_name_river_water_source = "default:river_water_source" df_dependencies.node_name_river_water_source = select_required({default="default:river_water_source", mclx_core="mclx_core:river_water_source"})
df_dependencies.node_name_sand = "default:sand" df_dependencies.node_name_sand = select_required({default="default:sand", mcl_core="mcl_core:sand"})
df_dependencies.node_name_sand = "default:sand" df_dependencies.node_name_silver_sand = select_required({default="default:silver_sand", mcl_core="mcl_core:sand"}) -- There doesn't seem to be an MCL equivalent of this
df_dependencies.node_name_silver_sand = "default:silver_sand" df_dependencies.node_name_snow = select_required({default="default:snow", mcl_core="mcl_core:snow"})
df_dependencies.node_name_snow = "default:snow" df_dependencies.node_name_stone = select_required({default="default:stone", mcl_core="mcl_core:stone"})
df_dependencies.node_name_stone = "default:stone" df_dependencies.node_name_stone_with_coal = select_required({default="default:stone_with_coal", mcl_core="mcl_core:stone_with_coal"})
df_dependencies.node_name_stone_with_coal = "default:stone_with_coal" df_dependencies.node_name_stone_with_mese = select_required({default="default:stone_with_mese", })
df_dependencies.node_name_stone_with_mese = "default:stone_with_mese" df_dependencies.node_name_torch = select_required({default="default:torch", mcl_torches="mcl_torches:torch"})
df_dependencies.node_name_torch = "default:torch" df_dependencies.node_name_torch_wall = select_required({default="default:torch_wall", mcl_torches="mcl_torches:torch_wall"})
df_dependencies.node_name_torch_wall = "default:torch_wall" df_dependencies.node_name_water_flowing = select_required({default="default:water_flowing", mcl_core="mcl_core:water_flowing"})
df_dependencies.node_name_water_flowing = "default:water_flowing" df_dependencies.node_name_water_source = select_required({default="default:water_source", mcl_core="mcl_core:water_source"})
df_dependencies.node_name_water_source = "default:water_source"
df_dependencies.texture_cobble = "default_cobble.png" df_dependencies.texture_cobble = select_required({default="default_cobble.png", mcl_core="default_cobble.png"})
df_dependencies.texture_coral_skeleton = "default_coral_skeleton.png" df_dependencies.texture_coral_skeleton = select_required({default="default_coral_skeleton.png", mcl_ocean="mcl_ocean_dead_horn_coral_block.png"})
df_dependencies.texture_dirt = "default_dirt.png" df_dependencies.texture_dirt = select_required({default="default_dirt.png", mcl_core="default_dirt.png"})
df_dependencies.texture_gold_block = "default_gold_block.png" df_dependencies.texture_gold_block = select_required({default="default_gold_block.png", mcl_core="default_gold_block.png"})
df_dependencies.texture_ice = "default_ice.png" df_dependencies.texture_ice = select_required({default="default_ice.png", mcl_core="default_ice.png"})
df_dependencies.texture_sand = "default_sand.png" df_dependencies.texture_sand = select_required({default="default_sand.png", mcl_core="default_sand.png"})
df_dependencies.texture_stone = "default_stone.png" df_dependencies.texture_stone = select_required({default="default_stone.png", mcl_core="default_stone.png"})
df_dependencies.texture_wood = "default_wood.png" df_dependencies.texture_wood = select_required({default="default_wood.png", mcl_core="default_wood.png"})
df_dependencies.texture_mineral_coal = select_required({default="default_mineral_coal.png", mcl_core="mcl_core_coal_ore.png"}) -- MCL's coal texture isn't transparent, but is only used with gas seeps and should work fine that way
-- used to determine colour of spindlestem caps -- used to determine colour of spindlestem caps
df_dependencies.data_iron_containing_nodes = {"default:stone_with_iron", "default:steelblock"} df_dependencies.data_iron_containing_nodes = {"default:stone_with_iron", "default:steelblock"}
@ -68,7 +112,7 @@ if minetest.get_modpath("default") then
df_dependencies.after_place_leaves = default.after_place_leaves df_dependencies.after_place_leaves = default.after_place_leaves
df_dependencies.LIGHT_MAX = default.LIGHT_MAX df_dependencies.LIGHT_MAX = default.LIGHT_MAX
end
-- Note that a circular table reference will result in a crash, TODO: guard against that. -- 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. -- Unlikely to be needed, though - it'd take a lot of work for users to get into this bit of trouble.
@ -202,17 +246,12 @@ if minetest.get_modpath("farming") then
end end
-- from "bucket" -- from "bucket"
df_dependencies.node_name_bucket_empty = select_required({bucket="bucket:bucket_empty", mcl_buckets="mcl_buckets:bucket_empty"})
if minetest.get_modpath("bucket") then
df_dependencies.node_name_bucket_empty = "bucket:bucket_empty"
df_dependencies.bucket_register_liquid = bucket.register_liquid df_dependencies.bucket_register_liquid = bucket.register_liquid
end
-- from "wool" -- from "wool"
if minetest.get_modpath("wool") then df_dependencies.node_name_wool_white = select_required({wool="wool:white", mcl_wool="mcl_wool:white"})
df_dependencies.node_name_wool_white = "wool:white"
end
-- from "fireflies" -- from "fireflies"
if minetest.get_modpath("fireflies") then if minetest.get_modpath("fireflies") then
@ -221,11 +260,16 @@ end
-- from "vessels" -- from "vessels"
if minetest.get_modpath("vessels") then df_dependencies.node_name_glass_bottle = select_required({vessels="vessels:glass_bottle", mcl_potions="mcl_potions:glass_bottle"})
df_dependencies.node_name_glass_bottle = "vessels:glass_bottle" df_dependencies.node_name_shelf = select_required({vessels="vessels:shelf", })
end df_dependencies.texture_glass_bottle = select_required({vessels="vessels_glass_bottle.png", mcl_potions="mcl_potions_potion_bottle.png"})
if minetest.get_modpath("beds") then -- from "beds"
df_dependencies.node_name_bed_bottom = "beds:bed_bottom" df_dependencies.node_name_bed_bottom = select_required({beds="beds:bed_bottom", mcl_beds="mcl_beds:bed_red_bottom"})
df_dependencies.node_name_bed_top = "beds:bed_top" df_dependencies.node_name_bed_top = select_required({beds="beds:bed_top", mcl_beds="mcl_beds:bed_red_top"})
end
-- from "doors"
df_dependencies.node_name_door_wood_a = select_required({doors="doors:door_wood_a", mcl_doors="mcl_doors:wooden_door"})
df_dependencies.node_name_door_hidden = select_required({doors="doors:hidden"})
minetest.debug(dump(mods_required))

View File

@ -28,6 +28,9 @@ df_trees.node_names.torch = df_dependencies.node_name_torch
df_trees.node_names.torch_wall = df_dependencies.node_name_torch_wall df_trees.node_names.torch_wall = df_dependencies.node_name_torch_wall
df_trees.node_names.water_flowing = df_dependencies.node_name_water_flowing df_trees.node_names.water_flowing = df_dependencies.node_name_water_flowing
df_trees.node_names.water_source = df_dependencies.node_name_water_source df_trees.node_names.water_source = df_dependencies.node_name_water_source
df_trees.node_names.door_wood_a = df_dependencies.node_name_door_wood_a
df_trees.node_names.door_hidden = df_dependencies.node_name_door_hidden
df_trees.node_names.shelf = df_dependencies.node_name_shelf
df_trees.textures = {} df_trees.textures = {}
df_trees.textures.gold_block = df_dependencies.texture_gold_block df_trees.textures.gold_block = df_dependencies.texture_gold_block

View File

@ -4,14 +4,14 @@ local n3 = {name = "stairs:slab_goblin_cap_stem_wood", param2 = 2} -- porch top
local n4 = { name = "df_trees:goblin_cap_gills" } local n4 = { name = "df_trees:goblin_cap_gills" }
local n6 = { name = "df_trees:goblin_cap_stem", force_place=true } -- walls local n6 = { name = "df_trees:goblin_cap_stem", force_place=true } -- walls
local n7 = { name = "df_trees:goblin_cap_stem_wood", force_place=true } -- internal floor local n7 = { name = "df_trees:goblin_cap_stem_wood", force_place=true } -- internal floor
local n8 = { name = "doors:door_wood_a", force_place=true } local n8 = { name = df_trees.node_names.door_wood_a or "air", force_place=true }
local n9 = { name = "doors:hidden", force_place=true } local n9 = { name = df_trees.node_names.door_hidden or "air", force_place=true }
local n10 = { name = df_trees.node_names.furnace, param2 = 3, force_place=true } local n10 = { name = df_trees.node_names.furnace, param2 = 3, force_place=true }
local n11 = { name = "air", force_place=true } -- internal air local n11 = { name = "air", force_place=true } -- internal air
local n12 = { name = df_trees.node_names.bed_bottom, force_place=true } local n12 = { name = df_trees.node_names.bed_bottom or "air", force_place=true }
local n13 = { name = "df_trees:goblin_cap_stem", prob = 198, force_place=true } -- possible window holes local n13 = { name = "df_trees:goblin_cap_stem", prob = 198, force_place=true } -- possible window holes
local n16 = { name = df_trees.node_names.chest, param2 = 3, force_place=true } local n16 = { name = df_trees.node_names.chest, param2 = 3, force_place=true }
local n17 = { name = df_trees.node_names.bed_top, force_place=true } local n17 = { name = df_trees.node_names.bed_top or "air", force_place=true }
local n18 = { name = df_trees.node_names.torch_wall, param2 = 4, force_place=true } local n18 = { name = df_trees.node_names.torch_wall, param2 = 4, force_place=true }
local n19 = { name = "df_trees:goblin_cap_stem" } -- base local n19 = { name = "df_trees:goblin_cap_stem" } -- base
@ -23,16 +23,6 @@ if minetest.get_modpath("vessels") then
n18 = { name = "df_trees:glowing_bottle_red", force_place=true} n18 = { name = "df_trees:glowing_bottle_red", force_place=true}
end end
if not minetest.get_modpath("doors") then
-- replace the door with air
n8 = n11
n9 = n11
end
if not df_trees.node_names.bed_top then
--replace the bed with air
n12 = n11
n17 = n11
end
if not minetest.get_modpath("stairs") then if not minetest.get_modpath("stairs") then
-- replace stairs with air -- replace stairs with air
n3 = nil n3 = nil

View File

@ -9,34 +9,24 @@ local n8 = { name = df_trees.node_names.furnace, param2 = 2, force_place=true }
local n9 = { name = "air", force_place=true } -- internal air local n9 = { name = "air", force_place=true } -- internal air
local n10 = { name = df_trees.node_names.torch_wall, param2 = 3, force_place = true } local n10 = { name = df_trees.node_names.torch_wall, param2 = 3, force_place = true }
local n12 = {name = "stairs:slab_goblin_cap_stem_wood", param2 = 2} -- porch top local n12 = {name = "stairs:slab_goblin_cap_stem_wood", param2 = 2} -- porch top
local n13 = { name = "doors:door_wood_a", param2 = 3, force_place = true } local n13 = { name = df_trees.node_names.door_wood_a or "air", param2 = 3, force_place = true }
local n14 = { name = "doors:hidden", param2 = 3, force_place = true } local n14 = { name = df_trees.node_names.door_hidden or "air", param2 = 3, force_place = true }
local n15 = n9 -- internal air, but could be a vessel shelf local n15 = n9 -- internal air, but could be a vessel shelf
local n16 = { name = df_trees.node_names.bed_top, param2 = 3, force_place = true } local n16 = { name = df_trees.node_names.bed_top or "air", param2 = 3, force_place = true }
local n17 = { name = df_trees.node_names.bed_bottom, param2 = 3, force_place = true } local n17 = { name = df_trees.node_names.bed_bottom or "air", param2 = 3, force_place = true }
local n18 = { name = df_trees.node_names.chest, force_place = true } local n18 = { name = df_trees.node_names.chest, force_place = true }
local n19 = { name = df_trees.node_names.torch_wall, param2 = 2, force_place = true } local n19 = { name = df_trees.node_names.torch_wall, param2 = 2, force_place = true }
local n20 = {name = "stairs:stair_goblin_cap_stem_wood" } local n20 = {name = "stairs:stair_goblin_cap_stem_wood" }
local n21 = {name = "stairs:stair_goblin_cap_stem_wood", param2 = 2 } local n21 = {name = "stairs:stair_goblin_cap_stem_wood", param2 = 2 }
local n22 = {name = "stairs:slab_goblin_cap_stem_wood", param2 = 22} local n22 = {name = "stairs:slab_goblin_cap_stem_wood", param2 = 22}
if minetest.get_modpath("vessels") then if df_trees.node_names.shelf then
-- replace torches with glowing bottles, add vessel shelf -- replace torches with glowing bottles, add vessel shelf
n10 = { name = "df_trees:glowing_bottle_red", force_place=true} n10 = { name = "df_trees:glowing_bottle_red", force_place=true}
n19 = n10 n19 = n10
n15 = { name = "vessels:shelf", param2 = 3, force_place = true } n15 = { name = df_trees.node_names.shelf, param2 = 3, force_place = true }
end end
if not minetest.get_modpath("doors") then
-- replace the door with air
n13 = n9
n14 = n9
end
if not df_trees.node_names.bed_top then
--replace the bed with air
n16 = n9
n17 = n9
end
if not minetest.get_modpath("stairs") then if not minetest.get_modpath("stairs") then
-- replace stairs with air -- replace stairs with air
n12 = nil n12 = nil