pygame.display.flip()

def game_over_screen(final_score, final_coins): screen.fill(WHITE) game_over_text = font.render("GAME OVER", True, RED) score_text = font.render(f"Score: final_score", True, BLACK) coin_text = font.render(f"Coins: final_coins", True, YELLOW) restart_text = font.render("Press R to restart or Q to quit", True, BLACK)

def off_screen(self): return self.x + COIN_SIZE < 0 def show_score(score, surf): text = font.render(f"Score: score", True, BLACK) surf.blit(text, (10, 10))

# Draw everything screen.fill(WHITE)

for obs in obstacles: obs.draw(screen) for coin in coins: coin.draw(screen) player.draw(screen)

def draw(self, surf): pygame.draw.rect(surf, BLUE, self.rect) pygame.draw.rect(surf, BLACK, self.rect, 3) class Obstacle: def (self, track, x): self.track = track self.x = x self.rect = pygame.Rect(x, TRACK_Y[track], OBSTACLE_WIDTH, OBSTACLE_HEIGHT)

def show_coins(coins, surf): text = font.render(f"Coins: coins", True, YELLOW) surf.blit(text, (WIDTH - 150, 10))

while running: clock.tick(60) frame += 1