Я составил список пуль и список спрайтов, используя классы ниже. Как определить, сталкивается ли пуля со спрайтом, а затем удаляет спрайт и пулю?Как обнаружить столкновение в pygame?
#Define the sprite class
class Sprite:
def __init__(self,x,y, name):
self.x=x
self.y=y
self.image = pygame.image.load(name)
self.rect = self.image.get_rect()
def render(self):
window.blit(self.image, (self.x,self.y))
# Define the bullet class to create bullets
class Bullet:
def __init__(self,x,y):
self.x = x + 23
self.y = y
self.bullet = pygame.image.load("user_bullet.BMP")
self.rect = self.bullet.get_rect()
def render(self):
window.blit(self.bullet, (self.x, self.y))
Я хотел бы отметить, что в pygame есть класс Sprite - я не уверен, что его определение в коде - хорошая идея. Кроме того, они действительно нацелены (не хотят лучшего слова), поскольку спрайт - это просто объект с графическим представлением на экране (и, следовательно, ваша Bullet тоже спрайт). –