diff options
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 38 |
1 files changed, 16 insertions, 22 deletions
@@ -3,6 +3,9 @@ #include "editor.h" #include "level.h" #include "raylib.h" +#include "screens.h" + +typedef enum GameScreen { SCREEN_MENU = 0, SCREEN_EDITOR } GameScreen; int main() { SetConfigFlags(FLAG_WINDOW_RESIZABLE); @@ -18,30 +21,21 @@ int main() { camera.rotation = 0.0f; camera.zoom = 4.0f; - while (!WindowShouldClose()) { - if (GetMouseWheelMove() != 0.0) { - camera.zoom += (int)GetMouseWheelMove(); - - if (camera.zoom > 6.0f) - camera.zoom = 6.0f; - else if (camera.zoom < 4.0f) - camera.zoom = 4.0f; - } + GameScreen currentScreen = SCREEN_MENU; - if (IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) { - Vector2 mousePos = GetMouseDelta(); - camera.target.x -= mousePos.x / 5.0f; - camera.target.y -= mousePos.y / 5.0f; + while (!WindowShouldClose()) { + switch (currentScreen) { + case SCREEN_MENU: { + SE_DrawMenuScreen(); + break; + } + case SCREEN_EDITOR: { + SE_DrawEditorScreen(&editor, &camera); + break; + } + default: + break; } - - BeginDrawing(); - ClearBackground(RAYWHITE); - - BeginMode2D(camera); - SE_DrawEditor(&editor, &camera); - EndMode2D(); - - EndDrawing(); } SE_FreeLevel(level); |
