Пакет объектов "Сокеты"
Сокеты – это механизм, позволяющий соединить два и более объекта в один. В окне библиотеки изображены следующим образом

В пакет входит два объекта:
- Подключаемая точка (вилка);
- Точка для подключения (розетка).
Подключение происходит путем подключения объекта-вилки к объекту-розетки
Содержание
Использование
Для использования механизма соединения двух объектов необходимо поместить оба объекта в иерархию соединяемых объектов.
В качестве примера были взяты куб и пирамида

После создания объектов на сцене необходимо создать и два объекта – подключаемая точка (вилка) и точка для подключения (розетка). Также их необходимо поместить в иерархию объектов, которые нужно соединить

Размер точки определяет область взаимодействия с точкой. Поворот регулирует соединение объектов – после соединения оси этих точек совпадут.
Также каждая из точек содержит свои настройки. Подключаемая точка (вилка) имеет следующие поля:

- Может ли быть разъединен – поле, отвечающее за возможность разделения точек после соединения;
- Может ли соединяться – поле, отвечающее за возможность соединения точек;
- Ключ подключения – ключевое слово, которое должно быть одинаковым на двух точках для возможного соединения.
Каждая из точек содержит свои настройки. Подключаемая точка (вилка) имеет следующие поля:

- Может ли соединяться – поле, отвечающее за возможность соединения точек;
- Ключ подключения – ключевое слово, которое должно быть одинаковым на двух точках для возможного соединения
После того, как у родительских объектов была включена возможность взятия в руку можно попробовать соединить объекты

Поднесение объектов друг к другу

Соединение после отпускания пирамиды
Также можно добавлять большое количество точек соединения к объекту


Blockly
В каждом из объектов заложен своя логика. Она необходима для регулирования взаимодействия точек и создания сценария с этими взаимодействиями
Подключаемая точка (вилка)
В подключаемой точке заложен следующий набор блоков:
Логика
![]()
Данный блок возвращает «истина», если установлен флаг возможности разъединения
![]()
Данный блок возвращает «истина», если установлен флаг возможности соединения
![]()
Данный блок возвращает «истина», если точка подключена к другой точке
Действия
![]()
Данный блок позволяет подключить объект к другому объекту
![]()
Данный блок позволяет подключить объект к другому объекту за указанное время. За это время объект медленно перемещается в сторону целевого объекта и подключается
![]()
Данный блок задает возможность отсоединения при взятии в руку
![]()
Данный блок при выполнении отсоединяет подключенную точку
![]()
Данный блок задает возможность соединения к другой точке
События

Данное событие вызывается при подключении. Аргумент Point содержит в себе объект, точка которого была подключена

Данное событие вызывается при отключении. Аргумент Point содержит в себе объект, точка которого была отключена

Данное событие вызывается при появлении превью. Аргумент Point содержит в себе объект, точка которого была поднесена к данной.

Данное событие вызывается при скрытии превью. Аргумент Point содержит в себе объект, точка которого была поднесена к данной.
Точка для подключения (розетка)
В точке для подключения заложен следующий набор блоков:
Логика
![]()
Данный блок возвращает «истина», если установлен флаг возможности соединения
![]()
Данный блок возвращает «истина», если точка подключена к другой точке
Действия
![]()
Данный блок позволяет подключить объект к другому объекту
![]()
Данный блок позволяет подключить объект к другому объекту за указанное время. За это время объект медленно перемещается в сторону целевого объекта и подключается
![]()
Данный блок позволяет отобразить прототип подключаемого объекта
![]()
Данный блок позволяет скрыть прототип
![]()
Данный блок позволяет отобразить прототип наиболее подходящего объекта
![]()
Данный блок при выполнении отсоединяет подключенную точку

Данный блок задает возможность соединения к другой точке
События

Данное событие вызывается при подключении. Аргумент Point содержит в себе объект, точка которого была подключена

Данное событие вызывается при отключении. Аргумент Point содержит в себе объект, точка которого была отключена

Данное событие вызывается при появлении превью. Аргумент Point содержит в себе объект, точка которого была поднесена к данной

Данное событие вызывается при скрытии превью. Аргумент Point содержит в себе объект, точка которого была поднесена к данной