OccamaRazor
@OccamaRazor

Как вывести несколько фигур на дисплей, получить их координаты и записать координаты в массив, которым потом можно будет управлять?

Отображаю только 1 картинку. Чтобы отобразить несколько соответственно нужен цикл. Но вот где его вставить чтобы и данными можно было управлять и картинки каждый раз при изменении координат отображались на новых координатах?
class figure(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.image = pygame.image.load(os.path.join(IMG,"figure.png")).convert()
        self.image.set_colorkey(BLACK) # made bg transparent
        self.rect = self.image.get_rect()
        self.rect.x = 35
        self.rect.y = 35
        self.image = pygame.transform.scale(self.image, (70, 70))

all_sprites = pygame.sprite.Group()
figure= figure()
all_sprites.add(figure)
all_sprites.draw(screen)
  • Вопрос задан
  • 673 просмотра
Пригласить эксперта
Ответы на вопрос 1
tsarevfs
@tsarevfs
C++ developer
Нужно иметь не массив координат, а массив фигур. На каждой итерации (на каждом кадре) проходите в цикле по всем фигурам и перемещайте их.
for figure in all_sprites.sprites():
   figure.rect.move_ip(1, 0) #то же что и figure.rect.x += 1
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы