1
我試圖得出同樣的精靈類的兩個不同實例之間的線,精靈類,如下所示被編碼的(這只是__init__
功能):如何使用pygame中的精靈矩形的邊?
class Atom(pygame.sprite.Sprite):
"""Creates an atom of an element.
The element can be specified using the element parameter.
This will take a dict argument, contained in a constants file of some sort."""
def __init__(self, element, centre_loc):
pygame.sprite.Sprite.__init__(self)
self.image = pygame.Surface((30, 30), pygame.SRCALPHA)
pygame.gfxdraw.aacircle(self.image, 15, 15, 14, (0, 255, 0))
pygame.gfxdraw.filled_circle(self.image, 15, 15, 14, (0, 255, 0))
self.rect = self.image.get_rect()
self.rect.center = centre_loc
self.element = element
self.show_text(element)
self.print_properties(self.element)
我試圖做到這一點使用代碼在這裏:
pygame.draw.line(screen, color, sprite.rect.right. sprite.rect.left)
我簡化了上面的代碼,以突出我實際上做了什麼。 上面的實際代碼找到here,它在第25行被註釋掉了。其餘的代碼也可以在該存儲庫中找到以供參考。
我希望這將工作,但我得到這個錯誤,而不是:
TypeError: Invalid start point argument
所以我在做什麼錯在這裏?提前致謝。
所以'sprite.rect.midleft'或'sprite.rect.midright'也能工作,還是有另一種獲得中間等價物的方法? – ModoUnreal
是的,絕對。 [This](https://www.pygame.org/docs/ref/rect.html)頁面提供了可用於rect對象的方法和屬性的完整列表。 –
我剛剛測試了'midleft'和'midright',它的工作原理!非常感謝! – ModoUnreal