Python 射击游戏:简单易上手的代码示例
当然可以!下面是一个基于 Python 的简单射击类游戏的示例代码:
import pygame
import random
# 初始化游戏
pygame.init()
# 设置游戏窗口尺寸
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))
pygame.display.set_caption('射击游戏')
# 设置游戏元素尺寸
player_width = 50
player_height = 50
enemy_width = 30
enemy_height = 30
# 设置颜色
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
# 设置玩家初始位置
player_x = screen_width // 2 - player_width // 2
player_y = screen_height - player_height - 10
# 设置玩家移动速度
player_speed = 5
# 设置敌人初始位置和速度
enemy_x = random.randint(0, screen_width - enemy_width)
enemy_y = random.randint(50, 150)
enemy_speed = 3
# 设置得分
score = 0
font = pygame.font.Font(None, 36)
# 游戏循环
running = True
while running:
# 事件处理
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 获取键盘输入(左右移动)
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT] and player_x > 0:
player_x -= player_speed
if keys[pygame.K_RIGHT] and player_x < screen_width - player_width:
player_x += player_speed
# 更新敌人位置
enemy_y += enemy_speed
# 碰撞检测
if enemy_y > screen_height:
enemy_x = random.randint(0, screen_width - enemy_width)
enemy_y = random.randint(50, 150)
score += 1
if player_x < enemy_x + enemy_width and player_x + player_width > enemy_x and player_y < enemy_y + enemy_height and player_y + player_height > enemy_y:
running = False
# 绘制游戏元素
screen.fill(white)
pygame.draw.rect(screen, black, (player_x, player_y, player_width, player_height))
pygame.draw.rect(screen, red, (enemy_x, enemy_y, enemy_width, enemy_height))
# 绘制得分
score_text = font.render('得分:' + str(score), True, black)
screen.blit(score_text, (10, 10))
# 更新屏幕
pygame.display.update()
# 游戏结束
pygame.quit()
这个简单的射击类游戏中,玩家使用左右箭头键来控制一个矩形方块,避开从上方下落的红色矩形方块。玩家方块与敌人方块发生碰撞时游戏结束,得分会显示在窗口的左上角。
你可以将以上代码复制粘贴到 Python 编译器中,然后运行它来玩这个简单的射击类游戏。希望你喜欢!如果你有其他更具挑战性的游戏想法或需求,请随时告诉我。
原文地址: https://www.cveoy.top/t/topic/PTQ 著作权归作者所有。请勿转载和采集!