Изучив документацию и различные учебные сайты, я до сих пор не могу понять, как вы модифицируете метод sprite.collide с помощью чего-либо, кроме обнаружения столкновений с прямоугольной ограничивающей рамкой.
У меня есть программа, которая должна обнаруживать столкновение между спрайтом «Крючок» и любой из нескольких рыб, хранящихся в группе спрайтов под названием «рыбки»
Я могу использовать:
for hit in pygame.sprite.spritecollide(self, self.fishies)
для возврата списка сталкивающихся спрайтов с использованием ограничивающих прямоугольников, но я хочу использовать круги или маски.
В документации сказано, что я могу использовать:
pygame.sprite.spritecollide(self, self.fishies, False, collided = None)
где «collided» — это функция обратного вызова. Но я не могу понять, что это значит. Простая запись:
pygame.sprite.spritecollide(sprite, group, dokill, pygame.sprite.collide_circle())
выдает ошибку.
Может ли кто-нибудь помочь, или я неправильно понял, как это должно работать?