编写一个python跑酷小游戏
时间: 2023-07-18 21:45:28 浏览: 133
好的,我将为您提供一个简单的 Pygame 跑酷小游戏的示例代码。您可以根据这个示例代码进行修改和扩展,实现您自己的跑酷小游戏。
```python
import pygame
import random
# 定义游戏窗口大小
WINDOW_WIDTH = 800
WINDOW_HEIGHT = 600
WINDOW_SIZE = (WINDOW_WIDTH, WINDOW_HEIGHT)
# 定义游戏角色大小
PLAYER_WIDTH = 50
PLAYER_HEIGHT = 50
PLAYER_SIZE = (PLAYER_WIDTH, PLAYER_HEIGHT)
# 定义游戏障碍物大小
OBSTACLE_WIDTH = 50
OBSTACLE_HEIGHT = 50
OBSTACLE_SIZE = (OBSTACLE_WIDTH, OBSTACLE_HEIGHT)
# 定义游戏颜色
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
# 初始化 Pygame
pygame.init()
# 创建游戏窗口
screen = pygame.display.set_mode(WINDOW_SIZE)
pygame.display.set_caption("Pygame Running Game")
# 加载游戏资源
player_image = pygame.image.load("player.png")
player_rect = player_image.get_rect()
player_rect.bottomleft = (0, WINDOW_HEIGHT)
obstacle_image = pygame.image.load("obstacle.png")
obstacle_rect = obstacle_image.get_rect()
obstacle_rect.bottomright = (WINDOW_WIDTH, WINDOW_HEIGHT)
# 定义游戏变量
player_speed = 5
obstacle_speed = 5
obstacle_interval = 200
obstacle_list = []
# 定义游戏循环
game_running = True
while game_running:
# 处理游戏事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_running = False
# 更新游戏状态
player_rect.move_ip(player_speed, 0)
# 生成障碍物
if obstacle_interval == 0:
obstacle_rect = obstacle_image.get_rect()
obstacle_rect.bottomright = (0, WINDOW_HEIGHT)
obstacle_list.append(obstacle_rect)
obstacle_interval = random.randint(100, 300)
else:
obstacle_interval -= 1
# 移动障碍物
for obstacle_rect in obstacle_list:
obstacle_rect.move_ip(-obstacle_speed, 0)
if obstacle_rect.right < 0:
obstacle_list.remove(obstacle_rect)
# 检测碰撞
for obstacle_rect in obstacle_list:
if player_rect.colliderect(obstacle_rect):
game_running = False
# 绘制游戏画面
screen.fill(WHITE)
screen.blit(player_image, player_rect)
for obstacle_rect in obstacle_list:
screen.blit(obstacle_image, obstacle_rect)
pygame.display.update()
# 退出 Pygame
pygame.quit()
```
这个示例代码实现了一个简单的跑酷小游戏,玩家角色会向右移动,同时随机生成障碍物,玩家需要躲避障碍物。如果玩家碰到了障碍物,游戏就会结束。您可以根据自己的需求对这个代码进行修改和扩展,实现更加丰富的游戏玩法。
阅读全文