使对象获得自椭圆

时间:2017-12-26 00:14:39

标签: python pygame

是否可以像使用rect一样将图像设置为自椭圆形。如果没有,是否有办法让圆形物体在实际触碰物体而不仅仅是自我直方时反弹另一个圆形物体。这就是我所拥有的。

class Ball(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.image = pygame.image.load('Ball 2.png')
        self.rect= self.image.get_rect()
        self.rect.midbottom = (Width / 2, Height / 2)
        self.speedx = random.randint(ballspeedx, ballspeedx)
        self.speedy = random.randint(ballspeedy, ballspeedy)
    def update(self):
        self.rect.left += self.speedx
        self.rect.top += self.speedy
        if self.rect.right > Width or self.rect.left < 0:
            self.speedx = -self.speedx
        if self.rect.bottom > Height or self.rect.top < 20:
            self.speedy = -self.speedy
class You(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.image = pygame.image.load('Ball.png')
        self.rect = self.image.get_rect()
        self.rect.midbottom = (10, Height -10)
    def update(self):
        if self.rect.right > Width:
            self.rect.right = Width
        if self.rect.left < 0:
            self.rect.left = 0
        if self.rect.bottom > Height:
            self.rect.bottom = Height
        if self.rect.top < 20:
            self.rect.top = 20   

ball = Ball()
you = You()
Start = pygame.sprite.Group()
Start.add(ball)
Start2 = pygame.sprite.Group()
Start2.add(you)

if pygame.sprite.spritecollide(you, Start, False):
    running = False

1 个答案:

答案 0 :(得分:0)

Sprite