From 437b44bafb2416f1ee4c08df6e1a9d57b7cae19b Mon Sep 17 00:00:00 2001 From: "alexey.lysiuk" Date: Sat, 5 May 2018 17:55:44 +0300 Subject: [PATCH] - serialize 'spawned' object flag, WorldThingDestroyed event relies on it https://forum.zdoom.org/viewtopic.php?t=60435 --- src/dobject.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/dobject.cpp b/src/dobject.cpp index 6644c90b3..64236bcba 100644 --- a/src/dobject.cpp +++ b/src/dobject.cpp @@ -584,13 +584,20 @@ void DObject::SerializeUserVars(FSerializer &arc) void DObject::Serialize(FSerializer &arc) { - int fresh = ObjectFlags & OF_JustSpawned; - int freshdef = 0; - arc("justspawned", fresh, freshdef); - if (arc.isReading()) + const auto SerializeFlag = [&](const char *const name, const EObjectFlags flag) { - ObjectFlags |= fresh; - } + int value = ObjectFlags & flag; + int defaultvalue = 0; + arc(name, value, defaultvalue); + if (arc.isReading()) + { + ObjectFlags |= value; + } + }; + + SerializeFlag("justspawned", OF_JustSpawned); + SerializeFlag("spawned", OF_Spawned); + ObjectFlags |= OF_SerialSuccess; }