Сегодня мы с тобой сделаем первую игру. Кот будет ловить мышонка, а мышонок будет от него убегать. Сами по себе, под действием нашего кода. Интересно? Тогда приступаем.
Алгоритм
Во-первых, нам нужен алгоритм для кота и для мышонка. Бери бумагу, будем рисовать.
Что у нас должен делать кот:
- Повернуться лицом к мышонку
- Сделать полшага
- Если догнал мышонка, то установить переменную "стоп" в 1
- Если "стопа" не равен 1, то повторить с п.1
Нарисуй схему и сравни с тем, что получилось ниже. Но не подглядывай, пока не нарисуешь свою.
А теперь к мышке. Что должна делать она? Подумаем:
- Отвернуть от кота в случайную сторону
- Сделать шаг
- Если уперся в границу - отскочить и развернуться
- Повторять пока стоп не равен 1
Нарисуй схему для мышки и сравни с тем, что получилось ниже. Но не подглядывай, пока не нарисуешь свою.
Алгоритм мы сделали, теперь нужно его реализовать. Но перед этим нужно изучить что такое "переменные".
Переменные
В алгоритме мы использовали "переменную" стоп. Что же такое переменные? Переменные - это память программы. Мы можем хранить в переменных любые значения - например числа или текст. Мы можем изменять переменные с помощью простого записывания значений или арифметических действий.
Переменные могут быть локальные или глобальные. Глобальные переменные доступны из любого места программы. Мы можем создать переменную в коте и обращаться к ней из кода мышки. Переменная на "стоп" на схеме - это глобальная переменная.
Локальные переменные доступны только из того кода, где они были созданы - программисты говорят "объявлены". Например, если мы создадим локальную переменную в мышке, то кот ее не увидит и мышка может хранить в ней украденный сыр 🤣
Программа
Давай разберемся какие блоки нам нужны. Нам потребуются:
- блоки-сенсоры для определения границ сцены и того, поймал и кот мышку
- блоки циклов для повторения действий
- блоки ветвлений
- блоки для работы с переменными
Для мышонка потребуется создать отдельный спрайт. У нас будет 2 объекта - мышка и кот. Я сейчас покажу какие блоки тебе могут понадобится, а ты сам попробуй составить из них программу
Остался непонятным один момент - кот может поворачиваться к мышке, а как мышке отворачиваться от кота? Можно воспользоваться 2 блоками - блок "повернуть к коту", а затем блок "повернуть на 90 градусов + случайное значение".
Ты можешь подбирать случайное значение, чтобы было интересно смотреть на кошки-мышки. А еще ты можешь регулировать скорость персонажей. И последний вопрос перед заданием: как думаешь, на сколько градусов нужно повернуть, чтобы смотреть в обратную сторону? Правильно - 180 градусов.
Повторю задание:
- кот догоняет мышку
- мышка от него убегает
- если мышка или кот упираются в конец экрана, то они отворачиваются в обратную сторону
- когда кошка ловит мышь, игра останавливается.
Все подсказки есть в уроке. Решение будет в следующем уроке, но попробуй решить, а потом только смотреть.
Прошлые уроки