]> git.lizzy.rs Git - nothing.git/blobdiff - src/game/level/level_editor.c
Remove unused macro
[nothing.git] / src / game / level / level_editor.c
index 796f4a14770e0e08437d62342b2e26e031ad9bff..b20b2503d04b971a50fedb69e2c8458f4a61f8ea 100644 (file)
@@ -2,7 +2,6 @@
 
 #include "game/camera.h"
 #include "game/sound_samples.h"
-#include "game/level_metadata.h"
 #include "game/level/boxes.h"
 #include "game/level/level_editor/action_picker.h"
 #include "game/level/level_editor/color_picker.h"
@@ -19,6 +18,7 @@
 #include "system/log.h"
 #include "system/str.h"
 #include "config.h"
+#include "math/extrema.h"
 
 #include "level_editor.h"
 
@@ -57,14 +57,6 @@ LevelEditor *create_level_editor(Cursor *cursor)
         RETURN_LT(lt, NULL);
     }
 
-    level_editor->metadata = PUSH_LT(
-        lt,
-        create_level_metadata(VERSION, "New Level"),
-        destroy_level_metadata);
-    if (level_editor->metadata == NULL) {
-        RETURN_LT(lt, NULL);
-    }
-
     level_editor->background_layer = create_background_layer(hexstr("fffda5"));
 
     level_editor->player_layer =
@@ -191,11 +183,21 @@ LevelEditor *create_level_editor_from_file(const char *file_name, Cursor *cursor
         RETURN_LT(lt, NULL);
     }
 
-    level_editor->metadata = PUSH_LT(
-        lt,
-        create_level_metadata_from_line_stream(level_stream),
-        destroy_level_metadata);
-    if (level_editor->metadata == NULL) {
+    const char *line = line_stream_next(level_stream);
+    if (line == NULL) {
+        RETURN_LT(lt, NULL);
+    }
+
+    char version[METADATA_VERSION_MAX_SIZE] = {0};
+    memcpy(version, line,
+           MIN(size_t,
+               strlen(line),
+               METADATA_VERSION_MAX_SIZE - 1));
+    trim_endline(version);
+
+    if (strcmp(version, VERSION) != 0) {
+        log_fail("Version `%s` is not supported. Expected version `%s`.\n",
+                 version, VERSION);
         RETURN_LT(lt, NULL);
     }
 
@@ -564,11 +566,7 @@ static int level_editor_dump(LevelEditor *level_editor)
         fopen(level_editor->file_name, "w"),
         fclose_lt);
 
-    if (fprintf(filedump, "%s\n", level_metadata_version(level_editor->metadata)) < 0) {
-        return -1;
-    }
-
-    if (fprintf(filedump, "%s\n", level_metadata_title(level_editor->metadata)) < 0) {
+    if (fprintf(filedump, "%s", VERSION) < 0) {
         return -1;
     }