sle/src/editing_area/main.c

55 lines
1.0 KiB
C

/* SPDX-License-Identifier: GPL-3.0-or-later */
/* Copyright (C) 2021 KikooDX */
#include "conf.h"
#include "editing_area/draw.h"
#include "editing_area/level.h"
#include <assert.h>
#include <raylib.h>
#include <stdio.h>
#include <stdlib.h>
int editing_area_main(int argc, char **argv)
{
struct Level level;
level.data = NULL;
/* check for argument count */
if (argc != 3) {
fprintf(stderr, "ERROR: expected 2 arguments, got %d\n",
argc - 1);
return EXIT_FAILURE;
};
/* initialize raylib */
InitWindow(game_window_width, game_window_height,
"SLE main window");
SetTargetFPS(target_fps);
/* load textures */
const Texture2D tileset = LoadTexture(argv[1]);
assert(tileset.width > 0);
/* load level */
level_read(&level, argv[2]);
while (!WindowShouldClose()) {
/* draw */
BeginDrawing();
ClearBackground(BLACK);
level_draw(level, tileset);
EndDrawing();
}
/* save level */
level_write(level, argv[2]);
/* deinit */
level_free(&level);
CloseWindow();
return EXIT_SUCCESS;
}