我试着做一个在屏幕上画一个矩形地图的函数。此函数为:
def parseMap(mapIndex):
tileRect = pygame.Rect(0, 0, 32, 32)
for x in maps.mapData[mapIndex]:
tileRect.x = x*16
for y in x:
tileRect.y = y*16
c.blit(maps.grass, tileRect)
if maps.mapData[mapIndex][x][y] == 1: c.blit(maps.tallGrass, tileRect)
不过,我犯了个错误,
TypeError: invalid rect assignment
在线:
tileRect.x = x*16
我看不出密码有什么问题。谢谢!
最佳答案
如果x
是一个列表,那么x * 16
是列表重复,而不是乘法。
也就是说,你得到了
tileRect.x = [1, 1, 1, 1, ...]