Читать «Программирование на Scratch 2. Часть 2» онлайн - страница 8
Денис Голиков
Получились две переменные.
Сделайте для сцены такую программу.
Теперь приступаем к программированию поведения кота Васьки. Переименуйте Sprite1 в Ваську.
Сделайте ему простенькую программу из двух скриптов. Первый скрипт.
Не забудьте создать новое сообщение.
Назовите новое сообщение «рассыпать яблоки».
Создав первое событие, прикрепите к скрипту блок «передать «рассыпать яблоки». Второе событие создавайте только после того, как прикрепите первое событие с скрипту.
Когда первый скрипт будет готов, сделайте второй. Он будет работать в конце игры, при получении сообщения «очки». Если Васька наберёт больше яблок, чем Рыжик, то переменная «очки 1» будет больше переменной «очки 2», и Васька на весь двор объявит: «Я выиграл!». После этого работа программы будет остановлена блоком «стоп всё».
Первый котик готов. Дублируйте его и назовите Рыжиком.
Сейчас программа Рыжика такая же, как и у Васьки. Надо немного её изменить. Сначала удалите первый скрипт.
Вместо него создайте два маленьких скриптика. Первый скриптик скрывает Рыжика в начале игры, так как сначала очередь Васьки. Через двадцать секунд, когда миссия Васьки будет завершена, Рыжик получит сообщение «Очередь Рыжика» и приступит к сбору урожая. Ему тоже отведено двадцать секунд. После этого он передаёт сообщение «очки» и происходит подсчёт очков. Котик, который собрал больше яблок, скажет победные слова.
Третий скрипт Рыжика очень похож на такой же скрипт Васьки, только переменные надо переставить местами, и выкинуть блок «показать», ведь при подсчёте очков Рыжик и так виден.
Он только недавно закончил собирать яблоки, и ещё не успел никуда удрать.
Коты к соревнованию готовы. Осталось сделать яблочко и цветочек. Начнём с яблока, потом его дублируем, и переделаем в цветочек. Программы-то у них почти одинаковые. Добавьте из библиотеки спрайтов яблоко.
Дважды кликните по яблоку.
Переименуйте Apple в Яблоко.
Программа у яблока очень сложная. В ней шесть скриптов, и ни один из них не начинается с блока с зелёным флагом. Сначала нам необходимо создать две локальные переменные «Х яблока», и «Y яблока».
Эти переменные будут видны только самому яблоку и его клонам. Коты и цветочек не будут знать о существовании этих переменных, и никак не смогут их изменить.
Чтобы создать локальную переменную, надо поставить точку «Только для этого спрайта».
Создайте вторую переменную.
Локальные переменные готовы. Можете зайти в любого кота, и убедиться, что у него эти переменные не отображаются. Их видит только Яблоко. Глобальные переменные «очки 1» и «очки 2» видны всем спрайтам.
Переменные готовы, можно делать программу для Яблока. Создайте первый скрипт, он начинает работать, когда получит сообщение «рассыпать яблоки». Скрипт задаёт случайные координаты Х и Y, перемещает туда яблоко, и создаёт в этом месте его клон. Клон — это точная копия спрайта Яблоко.
Скрипты, управляющие клонами, всегда начинаются с блока «когда я начинаю как клон». Таких скриптов у яблока четыре штуки. Первый из них служит для организации скроллинга. При нажатии на стрелки клоны будут смещаться. Да-да, все клоны будут одновременно выполнять одно и то же действие, этот скрипт управляет сразу всеми клонами Яблока. Если Вы нажмёте стрелку вверх, то все клоны Яблока поедут вниз, Y изменится на минус три. Здесь нет ошибки, стрелка вверх - Y изменится на минус. Благодаря этому всеобщему движению яблок вниз, будет казаться, что кот идёт вверх! Коты на протяжении всей игры будут находиться на одном и том же месте экрана. Васька в левой части экрана, Рыжик в правой части экрана, но, несмотря на это, игроку будет казаться, что коты, как сумасшедшие, носятся по огороду, и собирают яблоки.