我有四个移动的精灵,目前处于同一位置。他们本来应该有单独的位置,但我没有使用变量作为位置放置它们。
position =(50,50)#position for sprite 2
while running:
rect = rect.move(speed)
if rect.left < 0 or rect.right > 380:
speed[0] = -speed[0] * e
pygame.display.update()
if rect.top < 0 or rect.bottom > 370:
speed[1] = -speed[1] * e
pygame.display.update()
window.blit(sprite, rect )
window.blit(sprite2, rect, position)
window.blit(sprite3, rect)
window.blit(sprite4, rect)
pygame.display.update()
回溯:
Traceback (most recent call last):
File "C:\Python33\eskappa1.py", line 94, in <module>
window.blit(sprite2, rect, position)
TypeError: Invalid rectstyle argument
答案 0 :(得分:1)
不是传递window.blit(sprite2,rect,position),而是只能将它传递给位置,它将在位置坐标处用左上角绘制曲面。例如:
position = (50,50)
window.blit(sprite2, position)
如果您想了解更多信息,请参阅pygame曲面的文档:http://www.pygame.org/docs/ref/surface.html#pygame.Surface.blit