2024-09-03 21:03:25 +00:00
|
|
|
-- Load dripstone API
|
2024-08-29 16:47:36 +00:00
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
local modpath = minetest.get_modpath(minetest.get_current_modname())
|
2024-08-29 16:47:36 +00:00
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
local function load(name)
|
|
|
|
dofile(modpath.."/"..name..".lua")
|
2024-08-29 16:47:36 +00:00
|
|
|
end
|
2024-08-27 21:05:19 +00:00
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
load("api")
|
2024-08-27 21:05:19 +00:00
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
-- Choose dripstone sounds
|
2024-09-02 00:53:54 +00:00
|
|
|
local dripstone_sounds
|
|
|
|
if minetest.get_modpath("mcl_sounds") then
|
|
|
|
dripstone_sounds = mcl_sounds.node_sound_stone_defaults()
|
2024-08-28 14:04:46 +00:00
|
|
|
end
|
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
-- Register droplet types
|
|
|
|
noordstar_dripstone.register_droplet("water")
|
|
|
|
noordstar_dripstone.register_droplet("lava")
|
|
|
|
|
|
|
|
-- Register dripstone types
|
|
|
|
noordstar_dripstone.register_dripstone("dry", {
|
|
|
|
sounds = dripstone_sounds,
|
|
|
|
tiles = {
|
|
|
|
"noordstar_dripstone_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_dripstone_side.png",
|
|
|
|
},
|
|
|
|
on_droplet_receive = {
|
|
|
|
water = "watered",
|
|
|
|
lava = "molten",
|
|
|
|
},
|
|
|
|
})
|
|
|
|
noordstar_dripstone.register_dripstone("watered", {
|
|
|
|
drop = noordstar_dripstone.size_to_name("dry", 1),
|
|
|
|
grow_to = "dry",
|
|
|
|
on_droplet_receive = {
|
|
|
|
lava = "hardened",
|
|
|
|
},
|
|
|
|
sounds = dripstone_sounds,
|
|
|
|
tiles = {
|
|
|
|
"noordstar_dripstone_watered_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_watered_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_watered_dripstone_side.png",
|
|
|
|
},
|
|
|
|
trickle_down = "water",
|
|
|
|
})
|
|
|
|
noordstar_dripstone.register_dripstone("molten", {
|
|
|
|
drop = noordstar_dripstone.size_to_name("dry", 1),
|
|
|
|
grow_to = "dry",
|
|
|
|
on_droplet_receive = {
|
|
|
|
water = "hardened",
|
|
|
|
},
|
|
|
|
sounds = dripstone_sounds,
|
|
|
|
tiles = {
|
|
|
|
"noordstar_dripstone_molten_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_molten_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_molten_dripstone_side.png",
|
|
|
|
},
|
|
|
|
trickle_down = "lava",
|
|
|
|
trickle_speed = 6,
|
|
|
|
})
|
|
|
|
noordstar_dripstone.register_dripstone("hardened", {
|
|
|
|
sounds = dripstone_sounds,
|
|
|
|
tiles = {
|
|
|
|
"noordstar_dripstone_hardened_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_hardened_dripstone_top.png",
|
|
|
|
"noordstar_dripstone_hardened_dripstone_side.png",
|
2024-09-02 00:53:54 +00:00
|
|
|
}
|
2024-09-03 21:03:25 +00:00
|
|
|
})
|
2024-08-27 21:05:19 +00:00
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
-- Register droplet sources above dripstone blocks
|
2024-08-27 21:05:19 +00:00
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
if minetest.get_modpath("default") then
|
|
|
|
noordstar_dripstone.add_droplet_source("water", "default:river_water_source")
|
|
|
|
noordstar_dripstone.add_droplet_source("water", "default:water_source")
|
|
|
|
noordstar_dripstone.add_droplet_source("lava", "default:lava_source")
|
2024-08-29 09:51:51 +00:00
|
|
|
end
|
|
|
|
|
2024-09-03 21:03:25 +00:00
|
|
|
if minetest.get_modpath("mcl_core") then
|
|
|
|
noordstar_dripstone.add_droplet_source("water", "mcl_core:water_source")
|
|
|
|
noordstar_dripstone.add_droplet_source("lava", "mcl_core:lava_source")
|
|
|
|
end
|
2024-09-02 00:53:54 +00:00
|
|
|
|
|
|
|
if minetest.get_modpath("mclx_core") then
|
2024-09-03 21:03:25 +00:00
|
|
|
noordstar_dripstone.add_droplet_source("water", "mclx_core:river_water_source")
|
|
|
|
end
|