/* built with Studio Sketchpad:
* https://sketchpad.cc
*
* observe the evolution of this sketch:
* https://studio.sketchpad.cc/sp/pad/view/ro.dwajqVDWnFC/rev.6
*
* authors:
* GoToLoop
* license (unless otherwise specified):
* creative commons attribution-share alike 3.0 license.
* https://creativecommons.org/licenses/by-sa/3.0/
*/
/**
* Paused Countdown (v2.0)
* by GoToLoop (2014/Jun)
*
* forum.processing.org/two/discussion/5650/timing-component-for-game
*
* studio.processingtogether.com/sp/pad/export/ro.9Djm2xo4wna7I/latest
*/
static final color FG = #D0A000, BG = 0;
static final int TEXT_SIZE = 0100, QUALITY = 4;
static final int FPS = 60, TIMING = 1*FPS*60 + 60;
int timeup = TIMING;
boolean isPaused, isGameOver;
// ...
void setup() {
size(800, 600, JAVA2D);
smooth(QUALITY);
frameRate(FPS);
textSize(TEXT_SIZE);
textAlign(CENTER, CENTER);
fill(FG);
// ...
}
void draw() {
if (isPaused | isGameOver) {
text(isGameOver? "Game Over" : "Game Paused"
, width>>1, height>>2);
noLoop();
return;
}
background(BG);
final int countdown = (timeup-frameCount)/60 | 0;
if (countdown == 0) isGameOver = true;
text("Countdown: " + countdown, width>>1, height>>1);
// ...
}
void keyPressed() {
final int k = keyCode;
if (!(isPaused ^= k == 'P')) loop();
// ...
}