Материал из Скретч Вики
Scratchblocks (также известный как плагин блоков) — это плагин для Скретч Вики и форумов (хотя он поддерживает только блоки 2.0 на форумах), поддерживаемый пользователем blob8108, который позволяет создавать скриптовые изображения с помощью текста, который разбирается и отображается. С самим плагином можно поиграть на его домашней странице. Например:
определить танцевать (скорость) задать [расстояние v] значение ((скорость) * (расстояние до [ v])) повторять пока не <(таймер) > [10]> идти (расстояние :: variables) шагов следующий костюм играть ноту (выдать случайное от (40) до (100)) (0.5) тактов :: music сказать [Вау! Скрипты Cкретча на вики!] end
Базовый синтаксис
На Скретч Вики код блоков должен быть внутри тегов <scratchblocks>...</scratchblocks>
, но на форумах их надо вставлять внутри тегов [scratchblocks]...[/scratchblocks]
. На Скретч Вики, уникально, один блок можно вставить внутри тегов <sb>...</sb>
, чтобы не разрывать строки.
Плагин блока пытается максимально точно соответствовать написанному вами коду и не проверяет правильность синтаксиса. Текст блока используется только для поиска правильного цвета.
Базовый синтаксис для Scratchblocks:
Код | Значение кода | Пример | Результат |
---|---|---|---|
имя блока |
блок | стереть всё |
стереть всё |
end |
окончает обвивающий блок (нужен только если есть блоки после обвивающего блока) | повторить (5) раз идти (10) шагов end сказать [Готово!] |
повторить (5) раз идти (10) шагов end сказать [Готово!] |
[текст] |
ввод текста | сказать [Привет, мир!] |
сказать [Привет, мир!] |
(переменная) |
переменная или блок репортёр | (положение x) |
(положение x) |
(12.34) |
ввод числа | ждать (0.5) секунд |
ждать (0.5) секунд |
(пункт v) |
ввод вставляемого выпадающего меню (можно вставить блок репортёр) | передать (Ты выиграл! v) |
передать (Ты выиграл! v) |
[пункт v] |
ввод не вставляемого выпадающего меню (нельзя вставить репортёр) | задать [моя переменная v] значение (0) |
задать [моя переменная v] значение () |
<булев> |
логический блок | <мышь нажата?> |
<мышь нажата?> |
[#ABCDEF] |
ввод цвета | <касается цвета [#0000FF]?> |
<касается цвета [#0000FF]?> |
определить |
шапка дополнительного блока | определить прыжок (высота) |
определить прыжок (высота) |
// комментарий |
комментарий | показаться // теперь ты меня видишь! |
показаться // теперь ты меня видишь! |
... |
блок-заполнитель, обозначающий произвольный скрипт | если <(моя переменная) = [это]>, то ... end |
если <(моя переменная) = [это]>, то ... end |
Расширенный синтаксис
Ниже приводится более подробный синтаксис scratchblocks3.
Код | Значение кода | Пример | Результат |
---|---|---|---|
блок { другие блоки } необязательный текст |
Свои обвивающие блоки | делать { ... } в [Спрайт2 v]::control |
делать { ... } в [Спрайт2 v]::control |
(обычный блок как репортёр :: stack) |
Вызывает блок, имеющий в качестве входа обычный блок. | украсить (показаться :: looks stack) |
украсить (показаться :: looks stack) |
:: [категория или #цвет] [форма] |
Заставляет блок выглядеть определенным образом.[1]
#цвет может быть любым шестнадцатеричным цветом RGB, например, #ff0000, который дает чистый красный цвет. Возможные формы включают:
|
крутой блок:: #ff00ff cap |
крутой блок:: #ff00ff cap |
::ring |
Повторяет функцию Snap! "ringify". Ее можно использовать в сочетании с приведенным выше синтаксисом двоеточия. Он похож на репортер, но имеет отличие. | Посмотри,({Это кольцо!}@addInput::ring |
Посмотри,({Это кольцо!}@addInput::ring |
Инструменты-помощники
Здесь представлены некоторые инструменты, которые позволят преобразовать реальные блоки в проектах Скретч в код scratchblocks.
Скретч 3.0
Пользователь blob8108 разработал блоки Скретч 2.0, который теперь также поддерживает блоки Скретч 3.0. Он также разработал конвертер, написанный на JavaScript, который преобразует скрипты всего проекта в Scratchblocks. Его можно найти здесь.
Скретч 2.0
Пользователь jvvg разработал конвертер, написанный на PHP, который преобразует скрипты в рюкзаке. Тему на форуме, посвященную этому конвертеру, можно посмотреть здесь.
Скретч 1.4
Пользователь LS97 разработал плагин для самой программы Скретч, который конвертирует скрипт в код scratchblocks (оригинал). Тему на устаревшем форуме, посвященную этому плагину, можно посмотреть здесь.
Внешние ссылки
Примечания
- ↑ Возможные варианты категорий включают:
- motion
- looks
- sound
- pen
- variables
- list
- events
- control
- sensing
- operators
- custom
- custom-arg
- extension
- grey
- undefined