]> git.lizzy.rs Git - nothing.git/blobdiff - src/game/level.c
Try to remove malloc from LevelEditor
[nothing.git] / src / game / level.c
index 47da3c9f2f0e26da1b1c18595f6a540204599ccd..eeb5b65478b93c2a4145b50a22b23eddec18bd23 100644 (file)
 #include "game/level/player.h"
 #include "game/level/regions.h"
 #include "game/level/rigid_bodies.h"
-#include "game/level_metadata.h"
 #include "game/level/level_editor/rect_layer.h"
 #include "game/level/level_editor/point_layer.h"
 #include "game/level/level_editor/player_layer.h"
 #include "game/level/level_editor/label_layer.h"
 #include "game/level/level_editor/background_layer.h"
-#include "system/line_stream.h"
 #include "system/log.h"
 #include "system/lt.h"
 #include "system/nth_alloc.h"
@@ -40,7 +38,6 @@ struct Level
     Lt *lt;
 
     LevelState state;
-    LevelMetadata *metadata;
     Background background;
     RigidBodies *rigid_bodies;
     Player *player;
@@ -360,3 +357,14 @@ int level_enter_camera_event(Level *level, Camera *camera)
     labels_enter_camera_event(level->labels, camera);
     return 0;
 }
+
+void level_disable_pause_mode(Level *level, Camera *camera,
+                              Sound_samples *sound_samples)
+{
+    trace_assert(level);
+    trace_assert(camera);
+    trace_assert(sound_samples);
+    level->state = LEVEL_STATE_IDLE;
+    camera->blackwhite_mode = false;
+    sound_samples_toggle_pause(sound_samples);
+}