278
Глава 13 • Осторожно, пришельцы!
Перемещение вправо
Чтобы корабли пришельцев перемещались по экрану, мы воспользуемся методом
update()
из
alien .py
, который будет вызываться для каждого пришельца в группе.
Сначала добавим настройку для управления скоростью каждого пришельца:
settings.py
def __init__(self):
...
# Настройки пришельцев
self.alien_speed = 1.0
Настройка используется в реализации
update()
:
alien.py
def __init__(self, ai_game):
"""Инициализирует пришельца и задает его начальную позицию."""
super().__init__()
self.screen = ai_game.screen
self.settings = ai_game.settings
...
def update(self):
"""Перемещает пришельца вправо."""
❶
self.x += self.settings.alien_speed
❷
self.rect.x = self.x
Параметр
settings
создается в
__init__()
, чтобы к скорости пришельца можно
было обратиться в
update()
. При каждом обновлении позиции пришельца мы
смещаем его вправо на величину, хранящуюся в
alien_speed
. Точная позиция
пришельца хранится в атрибуте
self.x
, который может принимать вещественные
значения
. Затем значение
self.x
используется для обновления позиции прямо-
угольника пришельца
.
В основном цикле
while
уже содержатся вызовы обновления корабля и снарядов.
Теперь необходимо также обновить позицию каждого пришельца:
Достарыңызбен бөлісу: