Мини-игра: очки и здоровье врага

Урок 6.1 · Интерфейсы и сайты с нуля · Модуль 6. Проект: своя мини-игра · Бесплатно

Цель урока: Собрать основу игры: удар по врагу добавляет очки и снимает здоровье.

Нужно знать заранее: Уроки 4.3 и 5.2

Объяснение

Зачем это нужно: Сейчас вы соберёте настоящую игру. Пусть маленькую, но в ней будет то же, что и в большой: счёт очков, здоровье противника и реакция на нажатие. Это первая программа, в которой числа на экране меняются от ваших действий.

Как это работает: Игра — это переменные плюс отрисовка. Внутри живут два числа: очки игрока и здоровье врага. Игрок нажимает кнопку — числа меняются — и мы сразу переписываем их на странице. let score = 0 — очки игрока. let hp = 100 — здоровье врага. Каждое нажатие делает две вещи: меняет числа (score = score + 10 и hp = hp - 30) и показывает новые значения на странице. Числа выводятся как текст: document.getElementById('score').textContent = score. Полоска здоровья устроена так же, как в уроке 5.2: заливка внутри рамки. Только теперь длину заливки задаёт код: document.getElementById('hp').style.width = hp + '%'. Если hp равен 70, получится ширина '70%', и заливка займёт 70% длины шкалы.

Пример с разбором: let score = 0 let hp = 100

document.getElementById('hit').onclick = function () { score = score + 10 hp = hp - 30 document.getElementById('score').textContent = score document.getElementById('hpText').textContent = hp document.getElementById('hp').style.width = hp + '%' } Обработчик — это функция, которая выполняется по нажатию. Переменные объявлены снаружи, поэтому их значения сохраняются между нажатиями.

Разбор по шагам: 1. Объявите переменные снаружи обработчика: let score = 0 и let hp = 100. 2. Внутри обработчика onclick прибавьте очки и отнимите здоровье. 3. Выведите новые значения: textContent для чисел и style.width для полоски. 4. Нажмите кнопку и проверьте, что числа растут, а полоска сжимается.

Частая ошибка: Объявить score и hp внутри обработчика. Тогда при каждом нажатии они создаются заново, и игра всегда показывает одно и то же число. Переменные — это состояние игры, оно должно жить снаружи, рядом с кодом.

Важно: Сколько ударов выдержит враг, зависит от двух чисел: здоровья и урона. При 100 здоровья и уроне 30 враг падает с четвёртого удара. Это уже настоящая игровая настройка — и меняется она одной цифрой.

Итог: У вас есть работающая механика: счёт, здоровье и реакция на удар. В следующем уроке добавим финал — победу и кнопку «Играть снова».

Что дальше: Урок 6.2 — победа и перезапуск игры.

let score = 0
let hp = 100

document.getElementById('hit').onclick = function () {
  score = score + 10
  hp = hp - 30
  document.getElementById('score').textContent = score
  document.getElementById('hpText').textContent = hp
  document.getElementById('hp').style.width = hp + '%'
}

Оживите игру

Оформление и разметка уже готовы — осталось написать игровую механику. По нажатию на кнопку #hit: очки в #score растут на 10, здоровье врага в #hpText уменьшается на 30, а полоска #hp сжимается соответственно. Игра начинается с нуля очков и 100 здоровья. Кнопка «Проверить» нажмёт на кнопку удара вместо вас.

Критерий успеха: Очки растут на 10 за удар, здоровье врага уменьшается на 30, а полоска здоровья сжимается вместе со значением.

Уроки модуля 6

Что ещё есть на сайте

Учиться

  • Уроки — Все уроки трёх траекторий: список, поиск и ваш прогресс.
  • Программирование с нуля — Python с первой команды до своего проекта: 12 модулей.
  • Интерфейсы и сайты с нуля — Кнопки, страницы и мини-игры: результат виден сразу в браузере.
  • Компьютер без страха — Файлы, браузер, пароли, мошенники, документы и деньги в интернете простыми словами. Бесплатно и без оплаты.
  • Если уже случилось — Деньги ушли с карты, пропала симка, взломали аккаунт, потерялись документы — порядок действий по шагам и куда звонить.
  • Какой компьютер нужен — Чек-лист по уровням: для учёбы ничего покупать не нужно, для своего проекта — 16 ГБ и SSD, для работы — 32 ГБ. Плюс нейросети и устаревание железа.
  • Без кода: ставить задачу — Как объяснить задачу программисту и принять работу. Кода нет ни строчки.
  • Конструктор описания задачи — Собрать описание по полям и получить готовый текст для исполнителя.

С чего начать

Потренироваться

  • Практикум: задачи из жизни — Та же команда урока — на работе, дома и в документах. 63 задачи с проверкой вывода и без регистрации.
  • Игры-тренажёры — Найти ошибку в чужом коде, прочитать, что делает программа, и увидеть, что случится, если нажать клавишу.
  • Симулятор: от задания до сдачи — Пройти путь целиком: папка, терминал, файл, сохранение, запуск, проверка по критерию приёмки. Два сценария и две системы.
  • Мастерская экрана — Проверить цвета и раскладку страницы: контраст, шаблоны, конструктор.
  • Колесо фортуны — Одна прокрутка в день: скидка на подписку или дни доступа.

Словари и юмор

Сайт, оплата и помощь

  • Родителям — Возраст, время на уроки, безопасность в сообществе, деньги и результат — что важно знать до оплаты.
  • Инструкция пользователя — Как всё устроено: уроки, кабинет, уведомления, подписка, ярлык.
  • Сообщество — Вопросы и ответы: читать можно всем, писать — после входа.
  • Подписка — Тарифы, что входит, возврат 14 дней, история платежей.
  • Помощь и поддержка — Частые вопросы и форма обращения — ответ в течение дня.
  • Отзывы учеников — Что пишут те, кто уже учится: без звёзд, с проверкой каждого текста.
  • Профиль и пароль — Имя, пароль для входа без кода, уведомления, свои данные.