我知道有一个类似的问题,但答案不够具体,对我的情况有用。
我正在尝试创建一个程序,该程序可以显示在 Tiled 中创建并使用 pytmx 上传到 Pygame 的平铺地图。我遇到的唯一问题是在 Pygame 中将图像放到屏幕上。
这是我不断收到的错误: Traceback(最近一次调用最后一次):文件“C:\Users\b\Desktop\Frozen Map Textures\test.py”,第 32 行,在 screen.blit(images[i],( x*32,y*32)) 类型错误:参数 1 必须是 pygame.Surface,而不是 None
如果有人知道如何解决这个问题,我将非常感激!感谢你的帮助!
代码如下:
import pygame
from pytmx import load_pygame
import random
white = (255,255,255)
#create window
screenSize = (800,600)
screen = pygame.display.set_mode(screenSize)
pygame.display.set_caption("GameName")
screen.fill(white)
gameMap = load_pygame("Frozen.tmx")
#creates list of single tiles in first layer
images = []
for y in range(50):
for x in range(50):
image = gameMap.get_tile_image(x,y,0)
images.append(image)
#displays tiles in locations
i = 0
for y in range(50):
for x in range(50):
screen.blit(images[i],(x*32,y*32))
i += 1
#main loop
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.display.flip()
pygame.quit()