Files
thepool/source/jgame.cpp
2023-06-04 14:26:34 +02:00

49 lines
1.1 KiB
C++

#include "jgame.h"
#include "jdraw.h"
#include "jinput.h"
#include <SDL2/SDL.h>
namespace game
{
static unsigned int ticks_per_frame = 1000/60;
void setUpdateTicks(const int ticks)
{
ticks_per_frame = ticks;
}
}
int main(int argc, char *argv[])
{
game::init();
input::init();
static unsigned int current_ticks = SDL_GetTicks();
bool should_exit=false;
SDL_Event e;
while (!should_exit)
{
while(SDL_PollEvent(&e))
{
if (e.type==SDL_QUIT) { should_exit = true; break; }
if (e.type==SDL_KEYDOWN)
{
input::updateKey(e.key.keysym.scancode);
}
if (e.type==SDL_KEYUP)
{
input::updateKeypressed(e.key.keysym.scancode);
}
}
if (SDL_GetTicks()-current_ticks >= game::ticks_per_frame)
{
if (!game::loop()) should_exit = true;
input::updateKey(SDL_SCANCODE_UNKNOWN);
input::updateKeypressed(SDL_SCANCODE_UNKNOWN);
current_ticks = SDL_GetTicks();
}
}
return 0;
}