用python编写开飞机游戏完整代码
以下是一个简单的用Python编写的飞机游戏的完整代码:
import pygame
import random
# 初始化游戏
pygame.init()
# 定义窗口尺寸
screen_width = 480
screen_height = 600
# 创建窗口
screen = pygame.display.set_mode((screen_width, screen_height))
# 设置窗口标题
pygame.display.set_caption("飞机大战")
# 加载背景图片
background = pygame.image.load("background.png")
# 加载玩家飞机图片
player_image = pygame.image.load("player.png")
player_width = player_image.get_width()
player_height = player_image.get_height()
player_pos_x = screen_width / 2 - player_width / 2
player_pos_y = screen_height - player_height - 10
# 加载敌人飞机图片
enemy_image = pygame.image.load("enemy.png")
enemy_width = enemy_image.get_width()
enemy_height = enemy_image.get_height()
enemy_pos_x = random.randint(0, screen_width - enemy_width)
enemy_pos_y = 0
enemy_speed = 3
# 定义玩家飞机的移动速度
player_speed = 5
# 记录玩家得分
score = 0
# 设置游戏结束标志
game_over = False
# 创建时钟对象,用于控制游戏帧率
clock = pygame.time.Clock()
# 游戏循环
while not game_over:
# 监听事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
# 获取键盘按键状态
keys = pygame.key.get_pressed()
# 移动玩家飞机
if keys[pygame.K_LEFT]:
player_pos_x -= player_speed
if keys[pygame.K_RIGHT]:
player_pos_x += player_speed
if keys[pygame.K_UP]:
player_pos_y -= player_speed
if keys[pygame.K_DOWN]:
player_pos_y += player_speed
# 更新玩家飞机位置
player_rect = pygame.Rect(player_pos_x, player_pos_y, player_width, player_height)
# 更新敌人飞机位置
enemy_pos_y += enemy_speed
enemy_rect = pygame.Rect(enemy_pos_x, enemy_pos_y, enemy_width, enemy_height)
# 绘制背景图
screen.blit(background, (0, 0))
# 绘制玩家飞机
screen.blit(player_image, (player_pos_x, player_pos_y))
# 绘制敌人飞机
screen.blit(enemy_image, (enemy_pos_x, enemy_pos_y))
# 检测碰撞
if player_rect.colliderect(enemy_rect):
game_over = True
# 更新分数
score += 1
# 显示分数
font = pygame.font.Font(None, 36)
text = font.render("Score: " + str(score), True, (255, 255, 255))
screen.blit(text, (10, 10))
# 更新屏幕
pygame.display.flip()
# 控制游戏帧率
clock.tick(60)
# 游戏结束时退出
pygame.quit()
请注意,上述代码中的背景图片、玩家飞机图片和敌人飞机图片需要提前准备好,并与代码放在同一个文件夹中,并且命名为"background.png"、"player.png"和"enemy.png"。另外,需要安装Pygame库才能运行该代码
原文地址: https://www.cveoy.top/t/topic/iFH7 著作权归作者所有。请勿转载和采集!