+static int game_event_level_editor(Game *game, const SDL_Event *event)
+{
+ trace_assert(game);
+ trace_assert(event);
+
+ switch (event->type) {
+ case SDL_KEYDOWN: {
+ switch (event->key.keysym.sym) {
+ case SDLK_TAB: {
+ game->level = RESET_LT(
+ game->lt,
+ game->level,
+ create_level_from_level_editor(
+ game->level_editor,
+ game->broadcast));
+ if (game->level == NULL) {
+ return -1;
+ }
+ game->state = GAME_STATE_RUNNING;
+ SDL_SetRelativeMouseMode(false);
+ } break;
+ }
+ } break;
+ }
+
+ return level_editor_event(game->level_editor, event, game->camera);
+}
+