sys.exit() forceExit = False while gameRunning: start = millis() if forceExit: closeAll() for event in pygame.event.get(): if event.type == pygame.QUIT or (event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE): closeAll() renderer.tick() now = millis() if now - lastTick >= 200: manager.tick(now - lastTick) lastTick = now end = millis() rtime = end - start if rtime > maxRenderTime: if rtime > 1000: timesOver1s += 1 else: maxRenderTime = rtime print("!! NEW MAXIMUM RENDER TIME: " + str(maxRenderTime) + "ms") # print("Took " + str(end - start) + "ms (max (<1000ms) = " + str(maxRenderTime) + "ms, times over 1s = " + str(timesOver1s) + ") to do game loop. Sleeping for 100ms...") sleep(0.1) # check for shutdown buttons if (GPIO.input(config.buttons.btn1_pin) == 1): print("Shutdown button pressed, forcing exit on next loop")
scoreTracker.close() print("Exiting...") sys.exit() forceExit = False while gameRunning: start = millis() if forceExit: closeAll() for event in pygame.event.get(): if event.type == pygame.QUIT: closeAll() renderer.tick() now = millis() if now - lastTick >= 200: manager.tick(now - lastTick) lastTick = now end = millis() rtime = end - start if rtime > maxRenderTime: if rtime > 1000: timesOver1s += 1 else: maxRenderTime = rtime print("!! NEW MAXIMUM RENDER TIME: " + str(maxRenderTime) + "ms") # print("Took " + str(end - start) + "ms (max (<1000ms) = " + str(maxRenderTime) + "ms, times over 1s = " + str(timesOver1s) + ") to do game loop. Sleeping for 100ms...") sleep(0.1) # check for shutdown buttons if(GPIO.input(config.buttons.btn1_pin) == 1): print("Shutdown button pressed, forcing exit on next loop")