好的,我可以为你提供一个简单的植物大战僵尸游戏的Python代码示例。这个游戏将使用Pygame库来创建图形界面和处理游戏逻辑。 首先,你需要安装Pygame库。如果你还没有安装,可以使用以下命令: ```bash pip install pygame ``` 以下是一个简单的植物大战僵尸游戏的代码示例: ```python import pygame import random # 初始化Pygame pygame.init() # 设置屏幕大小 screen_width = 800 screen_height = 600 screen = pygame.display.set_mode((screen_width, screen_height)) # 设置 pygame.display.set_caption("植物大战僵尸") # 定义颜色 WHITE = (255, 255, 255) GREEN = (0, 255, 0) RED = (255, 0, 0) # 加载图像 plant_image = pygame.image.load('plant.png') zombie_image = pygame.image.load('zombie.png') # 定义植物类 class Plant(pygame.sprite.Sprite): def __init__(self): super().__init__() self.image = plant_image self.rect = self.image.get_rect() self.rect.x = random.randint(100, screen_width - 100) self.rect.y = random.randint(100, screen_height - 100) # 定义僵尸类 class Zombie(pygame.sprite.Sprite): def __init__(self): super().__init__() self.image = zombie_image self.rect = self.image.get_rect() self.rect.x = random.randint(100, screen_width - 100) self.rect.y = random.randint(100, screen_height - 100) self.speed = random.randint(1, 3) def update(self): self.rect.x += self.speed if self.rect.x > screen_width: self.kill() # 创建精灵组 all_sprites = pygame.sprite.Group() plants = pygame.sprite.Group() zombies = pygame.sprite.Group() # 添加植物到精灵组 for i in range(5): plant = Plant() all_sprites.add(plant) plants.add(plant) # 主循环 running = True clock = pygame.time.Clock() while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # 随机生成僵尸 if random.randint(1, 100) <= 2: zombie = Zombie() all_sprites.add(zombie) zombies.add(zombie) # 更新所有精灵 all_sprites.update() # 检测碰撞 hits = pygame.sprite.groupcollide(plants, zombies, False, True) for hit in hits: plant = hit[0] plant.kill() # 绘制 screen.fill(WHITE) # 绘制所有精灵 all_sprites.draw(screen) # 刷新屏幕 pygame.display.flip() # 控制帧率 clock.tick(60) pygame.quit() ``` 这个示例代码假设你有两个图像文件 `plant.png` 和 `zombie.png`,分别代表植物和僵尸。你可以根据需要替换这些图像文件。这个示例代码是一个非常简单的实现,没有包含很多游戏机制,如植物攻击、僵尸移动路径等。你可以在此基础上进行扩展和改进。 [2025-04-04 19:49:54 | AI写代码神器 | 955点数解答]