Skip to main content

Анімуємо гусака

Для початку створимо в папці з грою папку Goose і завантажимо в неї 5 картинок анімації гусака за цим посиланням. Також нам треба імпортувати модуль os.

import os


Модуль os дозволяє працювати з файловою системою, з оточенням, керувати процесами.

В нашому проекті ми використаємо функцію listdir(каталог), яка повертає список файлів та підкаталогів у вказаному каталозі.

Створимо змінну для шляху до картинок та список картинок гусак.

IMAGE_PATH = "Goose"

PLAYER_IMAGES = os.listdir(IMAGE_PATH)


Для перебору картинок в списку нам потрібно ініціалізувати змінну для індексування списку та подію для зміни.

CHANGE_IMAGE = pygame.USEREVENT + 3

pygame.time.set_timer(CHANGE_IMAGE, 250)

image_index = 0


Зміну картинок ми добавимо в цикл обробки подій:

if event.type == CHANGE_IMAGE:
player = pygame.image.load(os.path.join(IMAGE_PATH, PLAYER_IMAGES[image_index]))
image_index += 1
if image_index >= len(PLAYER_IMAGES):
image_index = 0

Тут ми використали функцію `os.path.join(path, paths)`*, яка розумно поєднує один або кілька компонентів шляху. Перевага її використання полягає в тому, що вона дозволяє коду залишатися сумісним з усіма операційними системами, оскільки при цьому використовується роздільник, який відповідає платформі, на якій він працює.