求助求助大佬
python吧
全部回复
仅看楼主
level 1
介觅珍0c1 楼主
有没有大佬帮我看看我写的推箱子小游戏的地图,可以复制一下再建一个文件夹放几张图,我这里不知道为什么只要运行写的窗口打开一下就一闪而过关掉了,帮我看看哪里有问题在线等挺急的
import sys
import pygame
# 1. 游戏的初始化配置
# 定义每个格子的像素大小
SIZE = 100
# 定义地图的行数
ROW = 7
# 定义地图的列数
COL = 10
# 初始化 pygame 游戏模块
pygame.init()
# 创建游戏窗口,尺寸为 列数*格子大小 × 行数*格子大小
screen = pygame.display.set_mode((SIZE * COL, SIZE * ROW))
# 设置窗口标题
pygame.display.set_caption("推箱子小游戏")
clock=pygame.display.set.time.Clock()
# 初始化地图数据(二维列表)
# 数值含义:0-空地,1-墙,2-箱子,3-目的地,4-人,5-箱子+目的地,6-人+目的地
game_map = [
[0, 1, 1, 1, 1, 1, 1, 1, 0, 0],
[0, 1, 0, 0, 0, 0, 0, 1, 1, 1],
[0, 1, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 1, 3, 1, 1, 0, 0, 0, 0, 1],
[1, 4, 0, 0, 3, 0, 3, 0, 1, 1],
[1, 0, 2, 2, 1, 0, 3, 0, 0, 1],
[0, 1, 1, 1, 1, 1, 1, 1, 1, 0]
]
# 加载游戏素材(图片)
# 初始化素材列表,按索引对应不同游戏元素
image_list = []
# 循环加载 0-6 号素材图片,并缩放到指定格子大小
for i in range(7):
# 加载图片(请将路径替换为你的实际素材路径)
img = pygame.image.load(f"pic/{i}.png")
# 缩放图片适配格子尺寸
img = pygame.transform.scale(img, (SIZE, SIZE))
# 将缩放后的图片加入列表
image_list.append(img)
# 游戏主循环(核心逻辑)
while True:
# 2. 界面绘制:逐行逐列渲染地图元素
for i in range(ROW): # 遍历行数
for j in range(COL): # 遍历列数
# 根据地图数值绘制对应素材
if game_map[i][j] == 0:
screen.blit(image_list[0], (j * SIZE, i * SIZE))
elif game_map[i][j] == 1:
screen.blit(image_list[1], (j * SIZE, i * SIZE))
# 4. 界面自动更新:将绘制的内容显示到窗口
pygame.display.update()
clock.tick(60)
# 3. 事件监听与控制
for event in pygame.event.get():
# 监听窗口关闭事件
if event.type == pygame.QUIT:
pygame.quit() # 退出 pygame 模块
sys.exit(0) # 终止程序,返回状态码 0
2026年03月07日 10点03分 1
level 12
clock = pygame.time.Clock()
2026年03月07日 13点03分 2
1