#include <SDL.h> #include "drawing.h" // Draw in game loop #include "events.h" // Handle events in loop #include "game.h" // This file #include "globals.h" // Timing macros #include "grid.h" // Iterate the grid #include "timing.h" // Timings // Public bool paused; // Private const double req_update_time = 1.0 / UPDATES_PER_SECOND; double time_since_update; void start_game() { clear_grid(); paused = true; time_since_update = 0; while(true) { game_loop(); limit_fps(); } } void game_loop() { handle_events(); if (!paused) if ((time_since_update += delta_time) >= req_update_time) { iterate_grid(); time_since_update -= req_update_time; } draw(); } void toggle_pause() { paused = !paused; time_since_update = 0; }