added not saving extra colors to BDCFF when using classic BD color set
authorHolger Schemel <info@artsoft.org>
Wed, 29 Jan 2025 18:19:26 +0000 (19:19 +0100)
committerHolger Schemel <info@artsoft.org>
Wed, 29 Jan 2025 11:28:03 +0000 (12:28 +0100)
src/game_bd/bd_bdcff.c

index 3fff79623ce9cbec78723ab1e31a8e959c527ac2..093afb4b65b0059f0be7ca5933e58c1dfed74182 100644 (file)
@@ -1397,6 +1397,13 @@ static void save_properties(GdPtrArray *out, void *str, void *str_def,
     if (prop_desc[i].flags & GD_DONT_SAVE)
       continue;
 
+    // when using classic set of colors, skip saving extra colors
+    if (gfx.has_reduced_color_template &&
+        prop_desc[i].type == GD_TYPE_COLOR &&
+        (prop_desc[i].offset == STRUCT_OFFSET(GdCave, color[6]) ||
+         prop_desc[i].offset == STRUCT_OFFSET(GdCave, color[7])))
+      continue;
+
     // string data
     // write together with identifier, as one string per line.
     if (prop_desc[i].type == GD_TYPE_STRING)