Тип урока: Изучение нового материала


Объяснение нового материала



бет3/5
Дата20.11.2022
өлшемі2.03 Mb.
#465293
түріУрок
1   2   3   4   5
Урок информатики Skretch (5 класс)

Объяснение нового материала
 В одном проекте может быть множество скриптов. Например, если есть два героя-спрайта, вероятно у каждого будет свой скрипт, своя маленькая программа. А весь проект – это большая общая программа, состоящая из множества мелких. В программировании отдельные части большой программы могут выполняться либо по очереди друг за другом, то есть последовательно, либо одновременно друг с другом, то есть параллельно. Во втором случае говорят о многопоточности, то есть каждый скрипт работает в своем потоке, а разные потоки текут во времени одновременно.
Когда для каждого спрайта одного проекта вы добавляете свою конструкцию блоков, которая начинается с команды "когда флажок нажат", то как только игра запускается, оба героя начинают параллельно независимо друг от друга выполнять свои команды. Это пример одновременного выполнения скриптов.
Более того, один и тот же спрайт может содержать два независимых скрипта, каждый из которых будет выполняться в своем потоке. Рассмотрим пример. Пусть кот ходит по сцене и при этом меняет свой костюм.
Поскольку при запуске игры один из спрайтов должен быть видимым, а другой невидимым, воспользуемся командами "показаться" и "спрятаться". Вынесем их в отдельные скрипты, чтобы они не мешались в основной логике игры.

Теперь когда кот выполнит свою порцию шагов, с помощью блока "передать сообщение1" он пошлет сообщение, которое может перехватить любой объект программы. В данном случае сообщение будет ждать только собака, потому что только ей мы добавили команду "когда я получу сообщение1".
И как только она получит сообщение, она покажется и начнет ходить.
В итоге получится, что скрипты, отвечающие за ходьбу кота и собаки, будут выполняться последовательно, один за другим.
Команда "передать сообщение" и "когда я получу сообщение" могут передавать любое сообщение, а не только "сообщение1". В проекте могут циркулировать десятки различных сообщений, которые одни объекты посылают, а другие ждут.
Чтобы добавить новое сообщение, надо кликнуть по маленькому треугольнику в этих командах и в раскрывающемся списке выбрать "Новое сообщение".

После этого на экране появится диалоговое окно, куда вводится сообщение. Например, "кот вызывает собаку".
Когда сообщение создано, оно становится доступным через раскрывающийся список команд "передать …" и "когда я получу …", где вместо точек может стоять любое сообщение.
При этом надо понимать, что если, например, кот передает сообщение "кот вызывает собаку", то собака должна получать именно это сообщение, а не какое-либо другое. Иначе она не будет реагировать.
Задание
Составьте программу по следующему описанию:

  1. Кот недолго ходит по сцене, потом останавливается, но не исчезает.

  2. Появляется второй спрайт и тоже недолго ходит по сцене.

  3. Когда второй спрайт останавливается, кот снова начинает недолго ходить по сцене.

  4. Когда кот останавливается во второй раз, на сцене появляется третий недолго бегающий спрайт.

При выполнении задания также воспользуйтесь блоком "передать сообщение и ждать до конца". Эта команда останавливает текущий скрипт до тех пор, пока не выполнится скрипт, который получает сообщение.


Достарыңызбен бөлісу:
1   2   3   4   5




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет