пятница, 29 января 2016 г.

Урок 18

Продолжаем улучшать нашу игру с лабиринтом.

К концу предыдущего урока у нас выполнялись такие условия:


  1. Кот ходил по лабиринту, управляемый стрелками клавиатуры.
  2. Кот не проходил сквозь стены.
  3. При достижении выхода кот сообщал, что он победил.
Усложним немного игру:

  1. Добавим в лабиринт объекты, которые будут появляться при нажатии на зеленый флажок. Чтоб выиграть, уже недостаточно будет просто пройти лабиринт. Необходимо будет собрать все объекты.
  2. Необходимо успеть пройти игру за определенное время. Для этого введем новый объект - таймер.
Приступим!

  1. Создадим переменную "Счет":
    • Перейдем на вкладку "Переменные"
    • Нажмем "Создать переменную"
    • Назовем её Счет
    • Если вы хотите видеть счет на игровом поле - оставьте галочку рядом с переменной. Не хотите - уберите. 
  2. Настроим обновление технических переменных при запуске игры:
    • Выберем объект "Сцена
    • Перейдем на вкладку "Скрипты"
    • Соберем такую конструкцию: "Когда щелкнут по зеленому флажку" - "Поставить Счёт в 0" - "Перезапустить таймер" (команда "Перезапустить таймер" находится  в разделе "Сенсоры")



 3. Теперь давайте расставим по лабиринту то, что будет собирать кот. Мой кот будет собирать мышей. 
  • Создадим новый спрайт. Для этого вы должны нажать на кнопку, выделенную красным прямоугольником на рисунке и выбрать объект, который будет собирать кот.
  • Измените размеры спрайта так, чтоб он помещался в вашем лабиринте.
  • Поставьте спрайт в ту точку, в которой он будет располагаться в ходе игры и настройте для него такие параметры:


 Итак, что означают эти настройки?
  • Когда щелкнут по зеленому флажку и игра начнется...
  • Идти в точку ... (поставьте свои координаты. Их можно посмотреть, наведя указатель мышки на ваш установленный в лабиринте спрайт)
  • Показаться (появляется в лабиринте при начале игры)
  • У меня кот - это спрайт 1. Поэтому я устанавливаю такие условия: Если касается спрайт 1 увеличить счет на 1 и спрятаться.
  • Попробуйте эту комбинацию без модуля "Всегда". Запустите программу. Что работает неправильно? Почему?
4. Щелкните правой кнопкой мыши по созданному спрайту 3, продублируйте его еще 4 раза, расставьте по лабиринту и измените начальные координаты для каждого из спрайтов.

5. Теперь изменим условия выигрыша в игре. Во вкладке "Скрипт" нашего кота мы создавали не один надор команд, а два. Давайте изменим второй набор. Выигрыш наступает если:
  •      Собраны все мыши (счет равен 5)
  •      Кот дошел до выхода (касание спрайта 1 и спрайта 2)
  •      Кот успел собрать всех мышей и прийти к выходу до определенного времени.
По поводу третьего условия выигрыша: помните, в начале урока мы говорили о датчике "Таймер"? Так вот, он у нас перезапускается при нажатии на зеленый флажок, и начинает автоматически изменяться. В моей игре надо успеть выполнить все условия за 100 секунд. Поэтому обратите внимание на ВСЕ условия выигрыша.
Если игрок не успел выполнить задание за отведенной время - выводим сообщение о проигрыше.


Задание сегодняшнего урока выполнено. Творческих успехов!

Комментариев нет:

Отправить комментарий