Download app.py from VaneshDev/TripnRun: direct link, hf CLI and curl.
- Browser
- Download file 2.19 kB
-
https://huggingface.co/spaces/VaneshDev/TripnRun/resolve/main/app.py
- Command line
-
hf download hf://spaces/VaneshDev/TripnRun/app.py
-
curl -L -o app.py https://huggingface.co/spaces/VaneshDev/TripnRun/resolve/main/app.py
2.19 kB
| # app.py | |
| import pygame | |
| import random | |
| import sys | |
| pygame.init() | |
| # Screen setup | |
| WIDTH, HEIGHT = 600, 400 | |
| screen = pygame.display.set_mode((WIDTH, HEIGHT)) | |
| pygame.display.set_caption("Trip n’ Run") | |
| # Colors | |
| WHITE = (255, 255, 255) | |
| BLACK = (0, 0, 0) | |
| SKY = (135, 206, 235) | |
| GROUND = (139, 69, 19) | |
| RED = (255, 0, 0) | |
| clock = pygame.time.Clock() | |
| FPS = 60 | |
| font = pygame.font.SysFont(None, 36) | |
| # Player setup | |
| player = pygame.Rect(50, HEIGHT - 70, 40, 40) | |
| player_vel_y = 0 | |
| gravity = 0.8 | |
| is_jumping = False | |
| # Obstacles | |
| obstacles = [] | |
| obstacle_timer = 0 | |
| # Score | |
| score = 0 | |
| def game_loop(): | |
| global player_vel_y, is_jumping, obstacle_timer, score | |
| running = True | |
| while running: | |
| screen.fill(SKY) | |
| pygame.draw.rect(screen, GROUND, (0, HEIGHT - 30, WIDTH, 30)) | |
| for event in pygame.event.get(): | |
| if event.type == pygame.QUIT: | |
| running = False | |
| keys = pygame.key.get_pressed() | |
| if keys[pygame.K_SPACE] and not is_jumping: | |
| player_vel_y = -12 | |
| is_jumping = True | |
| player_vel_y += gravity | |
| player.y += player_vel_y | |
| if player.y >= HEIGHT - 70: | |
| player.y = HEIGHT - 70 | |
| is_jumping = False | |
| pygame.draw.rect(screen, RED, player) | |
| # Obstacles | |
| obstacle_timer += 1 | |
| if obstacle_timer > 60: | |
| obstacle = pygame.Rect(WIDTH, HEIGHT - 50, 30, 30) | |
| obstacles.append(obstacle) | |
| obstacle_timer = 0 | |
| for obstacle in obstacles: | |
| obstacle.x -= 6 | |
| pygame.draw.rect(screen, BLACK, obstacle) | |
| if player.colliderect(obstacle): | |
| game_over(score) | |
| # Score | |
| score += 1 | |
| score_text = font.render(f"Score: {score}", True, BLACK) | |
| screen.blit(score_text, (10, 10)) | |
| pygame.display.flip() | |
| clock.tick(FPS) | |
| pygame.quit() | |
| sys.exit() | |
| def game_over(score): | |
| screen.fill(WHITE) | |
| text = font.render(f"Game Over! Score: {score}", True, BLACK) | |
| screen.blit(text, (WIDTH // 2 - 100, HEIGHT // 2)) | |
| pygame.display.flip() | |
| pygame.time.wait(2000) | |
| pygame.quit() | |
| sys.exit() | |
| # Run the game | |
| game_loop() | |