X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=hacks%2Fpenetrate.c;h=3e41af80e0461a6a257ca1e54b8697719e7de4b4;hp=2b104dc90c61b8adc65f673f686e6f3057f1c0c3;hb=a719ec12b8b2563112366a8ac3196816fd64d2c7;hpb=59ac4e9a0de290e4275a7bbb890ad16abd09d68f diff --git a/hacks/penetrate.c b/hacks/penetrate.c index 2b104dc9..3e41af80 100644 --- a/hacks/penetrate.c +++ b/hacks/penetrate.c @@ -708,7 +708,8 @@ static void NewLevel(Display *dpy, Window window, Colormap cmap, int xlim, int y width = XTextWidth(font, buf, strlen(buf)); XDrawString(dpy, window, level_gc, xlim / 2 - width / 2, ylim / 2 - font_height(font) / 2, buf, strlen(buf)); - XSync(dpy, True); + XSync(dpy, False); + screenhack_handle_events(dpy); sleep(1); } @@ -733,14 +734,17 @@ static void NewLevel(Display *dpy, Window window, Colormap cmap, int xlim, int y city[i].alive = 1; AddScore(dpy, window, cmap, xlim, ylim, 100 * level); DrawCities(dpy, window, cmap, xlim, ylim); - XSync(dpy, True); + XSync(dpy, False); + screenhack_handle_events(dpy); usleep(kCityPause); } } } else { /* we're dead */ + screenhack_handle_events(dpy); sleep(3); + screenhack_handle_events(dpy); /* start new */ gamez++; Improve(); @@ -766,7 +770,8 @@ static void NewLevel(Display *dpy, Window window, Colormap cmap, int xlim, int y width = XTextWidth(font, buf, strlen(buf)); XDrawString(dpy, window, level_gc, xlim / 2 - width / 2, ylim / 4, buf, strlen(buf)); DrawCities(dpy, window, cmap, xlim, ylim); - XSync(dpy, True); + XSync(dpy, False); + screenhack_handle_events(dpy); sleep(1); } @@ -794,7 +799,8 @@ static void NewLevel(Display *dpy, Window window, Colormap cmap, int xlim, int y sprintf(buf, "Bonus Round"); width = XTextWidth(font, buf, strlen(buf)); XDrawString(dpy, window, level_gc, xlim / 2 - width / 2, ylim / 2 - font_height(font) / 2, buf, strlen(buf)); - XSync(dpy, True); + XSync(dpy, False); + screenhack_handle_events(dpy); sleep(1); XFillRectangle(dpy, window, erase_gc, 0, 0, xlim, ylim - 100); @@ -851,6 +857,7 @@ static void penetrate(Display *dpy, Window window, Colormap cmap) if (laser[i].alive) goto END_CHECK; /* okay, nothing's alive, start end of level countdown */ + screenhack_handle_events(dpy); sleep(kLevelPause); NewLevel(dpy, window, cmap, xlim, ylim); return; @@ -866,7 +873,8 @@ static void penetrate(Display *dpy, Window window, Colormap cmap) lastLaser = loop; } - XSync(dpy, True); + XSync(dpy, False); + screenhack_handle_events(dpy); if (kSleepTime) usleep(kSleepTime);