2021-05-25 12:52:25 +02:00
|
|
|
local modname = minetest.get_current_modname()
|
|
|
|
local S = minetest.get_translator(modname)
|
|
|
|
local modpath = minetest.get_modpath(modname)
|
|
|
|
mcl_structures = {}
|
|
|
|
|
2024-08-23 10:55:30 +02:00
|
|
|
-- some legacy API adapters
|
|
|
|
mcl_structures.is_disabled = vl_structures.is_disabled
|
|
|
|
mcl_structures.init_node_construct = vl_structures.init_node_construct
|
|
|
|
mcl_structures.construct_nodes = vl_structures.construct_nodes
|
|
|
|
mcl_structures.fill_chests = vl_structures.fill_chests
|
|
|
|
mcl_structures.spawn_mobs = vl_structures.spawn_mobs
|
|
|
|
|
|
|
|
-- TODO: provide more legacy adapters that translate parameters?
|
2024-08-24 19:24:31 +02:00
|
|
|
mcl_structures.place_schematic = function(pos, schematic, rotation, replacements, force_placement, flags, after_placement_callback, pr, callback_param)
|
|
|
|
vl_structures.place_schematic(pos, yoffset, schematic, rotation, {
|
|
|
|
replacements = replacements,
|
|
|
|
force_placement = force_placement,
|
|
|
|
flags = flags,
|
|
|
|
after_place = after_placement_callback,
|
|
|
|
callback_param = callback_param
|
|
|
|
}, pr)
|
|
|
|
end
|
|
|
|
mcl_structures.place_structure = vl_structures.place_structure -- still compatible
|
|
|
|
mcl_structures.register_structure = function(name, def, nospawn)
|
|
|
|
-- nospawn: ignored, just pass no place_on!
|
|
|
|
if not def.solid_ground then def.prepare = def.prepare or {} end
|
|
|
|
vl_structures.register_structure(name, def)
|
|
|
|
end
|
2024-08-23 10:55:30 +02:00
|
|
|
|
2022-06-24 02:11:24 +02:00
|
|
|
dofile(modpath.."/desert_temple.lua")
|
2024-08-23 10:55:30 +02:00
|
|
|
dofile(modpath.."/desert_well.lua")
|
|
|
|
dofile(modpath.."/end_city.lua")
|
|
|
|
dofile(modpath.."/end_spawn.lua")
|
|
|
|
dofile(modpath.."/fossil.lua")
|
|
|
|
dofile(modpath.."/geode.lua")
|
|
|
|
dofile(modpath.."/igloo.lua")
|
2022-06-24 02:11:24 +02:00
|
|
|
dofile(modpath.."/jungle_temple.lua")
|
2022-06-24 03:09:50 +02:00
|
|
|
dofile(modpath.."/ocean_ruins.lua")
|
2024-08-23 10:55:30 +02:00
|
|
|
dofile(modpath.."/ocean_temple.lua")
|
|
|
|
dofile(modpath.."/pillager_outpost.lua")
|
|
|
|
dofile(modpath.."/ruined_portal.lua")
|
|
|
|
dofile(modpath.."/shipwrecks.lua")
|
2022-06-24 21:47:44 +02:00
|
|
|
dofile(modpath.."/witch_hut.lua")
|
2022-07-01 04:25:34 +02:00
|
|
|
dofile(modpath.."/woodland_mansion.lua")
|
2022-06-25 00:31:28 +02:00
|
|
|
|
2024-08-23 10:55:30 +02:00
|
|
|
vl_structures.register_structure("boulder",{
|
2024-08-24 19:24:31 +02:00
|
|
|
-- as they have no place_on, they will not be spawned by this mechanism. this is just for /spawnstruct
|
2022-06-24 17:54:34 +02:00
|
|
|
filenames = {
|
2024-08-24 19:24:31 +02:00
|
|
|
-- small boulder 3x as likely
|
2022-06-24 17:54:34 +02:00
|
|
|
modpath.."/schematics/mcl_structures_boulder_small.mts",
|
|
|
|
modpath.."/schematics/mcl_structures_boulder_small.mts",
|
|
|
|
modpath.."/schematics/mcl_structures_boulder_small.mts",
|
|
|
|
modpath.."/schematics/mcl_structures_boulder.mts",
|
|
|
|
},
|
2024-08-24 19:24:31 +02:00
|
|
|
})
|
2022-10-24 05:26:47 +02:00
|
|
|
|
2024-08-23 10:55:30 +02:00
|
|
|
vl_structures.register_structure("ice_spike_small",{
|
2024-08-24 19:24:31 +02:00
|
|
|
-- as they have no place_on, they will not be spawned by this mechanism. this is just for /spawnstruct
|
2024-08-23 10:55:30 +02:00
|
|
|
filenames = { modpath.."/schematics/mcl_structures_ice_spike_small.mts" },
|
2024-08-24 19:24:31 +02:00
|
|
|
})
|
2022-06-24 17:54:34 +02:00
|
|
|
|
2024-08-23 10:55:30 +02:00
|
|
|
vl_structures.register_structure("ice_spike_large",{
|
2024-08-24 19:24:31 +02:00
|
|
|
-- as they have no place_on, they will not be spawned by this mechanism. this is just for /spawnstruct
|
2024-08-23 10:55:30 +02:00
|
|
|
filenames = { modpath.."/schematics/mcl_structures_ice_spike_large.mts" },
|
2024-08-24 19:24:31 +02:00
|
|
|
})
|
2022-10-24 05:26:47 +02:00
|
|
|
|