Войти Создать аккаунт

Игра «Арканоид» · Шаг 4 из 8

Отбить

Мяч долетел до нижнего ряда. Если там ракетка, мяч отскакивает вверх — а куда вбок, решает место удара: левой частью ракетки — влево, правой — вправо, ровно серединой — прямо вверх. Так игрок управляет мячом. Мимо ракетки — мяч потерян.

Что сделать

Решите, отбила ли ракетка мяч, и в какую сторону он полетит.

Что приходит

  • stolbec — в какой столбец нижнего ряда прилетает мяч

  • levyy — столбец левого края ракетки

  • shirina_raketki — ширина ракетки, нечётная

Что вернуть

Направление (-1, вбок): вбок −1 левее середины ракетки, 1 — правее, 0 — ровно в середину; мимо ракетки — None.

Допишите функцию otbit в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В игре

Игра зовёт otbit, когда мяч долетает до ряда ракетки. None значит, что мяч упущен, — игра отнимает мяч. Решите шаг — и мячом можно будет целиться: левый край ракетки шлёт его влево, правый — вправо.

Без этого шага: ракетка отбивает мяч всегда вверх и вправо, куда бы он ни попал.

Пример

Ракетка шириной 3 стоит с пятого столбца: занимает столбцы 5, 6 и 7, середина — шестой. Мяч прилетает в шестой — прямо вверх, (-1, 0). В пятый — (-1, -1), в седьмой — (-1, 1), в восьмой — мимо, None.

Тот же пример кодом
Вызов
otbit(6, 5, 3)
Вернуть
(-1, 0)

Готовая игра →

Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.