Содержимое ящиков
Управляющие программы - скрипты
Перейдем к ящичкам, в которых сложены кирпичики. Если мы посмотрим на содержимое ящичков, то увидим, что содержимое отличается не только цветом. Есть ящички, где большей частью лежат строительные блоки, которые можно объединять друг с другом. Это кирпичики для изменения внешнего вида объектов, управления звуками, перемещения объектов и рисования. Эти строительные кирпичики делятся на закрытые и самодостаточные, к которым ничего добавить нельзя и внутрь которых ничего нельзя добавить. Например:
Если край, оттолкнуться
Есть кирпичики, в которых можно изменять значения или вставлять в них значения. Например: Идти(20), Установить размер ()%
Есть ящички с блоками, которые нельзя соединять с другими, но которые можно вставлять внутрь других строительных блоков. Это ящики, где лежат цифры и датчики.
Есть ящик Контроля с управляющими конструкциями, которые позволяют организовывать повторения команд, ставить условия, при которых блоки команд начинают выполняться и условия, когда действие команд прекращается
Команды приобретают смысл, когда Вы объединяете их в последовательность
Например:
И птица начинает махать крыльями.
Все команды применимы не только к подвижным объектам, но и фону! Т.е. мало того, что можно добавлять разные фотографии в качестве фона. Над этими фоновыми фотографиями можно совершать любые операции при помощи команд из фиолетового ящика.
Внешний вид объекта (фиолетовый ящик)
Все команды однозначны. Чаще всего употребляются команды «Изменить()» и «Убрать графические эффекты». Переходы между слоями легче всего пояснить на примере 2-х одинаковых спрайтов котенка. У одного из них покрасим глаза в голубой цвет. Если мы теперь попросим одного из котят менять слой, то получится простая мультипликация – котенок будет менять цвет глаз.
Здесь приведен самый простой пример, но мы можем увеличить число объектов.
Команда | Назначение |
Перейти к костюму() | Перейти к костюму (можно выбрать костюм героя) |
Выбрать костюм() | По умолчанию объект одет в костюм кошки, но мы можем выбрать и другие костюмы из библиотеки, пользуясь командой Импорт. |
Изменить значение костюма | Изменить значение костюма на одну или несколько единиц. Имеет смысл только тогда, когда у нас несколько «импортных» костюмов.
|
Сказать | Сказать фразу, которую мы можем записать в окошечке команды. К сожалению, пока можно использовать только латинские буквы.
|
Думать | Думать – отличается от «говорить» только графическим оформлением фразы |
Убрать графические эффекты | Очистить все графические эффекты. Если мы производили над объектом видоизменение, то в результате этой команды все они отменяются |
Изменить() | Изменить (цвет, округлость, яркость) () – видоизменить объект по одному из перечисленных параметров на указанную величину. |
Показаться | Показать объект – он становится видимым |
Спрятаться | Спрятать объект - он становится невидимым |
Перейти в верхний слой | Объект перемещается в первый слой |
Перейти назад на () слоев | объект уходит на несколько слоев внутрь |
Значение костюма | Возвращает значение костюма, который в данный момент одет на нашем исполнителе. |
Синий ящик - Движение
В синем ящике сложены строительные блоки, управляющие перемещением объектов по экрану.
Кошка Скретч является прямым потомком черепашки Лого, и она наследовала многие из команд передвижения. При этом ошибку в команде сделать сложнее, поскольку количество шагов или градусов интегрированы с самой командой. Поверхность экрана, по которой перемещается Кошка, напоминает по своим свойствам экран, по которому перемещалась Черепашка. Центральная точка экрана соответствует координатам X=0, Y=0. Вправо от нулевой точки X возрастает и это область положительных значений. Влево – область отрицательных значений.
Научимся использовать блоки, которые не являются командами, а возвращают значения – положение x, y и направление. Простой пример:
Мы хотим, чтобы котенок последовательно переходил из нижнего правого угла в левый верхний угол.
Команда | Назначение |
идти | пройти вперед указанное число шагов. Например: Идти(10) – сделать десять шагов назад Идти (-30) – сделать 30 шагов назад |
Повернуться на | повернуться - стрелочка указывает по часовой или против часов стрелки выполняется поворот. Например: повернуться на 45 градусов (стрелочка указывает по или против часовой стрелки) |
Повернуться в направление() | Повернуться в указанном направлении. Например: повернуться в направление(180) |
Повернуться к | Повернуться в направлении другого существа или координат мышки. После команды всегда существует перечень объектов, которые в данный момент присутствуют в системе и на которые можно реагировать. В самом простом случае, когда других объектов нет, предлагается повернуться в сторону, где находится указатель мышки. |
Изменить Х на() | Изменить положение по оси X на указанное число шагов. Например: Изменить X (-10) – объект смещается влево на 10 шагов |
Установить x в () | Установить объект положение по оси x. Например: Установить x в (50) |
Идти в x () y() | Переместиться в точку с указанными координатами Например: Идти в x(70) y(-50) В начале проекта всегда стоит установить персонаж в конкретную точку, чтобы точно знать, где он находится. |
Плыть () сек в точку | Плавно переместиться в точку с указанными координатами за указанное время. На перемещение затратится время указанное в секундах. Например: Плыть(20) сек в точку x(90) y(90) Объект медленно (в течение 20 секунд) будет переползать в указанную точку. |
Идти в () | Перейти в точку, где расположен указатель мыши или другая фигура. |
Если край, оттолкнуться | Если попадаешь в край экрана, то отразись от него. Это очень полезно, если Вы не хотите потерять своего героя |
Следующие несколько блоков нельзя использовать в качестве отдельных строительных блоков, но они могут быть вставлены внутрь строительных кирпичиков в качестве входных параметров
| |
Положение х | Возвращает значение по оси X Например: Установить y (положение x) |
Положение Y | Возвращает значение по оси y Например: Установить x (положение y) |
Направление | Возвращает направление |
Кирпичики контроля (желтый ящик)
Кирпичики контроля позволяют собирать блоки команд и управлять последовательностью исполнения скриптов. Они определяют то, при каких условиях совершается то или иное действие. Они позволяют спрайтам передавать, принимать и реагировать на управляющие сообщения.
Команда | Назначение |
Когда щелкнут по флажку | Запускает скрипт в ответ на щелчок по зеленому флажку. Это обычный способ запуска всей модели. |
Когда нажата () клавиша | Запускает выполнение блока команд в ответ на нажатие выбранной клавиши. Позволяет передать управление на клавиатуру. Например: когда нажата стрелка вверх, повернуть вверх |
Ждать () | Команда ожидания. Параметр () указывает сколько секунд следует ждать. |
Всегда() | Блок команд, заключенных внутрь конструкции будет выполняться постоянно. |
Если <> | Условие, при выполнении которого должны выполняться команды, заключенные внутри конструкции. Если не выполняется, то никаких действий |
Если <> или | Условие, при выполнении которого должны выполняться команды, заключенные внутри конструкции если. Если не выполняется, то нужно перейти к действиям внутри блока или. |
Повторить() | Повторение. Параметр указывает, сколько раз нужно повторить блоки команд, заключенные внутри блока повторить() Например, повторить 20 (идти 50 повернуть 45) |
Передать () | Передать сообщение. Переданное сообщение может запускать активность другого исполнителя. Работает в сочетании с командой «Когда я получил ()» (Про блоки Перередать и Когда получил у нас отдельный урок) |
Когда получил () | Запускает выполнение блока команд в ответ на полученное сообщение. Работает в сочетании с «передать ()» |
Всегда если () | Выполняется до тех пор, пока условие () верно |
Ждать до () | Ждать, пока не выполнится условие |
Остановить скрипт | Остановить выполнение программы для данного исполнителя |
Остановить всё | Остановить выполнение всех программ |
Задания
- Опишите на языке Scratch следующие истории:
- Пустыня. На переднем плане лежит камень. На горизонте появляется всадник на лошади. Они медленно приближаются. Всадник думает - "До цели осталось ... шагов". Лошадь думает "Я проскакала уже ... шагов". Когда лошадь касается камня, всадник слезает с лошади.
- Та же сцена, но всадников несколько. Когда они подъезжают к камню и слезают с лошадей, каждый всадник приветствует других.
- Модифицируйте историю. Украсьте ее своим региональным колоритом и представьте на сайте Scratch в группе RuTu
- Предложите свой вариант истории, в которой менялись бы положения, размеры, реплики. Опубликуйте одну или несколько таких историй в группе Школа Scratch