Последовательное и одновременное выполнение скриптов в Scratch

Последовательное и одновременное выполнение скриптов в Scratch

Все статьи
Want create site? Find Free WordPress Themes and plugins.
Урок: Последовательное и одновременное выполнение скриптов в Scratch

Одновременное выполнение скриптов (программ)

В Scratch можно сделать так, что два (или больше) скрипта
одновременно будет выполнять вообще один объект. Допустим, кот будет шагать и при этом менять свои размеры, форму и другие свойства. При этом ходьба и изменение свойств друг с другом никак не будут связаны. Сделать это можно, например, разместив два разных скрипта в ячейке скрипты для кота. Составьте программы по образцу:Последовательное и одновременное выполнение скриптов в Scratch

Как работает одновременное выполнение скриптов в Scratch? При щелчке на кнопке запуска начнут работать оба скрипта сразу. Первый будет заставлять кота ходить слева направо. Это нам уже знакомо. Второй скрипт будет менять внешний вид кота. Фиолетовые команды связаны с кнопкой внешность. Во втором скрипте выше используется команда изменить … эффект на …. После слова «изменить» в раскрывающемся списке можно выбрать понравившийся нам эффект, а в поле с числом прописать, на сколько единиц его изменять. Команда убрать графические эффекты возвращает объект к его исходному внешнему виду. Итак, второй скрипт в цикле всегда выполняет следующие действия: изменяет цвет объекта → оставляет объект в таком состоянии на 1 секунду → возвращает объект к прежнему цвету → искривляет объект с помощью завихрения → оставляет в таком состоянии на 1 секунду → возвращает к исходной форме. 

Последовательное выполнение скриптов (программ)

При последовательном выполнении скриптов сначала все действия должен совершать один объект, затем второй и т.д. Как же это можно сделать в Scratch?
Например, можно просто использовать команду ждать в начале скрипта
второго объекта. Но на самом деле это будет никакое не последовательное
выполнение скриптов, т.к. оба они начнут работать одновременно, просто у второго объекта сначала будет долго работать команда ждать. Хотя на сцене можно таким образом получить желаемый эффект: сначала действия будет совершать один объект, а через некоторое время — другой.
Рассмотрим, более грамотный способ организации последовательного
выполнения скриптов.

Когда один объект завершает выполнение ряда своих команд, он должен подать какой-нибудь сигнал-сообщение второму объекту, а тот, в свою очередь, должен его принять. В Scratch для этого есть две специальные команды, связанные с кнопкой контроль: передать … и когда я получу …. Команда передать … дается объекту, который уже закончил все или некоторые свои действия, а когда я получу … применяется к объекту, который начинает работать вторым. Вместо трех точек в этих командах вписывается сообщение, которые мы сами назначаем.

Организуем для двух объектов последовательное выполнение скриптов.
Допустим, по нашему сценарию планируется такая анимация: кот сначала ходит туда-сюда, после чего исчезает, и по экрану начинает метаться сыр (например).

Первый скрипт кота такой:Последовательное и одновременное выполнение скриптов в Scratch

В команде передать … надо вставить сообщение. Для этого открывается
специальное окно, куда можно его вписать. Команда спрятаться используется для того, чтобы скрыть кота, после того, как он пошлет сообщение. Команда показаться в начале скрипта требуется, чтобы снова отобразить объект, если он был спрятан до этого. Понятно, что при первом выполнении скрипта она не играет никакой роли.
Цикл всегда был заменен на цикл повторить …, т.к. нам больше не надо, чтобы объект двигался всегда. Соберите такой скрипт:Последовательное и одновременное выполнение скриптов в Scratch


Теперь посмотрим, что будет делать второй объект. Он должен получить
сообщение, после чего совершить какие-нибудь действия.

Таким образом, второй скрипт не начнет выполняться, пока первый не
передаст ему сообщение «первый вызывает второго». Обратите внимание, что команда спрятаться первого объекта находится ниже, чем передать …. Это значит, что у нас не совсем последовательное выполнение скриптов. Ведь первый еще не завершается, когда начинается второй.

Did you find apk for android? You can find new Free Android Games and apps.

Добавить комментарий