Пиксельное идеальное столкновение в пигме - PullRequest
2 голосов
/ 06 февраля 2020

Я пытаюсь сделать мраморную симуляцию в пигме (python 3.7.3) и пытаюсь получить столкновения между мрамором и компонентами. Основная проблема заключается в том, что методы обнаружения столкновений, которые я пробовал, - это не обнаружение изображения, а всего прямоугольника.

class Marble(pygame.sprite.Sprite):
    def __init__(self,x,y,vx,vy,display,colours,image,ax,ay=2):
        pygame.sprite.Sprite.__init__(self)
        self.image = image
        self.rect = self.image.get_rect()
        self.image.set_colorkey((0,0,0,255))
        self.mask = pygame.mask.from_surface(self.image,255)
    def detect_collision(self,components):
        if pygame.sprite.spritecollide(self,components,False,pygame.sprite.collide_mask):
            return True`

class Masked_Component(pygame.sprite.Sprite):
    def __init__(self,x,y,start,end,image,function):
        pygame.sprite.Sprite.__init__(self)
        self.x = x
        self.y = y
        self.start = start
        self.end = end
        self.image = image
        self.function = function
        self.rect = self.image.get_rect()
        self.image.set_colorkey((0,0,0,255))
        self.mask = pygame.mask.from_surface(self.image,255)`

Любая помощь будет признательна, и извините за грязный код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...