Игра «Арканоид» · Шаг 7 из 8
Очки
Очки идут за каждый удар по кирпичу: чем крепче кирпич, тем больше. А чтобы отбивать было интересно, у ударов есть серия: удары подряд, пока мяч не коснулся ракетки, умножают очки — второй вдвое, третий втрое, дальше вчетверо, больше не бывает.
Что сделать
Посчитайте очки за удары одного такта с учётом серии, которая тянется с прошлых тактов.
Что приходит
prochnosti— прочности кирпичей до удара, в порядке ударов этого тактаseriya— сколько ударов в серии было до этого такта
Что вернуть
Пару (очки за эти удары, новая длина серии).
Допишите функцию ochki_za_udary в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
В игре
Игра зовёт ochki_za_udary, когда мяч задел кирпичи, а серию обнуляет, когда мяч касается ракетки. Решите шаг — и очки начнут расти по-настоящему: за крепкие кирпичи и с множителем серии.
Без этого шага: очко за удар, без прочности и серий.
Серия пустая, мяч за такт задел единицу и тройку. Первый удар серии — 10 × 1 × 1 = 10, второй — 10 × 3 × 2 = 60: всего 70, серия стала 2. Ответ — (70, 2).
ochki_za_udary([2], 0)
(20, 1)
Удар по кирпичу прочности p (до удара) стоит 10 · p очков, умноженных на множитель. Удары нумеруются по серии с единицы: если до такта в серии было seriya ударов, первый удар такта — номер seriya + 1, второй — seriya + 2 и так далее. Множитель удара номер k — k, но не больше 4.
Вернуть пару: сумму очков за удары такта и новую длину серии — seriya плюс число ударов. Ударов нет — (0, seriya). Серию обнуляет игра, когда мяч касается ракетки.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.