Блокировка кнопки Play

We use cookies. Read the Privacy and Cookie Policy

У кнопки Play в нашем приложении есть одна проблема: область кнопки на экране продолжает реагировать на щелчки, даже если кнопка Play не отображается. Если случайно щелкнуть на месте кнопки Play после начала игры, то игра перезапустится!

Чтобы исправить этот недостаток, следует запускать игру только в том случае, если флаг game_active находится в состоянии False:

game_functions.py

def check_play_button(ai_settings, screen, stats, play_button, ship, aliens,

bullets, mouse_x, mouse_y):

"""Запускает новую игру при нажатии кнопки Play."""

(1) . .button_clicked = play_button.rect.collidepoint(mouse_x, mouse_y)

(2) . .if button_clicked and not stats.game_active:

# Сброс игровой статистики.

...

Флаг button_clicked содержит значение True или False (1) ; а игра перезапускается только в том случае, если пользователь нажал кнопку Play, а игра не активна в данный момент (2). Чтобы протестировать это поведение, запустите новую игру и многократно щелкайте в том месте, где должна находиться кнопка Play. Если все работает так, как положено, нажатия кнопки Play не должны влиять на ход игры.