summaryrefslogtreecommitdiffhomepage
path: root/serialize
diff options
context:
space:
mode:
authorStanislaw Halik <sthalik@misaki.pl>2023-03-20 15:27:31 +0100
committerStanislaw Halik <sthalik@misaki.pl>2023-03-20 15:27:31 +0100
commit5dbee173b961792b42596cb792a50624555cc41b (patch)
tree2e6d82e2c3fefd13584730aecd42a3d3fc14f105 /serialize
parent81156d180847bf9ba502a25e546723f234d0e2c9 (diff)
src, senery, serialize: implement z offset
Diffstat (limited to 'serialize')
-rw-r--r--serialize/anim.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/serialize/anim.cpp b/serialize/anim.cpp
index 8d867489..4effc375 100644
--- a/serialize/anim.cpp
+++ b/serialize/anim.cpp
@@ -46,6 +46,8 @@ static void to_json(nlohmann::json& j, const anim_group& val)
j["ground"] = val.ground;
if (val.offset != def.offset)
j["offset"] = val.offset;
+ if (val.z_offset != def.z_offset)
+ j["z-offset"] = val.z_offset;
}
static void from_json(const nlohmann::json& j, anim_group& val)
@@ -54,13 +56,18 @@ static void from_json(const nlohmann::json& j, anim_group& val)
val.name = j["name"];
fm_soft_assert(!val.name.isEmpty());
if (j.contains("mirror-from"))
+ {
+ fm_soft_assert(!j.contains("frames"));
val.mirror_from = j["mirror-from"];
+ }
else
val.frames = j["frames"];
if (j.contains("ground"))
val.ground = j["ground"];
if (j.contains("offset"))
val.offset = j["offset"];
+ if (j.contains("z-offset"))
+ val.z_offset = j["z-offset"];
}
static void to_json(nlohmann::json& j, const anim_def& val)
@@ -109,7 +116,7 @@ using namespace floormat;
namespace nlohmann {
-void adl_serializer<floormat::anim_scale>::to_json(json& j, const floormat::anim_scale val)
+void adl_serializer<floormat::anim_scale>::to_json(json& j, const anim_scale val)
{
switch (val.type)
{
@@ -126,7 +133,7 @@ void adl_serializer<floormat::anim_scale>::to_json(json& j, const floormat::anim
}
}
-void adl_serializer<floormat::anim_scale>::from_json(const json& j, floormat::anim_scale& val)
+void adl_serializer<anim_scale>::from_json(const json& j, anim_scale& val)
{
fm_soft_assert(j.is_array());
fm_soft_assert(j.size() == 2);