Содержимое ящиков. Управляющие программы - скрипты
Перейдем к ящичкам, в которых сложены кирпичики. Если мы посмотрим на содержимое ящичков, то увидим, что содержимое отличается не только цветом. Есть ящички, где большей частью лежат строительные блоки, которые можно объединять друг с другом. Это кирпичики для изменения внешнего вида объектов, управления звуками, перемещения объектов и рисования. Эти строительные кирпичики делятся на закрытые и самодостаточные, к которым ничего добавить нельзя и внутрь которых ничего нельзя добавить. Например:
Если край, оттолкнуться
Есть кирпичики, в которых можно изменять значения или вставлять в них значения. Например: Идти(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