我正在尝试将精灵绘制到我的左上角x和y坐标所在的位置。
我知道center是可以使用的属性
class walls(pygame.sprite.Sprite):
def __init__(self, x, y, width, height):
super().__init__()
self.width = width
self.height = height
self.x = x
self.y = y
self.image = pygame.Surface([width,height])
self.image.fill(black)
self.rect = self.image.get_rect(center=(self.x, self.y))
我不希望中心坐标,而是希望通过其左上角的x和y坐标绘制此图像。怎么样?我可以在self.image.get_rect()函数中使用哪种其他命令?
答案 0 :(得分:2)
pygame.sprite.Sprite
的.image
属性包含一个pygame.Surface
对象。
请参阅pygame.Surface
的文档:
您可以将关键字参数值传递给此函数。 [...]例如,
mysurf.get_rect(center=(100,100))
为以给定位置为中心的Surface创建一个矩形。
这意味着可以将任何关键字属性传递给可以设置为pygame.Rect
的该函数
例如
self.rect = self.image.get_rect(topleft=(100, 100))
生成一个矩形,其左上角坐标(100,100)以及self.image
的宽度和高度。