首先,我们需要安装pygame库,可以使用以下命令安装:
```bash pip install pygame ```
接下来是示例代码:
```python import pygame import sys import random # 初始化pygame pygame.init() # 设置屏幕大小 screen_width = 800 screen_height = 600 screen = pygame.display.set_mode((screen_width, screen_height)) # 设置标题 pygame.display.set_caption("鸡尾酒舞游戏") # 定义角色类 class Player(pygame.sprite.Sprite): def __init__(self): super().__init__() self.image = pygame.Surface((50, 50)) self.image.fill((255, 0, 0)) self.rect = self.image.get_rect() self.rect.x = screen_width // 2 - 25 self.rect.y = screen_height - 100 self.speed = 5 def update(self): keys = pygame.key.get_pressed() if keys[pygame.K_LEFT]: self.rect.x -= self.speed if keys[pygame.K_RIGHT]: self.rect.x += self.speed # 创建角色对象 player = Player() # 创建障碍物类 class Obstacle(pygame.sprite.Sprite): def __init__(self): super().__init__() self.image = pygame.Surface((50, 50)) self.image.fill((0, 255, 0)) self.rect = self.image.get_rect() self.rect.x = random.randint(0, screen_width - 50) self.rect.y = -50 self.speed = 5 def update(self): self.rect.y += self.speed if self.rect.y > screen_height: self.rect.y = -50 self.rect.x = random.randint(0, screen_width - 50) # 创建障碍物对象列表 obstacles = pygame.sprite.Group() for i in range(5): obstacles.add(Obstacle()) # 游戏主循环 while True: # 处理事件 for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() sys.exit() # 更新角色和障碍物位置 player.update() obstacles.update() # 检测碰撞 if pygame.sprite.collide_rect(player, obstacles): print("游戏结束!") pygame.quit() sys.exit() # 绘制背景、角色和障碍物 screen.fill((0, 0, 0)) screen.blit(player.image, player.rect) obstacles.draw(screen) # 更新屏幕 pygame.display.flip() # 控制帧率 pygame.time.Clock().tick(30) ```
游戏中,你可以通过左右方向键控制红色的角色在屏幕上左右移动,避开绿色障碍物。当角色与障碍物发生碰撞时,游戏结束。