diff --git a/lib/skybox_merger.lua b/lib/skybox_merger.lua index 3876bcf..3df090f 100644 --- a/lib/skybox_merger.lua +++ b/lib/skybox_merger.lua @@ -1,3 +1,5 @@ +local mod_lighting_monoid = minetest.get_modpath("lighting_monoid") ~= nil + local default_sky = { sky_data = { base_color = nil, @@ -74,11 +76,15 @@ local function set_skybox(playername, sky) player:set_moon(sky.moon_data) player:set_sun(sky.sun_data) player:set_stars(sky.star_data) - if player.set_lighting then - player:set_lighting({ - shadows = { intensity = sky.light_data.shadow_intensity }, - saturation = sky.light_data.saturation - }) + local lighting = { + shadows = { intensity = sky.light_data.shadow_intensity }, + saturation = sky.light_data.saturation + } + if mod_lighting_monoid then + lighting_monoid:add_change(player, lighting, "climate_api:merged_lighting") + lighting_monoid.del_change(player, "lighting_monoid:base_shadow") + elseif player.set_lighting then + player:set_lighting(lighting) end end diff --git a/mod.conf b/mod.conf index 58a2e07..a785ff6 100644 --- a/mod.conf +++ b/mod.conf @@ -1,7 +1,7 @@ name = climate_api title = Climate API author = TestificateMods -optional_depends = player_monoids, playerphysics, pova +optional_depends = player_monoids, playerphysics, pova, lighting_monoid description = """ A powerful engine for weather presets and visual effects. Use the regional climate to set up different effects for different regions.