Управление кораблем
257
Этот код проверяет позицию корабля перед изменением значения
self.x
. Вы-
ражение
self.rect.right
возвращает координату
x
правого края прямоугольника
корабля. Если это значение меньше значения, возвращаемого
self.screen_rect.
right
, значит, корабль еще не достиг правого края экрана
. То же относится и к ле-
вому краю: если координата
x
левой стороны прямоугольника больше 0, значит,
корабль еще не достиг левого края экрана
. Проверка гарантирует, что корабль
будет оставаться в пределах экрана перед изменением значения
self.x
.
Если вы запустите
alien_invasion .py
сейчас, то движение корабля будет останавли-
ваться у края экрана. Согласитесь, эффектно: мы всего лишь добавили условную
проверку в команду
if
, но все выглядит так, словно у края экрана корабль натал-
кивается на невидимую стену или силовое поле!
Рефакторинг _check_events()
В ходе разработки метод
_check_events()
будет становиться все длиннее, поэтому
мы выделим из
_check_events()
еще два метода: для обработки событий
KEYDOWN
и для обработки событий
KEYUP
:
Достарыңызбен бөлісу: