diff options
| -rw-r--r-- | application.cpp | 19 | ||||
| -rw-r--r-- | application.h | 1 | 
2 files changed, 14 insertions, 6 deletions
diff --git a/application.cpp b/application.cpp index 072c7a8..371ef2f 100644 --- a/application.cpp +++ b/application.cpp @@ -135,6 +135,7 @@ Application::~Application() {  void Application::run() {  	elapsed = 0; +	paused = false;  	font = new FTPixmapFont("VeraMono.ttf");  	font->FaceSize(12); @@ -153,16 +154,18 @@ void Application::run() {  	shader->attach(shader2);  	shader->link(); -	unsigned int lasttick = SDL_GetTicks(); +	lasttick = SDL_GetTicks();  	while(1) {  		SDL_Event event; -		SDL_PollEvent(&event); -		if(event.type == SDL_QUIT) { -			break; -		} else if(event.type == SDL_KEYDOWN) { -			event_keypress(event.key.keysym.sym); +		while(SDL_PollEvent(&event)) { +			if(event.type == SDL_QUIT) { +				break; +			} else if(event.type == SDL_KEYDOWN) { +				event_keypress(event.key.keysym.sym); +			}  		} +  		if(please_quit) {  			return;  		} @@ -280,6 +283,10 @@ void Application::event_keypress(SDLKey key) {  		case SDLK_ESCAPE:  			quit();  			break; +		case SDLK_SPACE: +			paused = !paused; +			lasttick = SDL_GetTicks(); +			break;  		default:  			break;  	} diff --git a/application.h b/application.h index c9867b8..e40af07 100644 --- a/application.h +++ b/application.h @@ -15,6 +15,7 @@ class Application {  		bool please_quit;  		bool paused; +		unsigned int lasttick;  		unsigned int elapsed;  		unsigned int frames;  		unsigned int lastframes;  | 
