将2D数组转换为PyGame瓦片地图,Python

0 投票
1 回答
1165 浏览
提问于 2025-04-18 04:25

我查找过类似的问题,但没有找到足够具体的内容来应用到我的情况。

好吧,我想出了一个方法,可以在正确的位置显示正确数量的图片,除了Y轴的问题。

基本上,如果我有一个数组:

[1,1,1,1,
 0,0,0,0]

我希望它显示成这样的:

####
@@@@

然而,它却显示成这样:

####@@@@

我该如何在行中向下遍历,更重要的是,我该如何检测到行的延续呢?

1 个回答

0

这是代表提问者发的帖子,提问者刚刚加入这个网站,并且自己找到了答案。

tileX = 0
tileY = 0
tile_dict = {0: pygame.image.load("C:\Users\Software Development\Desktop\Tile00.png"),    1: pygame.image.load("C:\Users\Software Development\Desktop\Tile01.png")}

map00 = [[0,0,0,0],
    [1,1,1,1], [1,0,1,0]]

for x in map00:
for x in x:
    if x == 0:
        screen.blit(tile_dict[0], (tileX, tileY))
        tileX = tileX+16
    if x == 1:
        screen.blit(tile_dict[1], (tileX, tileY))
        tileX = tileX+16
tileX = 0
tileY += 16

撰写回答