From 7b1c03c20863c550d26ab6b5b603d635eb8f5f7a Mon Sep 17 00:00:00 2001 From: MihailRis Date: Wed, 26 Feb 2025 03:02:50 +0300 Subject: [PATCH] enable weather splash particles serialization --- src/presets/WeatherPreset.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/presets/WeatherPreset.cpp b/src/presets/WeatherPreset.cpp index 5ed65405..5738b6fa 100644 --- a/src/presets/WeatherPreset.cpp +++ b/src/presets/WeatherPreset.cpp @@ -11,7 +11,11 @@ dv::value WeatherPreset::serialize() const { froot["hspeed"] = fall.hspeed; froot["scale"] = fall.scale; froot["noise"] = fall.noise; + if (fall.splash) { + froot["splash"] = fall.splash->serialize(); + } root["fall"] = froot; + root["fog_opacity"] = fogOpacity; root["fog_dencity"] = fogDencity; root["clouds"] = clouds; @@ -27,8 +31,14 @@ void WeatherPreset::deserialize(const dv::value& src) { froot.at("hspeed").get(fall.hspeed); froot.at("scale").get(fall.scale); froot.at("noise").get(fall.noise); - src.at("fog_opacity").get(fogOpacity); - src.at("fog_dencity").get(fogDencity); - src.at("clouds").get(clouds); + + if (froot.has("splash")) { + const auto& sroot = froot["splash"]; + fall.splash = ParticlesPreset {}; + fall.splash->deserialize(sroot); + } } + src.at("fog_opacity").get(fogOpacity); + src.at("fog_dencity").get(fogDencity); + src.at("clouds").get(clouds); }