From b74d06b4e7de16833cad70bd054e7b3095d37559 Mon Sep 17 00:00:00 2001
From: MascaraSnake <jonassauer27@gmail.com>
Date: Thu, 30 Dec 2021 14:33:24 +0100
Subject: [PATCH] Netsync sector flags

---
 src/p_saveg.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/p_saveg.c b/src/p_saveg.c
index 5e204f9bc0..0f56799409 100644
--- a/src/p_saveg.c
+++ b/src/p_saveg.c
@@ -852,6 +852,7 @@ static void P_NetUnArchiveWaypoints(void)
 #define SD_CRUMBLESTATE 0x04
 #define SD_FLOORLIGHT 0x08
 #define SD_CEILLIGHT 0x10
+#define SD_FLAG      0x20
 
 #define LD_FLAG     0x01
 #define LD_SPECIAL  0x02
@@ -1037,6 +1038,8 @@ static void ArchiveSectors(void)
 			diff3 |= SD_FLOORLIGHT;
 		if (ss->ceilinglightlevel != spawnss->ceilinglightlevel || ss->ceilinglightabsolute != spawnss->ceilinglightabsolute)
 			diff3 |= SD_CEILLIGHT;
+		if (ss->flags != spawnss->flags)
+			diff3 |= SD_FLAG;
 
 		if (ss->ffloors && CheckFFloorDiff(ss))
 			diff |= SD_FFLOORS;
@@ -1101,6 +1104,8 @@ static void ArchiveSectors(void)
 				WRITEINT16(save_p, ss->ceilinglightlevel);
 				WRITEUINT8(save_p, ss->ceilinglightabsolute);
 			}
+			if (diff3 & SD_FLAG)
+				WRITEUINT32(save_p, ss->flags);
 			if (diff & SD_FFLOORS)
 				ArchiveFFloors(ss);
 		}
@@ -1202,6 +1207,9 @@ static void UnArchiveSectors(void)
 			sectors[i].ceilinglightlevel = READINT16(save_p);
 			sectors[i].ceilinglightabsolute = READUINT8(save_p);
 		}
+		if (diff3 & SD_FLAG)
+			sectors[i].flags = READUINT32(save_p);
+
 
 		if (diff & SD_FFLOORS)
 			UnArchiveFFloors(&sectors[i]);
-- 
GitLab