X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=main.c;h=4a482fc6b00756074dc4afe5108dd0159acb77a3;hp=14a486b962f0317b38ea98b749160451ee7bd7ea;hb=647f72d2ed554c7e2b1923d485e99d89f3a17825;hpb=c706b99e3d67ab42bc19bc430b649944afbcb8e4 diff --git a/main.c b/main.c index 14a486b..4a482fc 100644 --- a/main.c +++ b/main.c @@ -26,12 +26,13 @@ #include #include #include +#include #include "font.h" #include "args.h" #include "common.h" -#include "config.h" +#include "vorconfig.h" #include "dust.h" #include "file.h" #include "float.h" @@ -68,12 +69,15 @@ struct dot { int heat; // heat multiplier (color). }; +void draw(void); + struct dot edot[MAXENGINEDOTS], *dotptr = edot; struct dot bdot[MAXBANGDOTS]; // Other global variables char topline[1024]; char *initerror = ""; +int screenshot_number = 0; struct ship ship = { SHIP, 0, NULL, XSIZE/2, YSIZE/2, BARRIER_SPEED, 0.0 }; @@ -134,6 +138,14 @@ extern int optind, opterr, optopt; // ************************************* FUNCS void +tiny_sleep() { + struct timespec t; + t.tv_sec = 0; + t.tv_nsec = 1; + nanosleep(&t, 0); +} + +void init_engine_dots() { int i; for(i = 0; i-.bmp - SDL_SaveBMP(surf_screen, "snapshot.bmp"); + { + FILE *screenshot_fp; + char tmp[30]; + char *screenshot_filename = &(tmp[0]); + for(;;) { + snprintf(screenshot_filename, 30, "vor-screenshot-%02i.bmp", screenshot_number++); + screenshot_fp = fopen(screenshot_filename, "r"); + if(screenshot_fp) { + fclose(screenshot_fp); + } else { + break; + } + } + SDL_SaveBMP(surf_screen, screenshot_filename); + } break; case SDLK_p: case SDLK_PAUSE: @@ -674,6 +717,10 @@ gameloop() { ms_end = SDL_GetTicks(); } break; + case SDLK_f: + case SDLK_F11: + toggle_fullscreen(); + break; default: // other keys are handled by checking keystate each frame break; @@ -797,6 +844,8 @@ gameloop() { state = HIGH_SCORE_DISPLAY; state_timeout = 400; } + + tiny_sleep(); } }