Урок 37. Space Invaders 7 — життя, score та UI
Урок 37. Space Invaders 7 — життя, score та UI
Section titled “Урок 37. Space Invaders 7 — життя, score та UI”Тривалість: 45–60 хв Рівень: Game Developer
🎯 Місія
Section titled “🎯 Місія”Додай lives, score та ігровий HUD.
🧠 Ключова ідея
Section titled “🧠 Ключова ідея”lives = 3score = 0level = 1💡 Пояснення простою мовою
Section titled “💡 Пояснення простою мовою”HUD — це панель зверху, де показано, скільки у нас життів, очок і який рівень. Ці змінні змінюються під час гри, але завжди видні на екрані.
💡 Аналогія: HUD — це як табло на стадіоні: рахунок, час, номер команди. Гравець завжди бачить «свій стан».
🧩 Розбираємо по рядках
Section titled “🧩 Розбираємо по рядках”lives = 3— у гравця 3 життя, при попаданні ворожої кулі мінус одне;score = 0— лічильник очок;level = 1— номер поточного рівня.
Щоб показати текст на екрані
Section titled “Щоб показати текст на екрані”font = pygame.font.Font(None, 36)score_text = font.render(f"Score: {score}", True, (255, 255, 255))screen.blit(score_text, (10, 10))✏️ Основні завдання
Section titled “✏️ Основні завдання”- Покажи score.
🙋 Підказка: створи шрифт через
pygame.font.Font(None, 36)та малюйrender(...)кожен кадр. - Покажи lives.
🙋 Підказка: аналогічно score, тільки текст
f"Lives: {lives}". - Collision з Player.
🙋 Підказка:
enemy_bullet.colliderect(player.rect)→lives -= 1. - Game Over при 0 lives.
🙋 Підказка:
if lives <= 0: running = Falseабо покажи екран “GAME OVER”.
⭐ Challenge
Section titled “⭐ Challenge”Додай high score.
🧪 Перед запуском
Section titled “🧪 Перед запуском”Хоча б раз за урок спробуй передбачити результат коду до запуску. Після запуску порівняй прогноз із реальністю.
🐞 Debug Mission
Section titled “🐞 Debug Mission”Навмисно зламай одну частину програми. Прочитай traceback або спостережи неправильну поведінку, знайди причину й виправ її.
✅ Урок завершено, якщо Марко може
Section titled “✅ Урок завершено, якщо Марко може”- пояснити головну ідею своїми словами;
- виконати основні завдання без копіювання готового рішення;
- змінити програму під нову вимогу;
- знайти й виправити хоча б одну власну помилку.
🏠 Домашня місія
Section titled “🏠 Домашня місія”Покращ Challenge однією власною ідеєю. Перед кодом сформулюй її одним реченням.
💡 Підказка для дорослого
Section titled “💡 Підказка для дорослого”Не виправляйте код одразу. Краще запитайте: «Що ти очікував? Що сталося? Який рядок за це відповідає? Що можна перевірити?»