ADD THE FOLLOWING CODE AFTER YOUR MAIN WHILE LOOP: (Note: your main while loop should NOT be "while True". Otherwise, your game will never end and you'll never see the game over screen. It should be something like "while not game_over", so that it's dependent on if the user has won or lost.) # Display game over screen while True: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() # if the user closed the window, quit the game # Draw everything to the screen screen.blit(background, (0, 0)) # draw over everything on the screen now by re-drawing the background # Draw the scoreboard font = pygame.font.Font(None, 100) text = font.render("Score: " + str(score), 1, (255,255,255)) textrect = text.get_rect() textrect.left, textrect.top = 0,0 screen.blit(text, textrect) # Draw the game over message font = pygame.font.Font(None, 50) text = font.render("Game over! Thanks for cleaning up Texas!", 1, (255,255,255)) textrect = text.get_rect() textrect.centerx, textrect.centery = area.width/2,area.height/2 screen.blit(text, textrect) pygame.display.flip() # make everything we have drawn on the screen become visible in the window TO DISPLAY DIFFERENT SCREENS FOR WINNING AND LOSING: Before your main while loop, create variables for the different winning/losing types in your game. They should be set to False since the game isn't over yet. For example: user_won = False time_ran_out = False Set these to True as appropriate in your main while loop. For example: if score > 25: user_won = True In your game-over while loop, change drawing the game-over message to be based on these variables. For example: # Draw the game over message font = pygame.font.Font(None, 50) if user_won: text = font.render("Congratulations! You won!", 1, (255,255,255)) elif time_ran_out: text = font.render("Too slow! Try again!", 1, (255,255,255)) else: text = font.render("You lost!", 1, (255,255,255)) textrect = text.get_rect() textrect.centerx, textrect.centery = area.width/2,area.height/2 screen.blit(text, textrect)