diff options
| author | ilotterytea <iltsu@alright.party> | 2025-01-19 20:42:57 +0500 |
|---|---|---|
| committer | ilotterytea <iltsu@alright.party> | 2025-01-19 20:42:57 +0500 |
| commit | 3fa74d5844e441f0cccf711791066efaab054b63 (patch) | |
| tree | 2a3f95088e49deba37963c16928d830373899146 /src/main.c | |
| parent | 8bc01fccc138461f3bd58cd9d2707309fe745a43 (diff) | |
feat: save/load .xd files (wip)
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 28 |
1 files changed, 19 insertions, 9 deletions
@@ -1,19 +1,31 @@ #include <stddef.h> +#include <stdio.h> +#include <stdlib.h> #include "editor.h" -#include "level.h" #include "raylib.h" #include "screens.h" - -typedef enum GameScreen { SCREEN_MENU = 0, SCREEN_EDITOR } GameScreen; +#include "xd.h" int main() { SetConfigFlags(FLAG_WINDOW_RESIZABLE); InitWindow(800, 600, "sillyeditor"); SetTargetFPS(60); - Level *level = SE_CreateLevel(30, 30); - Editor editor = {level, {}}; + // Getting list of files + XdData* datas[] = {}; + FilePathList list = LoadDirectoryFilesEx("datas", ".xd", true); + + for (int i = 0; i < list.count; i++) { + XdData data = Xd_LoadFromFile(list.paths[i]); + printf("%s\n", data.name); + datas[i] = &data; + } + + UnloadDirectoryFiles(list); + + XdData* data = NULL; + Editor editor = {data, {0, 0}}; Camera2D camera = {0}; camera.target = (Vector2){0.0f, 0.0f}; @@ -26,11 +38,11 @@ int main() { while (!WindowShouldClose()) { switch (currentScreen) { case SCREEN_MENU: { - SE_DrawMenuScreen(); + SE_DrawMenuScreen(¤tScreen, &editor, data, datas); break; } case SCREEN_EDITOR: { - SE_DrawEditorScreen(&editor, &camera); + SE_DrawEditorScreen(¤tScreen, &editor, &camera); break; } default: @@ -38,7 +50,5 @@ int main() { } } - SE_FreeLevel(level); - return 0; } |
