как сделать проверку на столкновение с масками изображений

В данном вопросе я хотел бы спросить как делать проверку на столкновение с масками разных изображений и возвращении позиции соприкоснувшегося изображения.

я знаю что можно сделать так - pygame.mask.from_surface(sprite_image), но тогда это просто будет проверка на соприкосновение изображений, а мне нужно чтобы соприкоснувшейся спрайт вернулся на точку соприкосновения.

оно должно быть похоже на это:

def collide(self, xvel, yvel, sprites_group):
    for p in sprites_group:
        
        if xvel > 0:                     
            self.rect.right = p.rect.left 

        if xvel < 0:                      
            self.rect.left = p.rect.right 

        if yvel > 0:                      
            self.rect.bottom = p.rect.top 

        if yvel < 0:                     
            self.rect.top = p.rect.bottom
  • mask = pygame.mask.from_surface(sprite_image) только вместо переменной rect должна быть переменная mask. я использую pygame версии 2.0.0 DEV 6 и там вроде есть что то под названием "Mask". я слышал что это как функция Rect, но использует маску (mask).

Ответы (0 шт):