Введение В Блоки
MOCPilot использует визуальную систему блочного программирования, которая по внешнему виду и взаимодействию похожа на Scratch. У каждого блока есть своя роль, а допустимые комбинации определяют поток выполнения и поток данных в скрипте. Используется логика drag-and-drop и паттерны взаимодействия в стиле Scratch, чтобы создавать программы было удобно и привычно.
Это другая блочная система со своим набором блоков и поведением. Программы MOCPilot не совместимы с проектами Scratch: программы MOCPilot нельзя импортировать в Scratch, а программы Scratch нельзя импортировать в MOCPilot.
Формы Блоков И Их Назначение
Стартовые Блоки
Запускают скрипт при наступлении определенного события. К ним можно присоединять блоки только снизу.
Командные Блоки
Основные командные блоки, которые выполняют действия.
C-Блоки
Управляющие блоки C-образной формы, которые содержат вложенные стеки блоков (циклы/условия).
Репортер-Блоки
Возвращают значения, например числа или строки.
Логические Блоки
Возвращают только истина или ложь, обычно используются в условиях.
Завершающие Блоки
Завершают скрипт и не позволяют присоединять блоки снизу.
Стек Блоков
Стек блоков — это последовательность соединенных блоков, которая выполняется как единый скрипт сверху вниз. Обычно стек начинается с блока события, после чего присоединенные блоки выполняются по порядку.
Модель Выполнения Скрипта
- Скрипт обычно начинается с блока события.
- Соединенные блоки выполняются сверху вниз.
- Несколько скриптов могут работать параллельно.
- Блоки сообщений/рассылки используются для синхронизации скриптов.
- Стек блоков — это последовательность блоков, соединенных между собой.
Данные И Значения
- Репортер-блоки можно вкладывать в поля ввода команд и условий.
- Переменные хранят переиспользуемые значения между блоками и скриптами.
- Списки хранят упорядоченные коллекции для истории, очередей и поиска данных.
События И Время
- Блоки событий реагируют на ввод пользователя, состояние хаба, датчики или сообщения.
- События на основе таймера и датчиков могут срабатывать очень часто.
- Используйте пороги, фильтрацию или короткие задержки, чтобы уменьшить шумные повторные срабатывания.
Хаб, Порты И Контроллеры
- Блоки хаба работают в контексте хаба и портов.
- Некоторые блоки доступны только для отдельных семейств хабов/устройств.
- Блоки экранных контроллеров и геймпада дают ввод во время выполнения и управление интерфейсом.
Рекомендуемый Порядок Работы
- Начните с одного блока события и минимального скрипта.
- Сразу проверьте направление и диапазоны моторов/датчиков.
- Вынесите повторяющуюся логику в сообщения и вспомогательные скрипты.
- Перед финальной настройкой добавьте защиту (ограничения, остановки, резервные значения).
Типичные Ошибки
- Отсутствие стартового блока события означает, что скрипт не запустится.
- Неверный выбор хаба/порта приводит к отсутствию видимого эффекта.
- Смешивание типов значений (текст/число/boolean) может дать некорректную логику.
- Частые события без фильтрации могут перегрузить поведение программы.
Структура Документации В Этом Разделе
Используйте страницы категорий в этом порядке:
- Свет
- Моторы
- Датчики
- События
- Управление
- Операторы
- Переменные
- Списки
- Мои Блоки
- Экранные контроллеры
- Геймпад