From 88c1ff04a811f3e38c5677195f25bd65e169dc31 Mon Sep 17 00:00:00 2001 From: Florian Burgener <florian.burgener@hesge.ch> Date: Sat, 11 Dec 2021 21:43:08 +0100 Subject: [PATCH] Fix zoom --- PlanetarySystem.h | 2 +- main.c | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/PlanetarySystem.h b/PlanetarySystem.h index dca040a..4fdf97f 100644 --- a/PlanetarySystem.h +++ b/PlanetarySystem.h @@ -14,7 +14,7 @@ typedef struct { CelestialObject **objects; double interval; double zoom_factor; - uint32_t reference_frame_object_index; + int32_t reference_frame_object_index; } PlanetarySystem; PlanetarySystem *planetary_system_create(double interval); diff --git a/main.c b/main.c index 0aeb50b..336ce59 100644 --- a/main.c +++ b/main.c @@ -60,7 +60,10 @@ int main() { if (event.key.keysym.sym == SDLK_LEFT) { planetary_system->reference_frame_object_index -= 1; - planetary_system->reference_frame_object_index %= planetary_system->objects_length; + + if (planetary_system->reference_frame_object_index < 0) { + planetary_system->reference_frame_object_index = planetary_system->objects_length - 1; + } } if (event.key.keysym.sym == SDLK_RIGHT) { @@ -70,11 +73,6 @@ int main() { } } - // if (gfx_keypressed() == SDLK_ESCAPE) - // break; - // if (gfx_keypressed() == SDL_MOUSEBUTTONDOWN) { - // printf("A"); - // } struct timespec t = {.tv_sec = 0, .tv_nsec = sleep_duration}; nanosleep(&t, NULL); elapsed_time += 1; -- GitLab