summaryrefslogtreecommitdiff
path: root/src/screens.c
diff options
context:
space:
mode:
authorilotterytea <iltsu@alright.party>2025-01-19 02:05:56 +0500
committerilotterytea <iltsu@alright.party>2025-01-19 02:05:56 +0500
commit3bfc51ee2ce8931ce0ef6952e1bfc0d2f52e30cf (patch)
tree89ead1b2a5c670d45a45e46ecc9e4e072c34f71d /src/screens.c
parent940e7825753b2a72a253199cb33767e04257dbd4 (diff)
feat: basic screen manager
Diffstat (limited to 'src/screens.c')
-rw-r--r--src/screens.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/screens.c b/src/screens.c
new file mode 100644
index 0000000..f7bda99
--- /dev/null
+++ b/src/screens.c
@@ -0,0 +1,36 @@
+#include "screens.h"
+
+#include "editor.h"
+#include "raylib.h"
+
+void SE_DrawMenuScreen() {
+ BeginDrawing();
+ ClearBackground(RAYWHITE);
+ EndDrawing();
+}
+
+void SE_DrawEditorScreen(Editor *editor, Camera2D *camera) {
+ 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;
+ }
+
+ if (IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) {
+ Vector2 mousePos = GetMouseDelta();
+ camera->target.x -= mousePos.x / 5.0f;
+ camera->target.y -= mousePos.y / 5.0f;
+ }
+
+ BeginDrawing();
+ ClearBackground(RAYWHITE);
+
+ BeginMode2D(*camera);
+ SE_DrawEditor(editor, camera);
+ EndMode2D();
+
+ EndDrawing();
+}