Pipes — различия между версиями
Oilich (обсуждение | вклад) (→Общее Описание) |
Vefimov (обсуждение | вклад) (→Файл уровней) |
||
(не показано 57 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
− | + | {{TOC right}} | |
+ | [[Файл:Sc_Bed_Times.jpg|200px|right]] | ||
− | + | Pipes - [[Object|объект]], который обладает механикой сбора трубопровода (микросхемы и т.п.) путем поворота отдельных элементов . Объект реализован в виде матрицы, каждая ячейка которой содержит вращающийся элемент. При инициализации объекта pipes все его элементы (ячейки) случайным образом поворачиваются, разрывая соединение входа и выхода. Каждый клик на элемент поворачивает его по часовой стрелке на 90 градусов. Игра считается завершенной, если между входом и выходом трубопровода образуется цепь правильно повернутых элементов. | |
− | + | '''Общие параметры''' | |
− | + | (см. описание [[Object|Object]]) | |
− | |||
+ | *'''положение''' - координаты левого верхнего угла игрового поля по оси x и y; | ||
+ | *'''размер''' - ширина и высота одной ячейка трубопровода. | ||
− | + | == Основные параметры == | |
− | [[Файл: | + | [[Файл:Pipes_0.jpg|200px|right]] |
+ | '''Группа - внешний вид''': | ||
+ | *'''картинка''' - анимация, состоящая из элементов трубопровода начиная с пустого, перетаскивается мышкой из базы ресурсов; | ||
+ | *'''колонок''' - количество ячеек с элементами по горизонтали; | ||
+ | *'''строчек''' - количество ячеек с элементами по вертикали; | ||
+ | *'''время поворота''' - время поворота элемента в миллисекундах. | ||
− | + | '''Группа - 'внешний вид - эффект луча'''': | |
− | |||
− | * | + | *'''прямая (|)''' - Графический ресурс луча проходящего через ячейку по прямой вертикально (соотв. кадру 1); |
+ | *'''угол''' - Графический ресурс луча проходящего через ячейку с зеркалом (соотв. кадру 2); | ||
+ | *'''крест''' - Графический ресурс луча проходящего через ячейку с зеркалом (соотв. кадру 4,5); | ||
− | [[Файл: | + | Все кадры анимации, указанной в поле ''картинка'', должны быть одного размера. Последовательность кадров в анимации должна строго соответствовать приведенной на рисунке ниже: |
+ | [[Файл:Трубы_Fishky.jpg|300px|right]] | ||
+ | * ''Нулевой кадр'' - пустой; | ||
+ | * ''Первый кадр'' - прямой элемент с двумя соединениями на верхней и нижней гранях; | ||
+ | * ''Второй кадр'' - изогнутый элемент с двумя соединениями на правой и нижней гранях; | ||
+ | * ''Третий кадр'' - тройник с соединениями на правой, нижней и левой гранях; | ||
+ | * ''Четвертый кадр'' - крестик с соединениями на всех четырех гранях; | ||
+ | * ''Пятый кадр'' - пересечение двух прямых не совмещенных элементов (верхнее и нижнее соединения относятся к одному элементу, правое и левое ко второму); | ||
+ | * ''Шестой кадр'' - два изогнутых не совмещенных элемента (правое и нижнее соединения относятся к одному элементу, верхнее и левое ко второму). | ||
− | + | '''Группа - вход''': | |
− | *''' | + | *'''x''' - номер столбца ячейки, с которой будет начинаться трубопровод, нумерация начинается с 0 и следует слева направо; |
+ | *'''y''' - номер строка ячейки, с которой будет начинаться трубопровод, нумерация начинается с 0 и следует сверху вниз; | ||
+ | *'''грань''' - номер грани ячейки элемента, которая считается входом (если отправной точкой является верхняя грань, то значение поля '''0''', правая грань - '''1''', нижняя - '''2''', левая - '''3'''). | ||
− | + | '''Группа - выход''': | |
− | ' | ||
− | *''' | + | *'''x''' - номер столбца ячейки, которой будет заканчиваться трубопровод, нумерация начинается с 0 и следует слева направо; |
+ | *'''y''' - номер строка ячейки, которой будет заканчиваться трубопровод, нумерация начинается с 0 и следует сверху вниз; | ||
+ | *'''грань''' - номер грани ячейки элемента, которая считается выходом (верхняя грань - значение '''0''', правая - '''1''', нижняя - '''2''', левая - '''3'''). | ||
− | + | '''Группа - настройки уровня''': | |
− | + | *'''Расклад''' - "рисунок" собранного уровня в виде массива пар чисел через запятую, например, ''1,0,0,0,2,3,..'' и т.д. Каждая пара чисел описывает один элемент (ячейку), первое число в паре - номер кадра анимации, который будет рисоваться в ячейке, второе число - угол поворота этого кадра ('''0''' - без поворота, '''1''' - поворот на 90 по часовой стрелке, '''2''' - поворот на 180 по часовой, '''3''' - поворот на 270 по часовой). Элементы описываются построчно, начиная с левого верхнего. Для пустых ячеек первое число в паре - '''0''' (начальный пустой кадр анимации). | |
+ | *'''файл уровней''' - Путь к файлу с описанием уровней; | ||
+ | *'''номер уровня''' - Номер уровня. | ||
− | == | + | '''Проверка висячих''' - 1- не считать уровень пройденным, если у присоединенного ко вхожу узла есть свободные соединения нет=0, да=1"; |
− | + | '''вращать кресты''' - условие сбора уровня, принимает значение '''0''' или '''1'''. 1-крестообразные ячейки будут вращаться, 0-не будут (речь идет о кадрах 4 и 5, эффекта такое вращение в любом случае не дает нет=0, да=1". | |
− | + | == Добавляемые параметры == | |
− | + | [[Файл:Pipes_1.jpg|200px|right]] | |
− | + | Меню выбора ''Добавляемые параметры'' к объектам активируется по правой кнопки мыши. | |
− | |||
− | |||
− | |||
− | + | [[Файл:+.png]] '''Вход в трубопровод''' (используется, если входов больше одного): | |
− | |||
− | ''' | ||
− | |||
− | |||
− | |||
− | + | *'''x''' - номер столбца ячейки, с которой будет начинаться трубопровод; | |
+ | *'''y''' - номер строка ячейки, с которой будет начинаться трубопровод; | ||
+ | *'''грань''' - номер грани ячейки элемента, которая считается входом. | ||
− | ''' | + | [[Файл:+.png]] '''Выход из трубопровода''' (используется, если выходов больше одного): |
− | |||
− | |||
− | |||
− | + | *'''x''' - номер столбца ячейки, которой будет заканчиваться трубопровод; | |
− | * | + | *'''y''' - номер строка ячейки, которой будет заканчиваться трубопровод; |
+ | *'''грань''' - номер грани ячейки элемента, которая считается входом. | ||
− | + | [[Файл:+.png]] '''Фишка повернута правильно''': | |
− | + | *'''объект''' - объект, который перейдет в новое состояние, если элемент трубопровода повернуть правильно; | |
− | *'''объект''' - | + | *'''состояние''' - новое состояние объекта из предыдущего поля. |
− | *'''состояние''' - | ||
− | ''' | + | [[Файл:+.png]] '''Изменить состояние объекта''': |
− | *'''объект''' - | + | |
− | *'''параметр''' - | + | *'''объект''' - объект, который перейдет в новое состояние по собиранию pipes; |
+ | *'''состояние''' - новое состояние объекта из предыдущего поля. | ||
+ | |||
+ | [[Файл:+.png]] '''Изменить параметр (свойство) объекта''': | ||
+ | |||
+ | *'''объект''' - объект, которому будет меняться параметр по собиранию pipes; | ||
+ | *'''параметр''' - изменяемый параметр; | ||
+ | *'''значение''' - новое значение параметра. | ||
+ | |||
+ | == Состояния == | ||
+ | |||
+ | Объекту pipes можно передавать следующие состояния: | ||
+ | *'''init''' - элементы трубопровода поворачиваются произвольным образом, разрывая соединение входа с выходом; | ||
+ | *'''skip''' - каждый элемент поворачивается в положение указанное в поле '''расклад''' за время поворота, после чего pipes считается собранным, и устанавливаются добавляемые параметры, если они есть. | ||
+ | *'''hide_effect''' - выключает отображение луча, для включения нужно или переинитить объект или нажать на любую ячейку(кроме ячеек с 4 и 5 фреймом). | ||
+ | |||
+ | == Файл уровней == | ||
+ | '''Важно!''' После экспорта файл уровней нужно поместить в папку к layout.xml. Иначе он не попадет в сборку и на устройстве игра работать не будет! | ||
+ | |||
+ | Для объекта можно задать несколько уровней, с помощью xml-файла. При этом поле "расклад" в самом объекте должно быть пустым, иначе будет грузиться уровень, прописанный в этом поле. | ||
+ | |||
+ | Пример файла уровней: | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | |||
+ | <levels> | ||
+ | |||
+ | <level id="0" field="2,0,5,0,2,1,5,0,5,0,2,0,5,0,2,0,5,0,5,0,2,1,5,0,2,2,2,3,5,0,5,0,5,0, | ||
+ | 5,0,5,0,2,0,5,0,2,0,5,0,2,0,2,0,5,0,2,3,5,0,2,2,5,0,5,0,2,0,2,0,5,0,2,0,5,0" | ||
+ | fixed="12,0" /> | ||
+ | |||
+ | <level id="1" field="2,0,5,0,2,0,5,0,5,0,2,1,5,0,2,0,5,0,5,0,2,1,5,0,5,0,2,2,5,0,5,0,5,0, | ||
+ | 2,3,5,0,2,1,5,0,2,1,5,0,2,0,2,2,5,0,2,3,5,0,2,2,5,0,5,0,2,1,2,1,5,0,2,0,5,0" | ||
+ | fixed="13,0" /> | ||
+ | |||
+ | <level id="2" | ||
+ | field="5,0,5,0,2,0,5,0,5,0,2,1,5,0,2,0,5,0,5,0,5,0,2,2,5,0,2,2,5,0,5,0,2,0,5,0,5,0,5,0,5,0, | ||
+ | 2,2,5,0,2,2,2,0,5,0,2,3,5,0,2,2,5,0,5,0,5,0,2,1,5,0,2,1,5,0" | ||
+ | fixed="13,0" /> | ||
+ | </levels> | ||
+ | |||
+ | *'''level id''' - номер уровня | ||
+ | *'''field''' - описание игрового поля | ||
+ | *'''fixed''' - ячейки с заданным начальным положением | ||
+ | |||
+ | В параметре field описываем конфигурацию собранного расклада игры. Отдельная ячейка описывается 2 числами: 1 - тип фишки(номер фрейма в анимации); 2 - угол поворота по часовой стрелке(возможные значения: 0, 1, 2, 3). | ||
+ | |||
+ | В параметре fixed описываем ячейки с заданным начальным углом. Ячейка описывается 2 числами: 1 - номер ячейки на поле(нумерация идет с левого верхнего угла, начинается с 0); 2 - начальный угол поворота по часовой стрелке(возможные значения: 0, 1, 2, 3). | ||
+ | |||
+ | Для смены уровня в объекта нужно изменить параметр level_id и вызвать состояние init. | ||
+ | |||
+ | == Вариант игры: прохождение луча == | ||
+ | [[Файл:Pip1.png|200 px|thumb|right]] | ||
+ | В объект был добавлен функционал, который позволяет сделать миниигру, цель которой - провести луч с точки А в точку Б используя систему зеркал. | ||
+ | |||
+ | Для такого вида труб тоже нужна фреймовая анимация из 7 кадров. 6 из них - пустые кадры (рационально добавить в анимацию 1 пустой кадр и его раскопировать для нужных фреймов) и кадр для отображения зеркала, которое можно вращать(2 фрейм анимации). Также для корректной работы нужно выставить параметр "вращать кресты" в "нет" - это запретит вращать ячейки с 4 и 5 фреймом анимации труб. | ||
+ | |||
+ | Игровое поле набирается только ячейками с 2 и 5 фреймом: 2 фрейм - ячейка с зеркалом, 5 фрейм - через которую проходит луч. | ||
+ | Пример уровня: | ||
+ | "2,0,5,0,2,1,5,0,5,0,2,0,5,0,2,0,5,0,5,0,2,1,5,0,2,2,2,3,5,0,5,0,5,0,5,0, | ||
+ | 5,0,2,0,5,0,2,0,5,0,2,0,2,0,5,0,2,3,5,0,2,2,5,0,5,0,2,0,2,0,5,0,2,0,5,0" | ||
+ | |||
+ | [[Файл:Pip3.png|thumb|right]] | ||
+ | Уровень можно указать 2 способами: | ||
+ | # в поле "расклад" объекта pipes, при этом файл уровней игнорируется | ||
+ | # с помощью файла уровней | ||
+ | При использовании файла уровней есть возможность принудительного задания начального положения фишки, что может быть нужно для получения корректного начального отображения. | ||
+ | |||
+ | Графика для отображения эффекта прохождения луча добавляется в вкладке "внешний вид - эффект луча". В ней указываем 3 графических ресурса: | ||
+ | [[Файл:Pip2.png|thumb|right]] | ||
+ | * ''прямая'' (|) - ресурс для отображения луча проходящего через ячейку(вертикальная прямая, как на 1 кадре анимации для обычных труб) | ||
+ | *''угол'' - ресурс для отображения луча, который отражается зеркалом(должен быть аналогичен 2 кадру для анимации труб) | ||
+ | *''крест'' - ресурс для отображения 2 лучей, которые пересекаются (аналогичен 5 кадру анимации для труб) | ||
+ | |||
+ | При передаче объекту состояния skip, он отрабатывает следующим образом: | ||
+ | # выключается луч | ||
+ | # ячейки разворачиваются в правильную позицию | ||
+ | # включается луч | ||
+ | |||
+ | Также объекту можно передать состояние hide_effect, которое выключает отображение луча. После этого луч включится или при повороте любого зеркала или при передаче объекту init. | ||
+ | |||
+ | Пример: S:\!MOBILE\!!!EditorGames\Wiki_sample | ||
+ | |||
+ | Файл: pipes_light.zip | ||
+ | |||
+ | == Примечания и дополнения == | ||
+ | |||
+ | Вариантов собранного трубопровода может быть несколько, в зависимости от рисунка, но в случае скипа всегда будет рисоваться вариант, указанный в раскладе. | ||
+ | |||
+ | Трубопровод может иметь несколько входов и выходов. Линия, которая строится при этом, должна соединять в одну сеть все входы и выходы (возможность ставить в соответствие каждому входу свой выход пока не реализована). | ||
+ | |||
+ | == Пример == | ||
+ | |||
+ | [http://fs5.absolutist.com/files/wikisample/Pipes.rar Download] | ||
+ | |||
+ | [[Category:Game mechanic]] |
Текущая версия на 05:08, 3 апреля 2015
Pipes - объект, который обладает механикой сбора трубопровода (микросхемы и т.п.) путем поворота отдельных элементов . Объект реализован в виде матрицы, каждая ячейка которой содержит вращающийся элемент. При инициализации объекта pipes все его элементы (ячейки) случайным образом поворачиваются, разрывая соединение входа и выхода. Каждый клик на элемент поворачивает его по часовой стрелке на 90 градусов. Игра считается завершенной, если между входом и выходом трубопровода образуется цепь правильно повернутых элементов.
Общие параметры (см. описание Object)
- положение - координаты левого верхнего угла игрового поля по оси x и y;
- размер - ширина и высота одной ячейка трубопровода.
Основные параметры
Группа - внешний вид:
- картинка - анимация, состоящая из элементов трубопровода начиная с пустого, перетаскивается мышкой из базы ресурсов;
- колонок - количество ячеек с элементами по горизонтали;
- строчек - количество ячеек с элементами по вертикали;
- время поворота - время поворота элемента в миллисекундах.
Группа - 'внешний вид - эффект луча':
- прямая (|) - Графический ресурс луча проходящего через ячейку по прямой вертикально (соотв. кадру 1);
- угол - Графический ресурс луча проходящего через ячейку с зеркалом (соотв. кадру 2);
- крест - Графический ресурс луча проходящего через ячейку с зеркалом (соотв. кадру 4,5);
Все кадры анимации, указанной в поле картинка, должны быть одного размера. Последовательность кадров в анимации должна строго соответствовать приведенной на рисунке ниже:
- Нулевой кадр - пустой;
- Первый кадр - прямой элемент с двумя соединениями на верхней и нижней гранях;
- Второй кадр - изогнутый элемент с двумя соединениями на правой и нижней гранях;
- Третий кадр - тройник с соединениями на правой, нижней и левой гранях;
- Четвертый кадр - крестик с соединениями на всех четырех гранях;
- Пятый кадр - пересечение двух прямых не совмещенных элементов (верхнее и нижнее соединения относятся к одному элементу, правое и левое ко второму);
- Шестой кадр - два изогнутых не совмещенных элемента (правое и нижнее соединения относятся к одному элементу, верхнее и левое ко второму).
Группа - вход:
- x - номер столбца ячейки, с которой будет начинаться трубопровод, нумерация начинается с 0 и следует слева направо;
- y - номер строка ячейки, с которой будет начинаться трубопровод, нумерация начинается с 0 и следует сверху вниз;
- грань - номер грани ячейки элемента, которая считается входом (если отправной точкой является верхняя грань, то значение поля 0, правая грань - 1, нижняя - 2, левая - 3).
Группа - выход:
- x - номер столбца ячейки, которой будет заканчиваться трубопровод, нумерация начинается с 0 и следует слева направо;
- y - номер строка ячейки, которой будет заканчиваться трубопровод, нумерация начинается с 0 и следует сверху вниз;
- грань - номер грани ячейки элемента, которая считается выходом (верхняя грань - значение 0, правая - 1, нижняя - 2, левая - 3).
Группа - настройки уровня:
- Расклад - "рисунок" собранного уровня в виде массива пар чисел через запятую, например, 1,0,0,0,2,3,.. и т.д. Каждая пара чисел описывает один элемент (ячейку), первое число в паре - номер кадра анимации, который будет рисоваться в ячейке, второе число - угол поворота этого кадра (0 - без поворота, 1 - поворот на 90 по часовой стрелке, 2 - поворот на 180 по часовой, 3 - поворот на 270 по часовой). Элементы описываются построчно, начиная с левого верхнего. Для пустых ячеек первое число в паре - 0 (начальный пустой кадр анимации).
- файл уровней - Путь к файлу с описанием уровней;
- номер уровня - Номер уровня.
Проверка висячих - 1- не считать уровень пройденным, если у присоединенного ко вхожу узла есть свободные соединения нет=0, да=1";
вращать кресты - условие сбора уровня, принимает значение 0 или 1. 1-крестообразные ячейки будут вращаться, 0-не будут (речь идет о кадрах 4 и 5, эффекта такое вращение в любом случае не дает нет=0, да=1".
Добавляемые параметры
Меню выбора Добавляемые параметры к объектам активируется по правой кнопки мыши.
Вход в трубопровод (используется, если входов больше одного):
- x - номер столбца ячейки, с которой будет начинаться трубопровод;
- y - номер строка ячейки, с которой будет начинаться трубопровод;
- грань - номер грани ячейки элемента, которая считается входом.
Выход из трубопровода (используется, если выходов больше одного):
- x - номер столбца ячейки, которой будет заканчиваться трубопровод;
- y - номер строка ячейки, которой будет заканчиваться трубопровод;
- грань - номер грани ячейки элемента, которая считается входом.
- объект - объект, который перейдет в новое состояние, если элемент трубопровода повернуть правильно;
- состояние - новое состояние объекта из предыдущего поля.
- объект - объект, который перейдет в новое состояние по собиранию pipes;
- состояние - новое состояние объекта из предыдущего поля.
Изменить параметр (свойство) объекта:
- объект - объект, которому будет меняться параметр по собиранию pipes;
- параметр - изменяемый параметр;
- значение - новое значение параметра.
Состояния
Объекту pipes можно передавать следующие состояния:
- init - элементы трубопровода поворачиваются произвольным образом, разрывая соединение входа с выходом;
- skip - каждый элемент поворачивается в положение указанное в поле расклад за время поворота, после чего pipes считается собранным, и устанавливаются добавляемые параметры, если они есть.
- hide_effect - выключает отображение луча, для включения нужно или переинитить объект или нажать на любую ячейку(кроме ячеек с 4 и 5 фреймом).
Файл уровней
Важно! После экспорта файл уровней нужно поместить в папку к layout.xml. Иначе он не попадет в сборку и на устройстве игра работать не будет!
Для объекта можно задать несколько уровней, с помощью xml-файла. При этом поле "расклад" в самом объекте должно быть пустым, иначе будет грузиться уровень, прописанный в этом поле.
Пример файла уровней:
<?xml version="1.0" encoding="UTF-8"?> <levels> <level id="0" field="2,0,5,0,2,1,5,0,5,0,2,0,5,0,2,0,5,0,5,0,2,1,5,0,2,2,2,3,5,0,5,0,5,0, 5,0,5,0,2,0,5,0,2,0,5,0,2,0,2,0,5,0,2,3,5,0,2,2,5,0,5,0,2,0,2,0,5,0,2,0,5,0" fixed="12,0" /> <level id="1" field="2,0,5,0,2,0,5,0,5,0,2,1,5,0,2,0,5,0,5,0,2,1,5,0,5,0,2,2,5,0,5,0,5,0, 2,3,5,0,2,1,5,0,2,1,5,0,2,0,2,2,5,0,2,3,5,0,2,2,5,0,5,0,2,1,2,1,5,0,2,0,5,0" fixed="13,0" /> <level id="2" field="5,0,5,0,2,0,5,0,5,0,2,1,5,0,2,0,5,0,5,0,5,0,2,2,5,0,2,2,5,0,5,0,2,0,5,0,5,0,5,0,5,0, 2,2,5,0,2,2,2,0,5,0,2,3,5,0,2,2,5,0,5,0,5,0,2,1,5,0,2,1,5,0" fixed="13,0" /> </levels>
- level id - номер уровня
- field - описание игрового поля
- fixed - ячейки с заданным начальным положением
В параметре field описываем конфигурацию собранного расклада игры. Отдельная ячейка описывается 2 числами: 1 - тип фишки(номер фрейма в анимации); 2 - угол поворота по часовой стрелке(возможные значения: 0, 1, 2, 3).
В параметре fixed описываем ячейки с заданным начальным углом. Ячейка описывается 2 числами: 1 - номер ячейки на поле(нумерация идет с левого верхнего угла, начинается с 0); 2 - начальный угол поворота по часовой стрелке(возможные значения: 0, 1, 2, 3).
Для смены уровня в объекта нужно изменить параметр level_id и вызвать состояние init.
Вариант игры: прохождение луча
В объект был добавлен функционал, который позволяет сделать миниигру, цель которой - провести луч с точки А в точку Б используя систему зеркал.
Для такого вида труб тоже нужна фреймовая анимация из 7 кадров. 6 из них - пустые кадры (рационально добавить в анимацию 1 пустой кадр и его раскопировать для нужных фреймов) и кадр для отображения зеркала, которое можно вращать(2 фрейм анимации). Также для корректной работы нужно выставить параметр "вращать кресты" в "нет" - это запретит вращать ячейки с 4 и 5 фреймом анимации труб.
Игровое поле набирается только ячейками с 2 и 5 фреймом: 2 фрейм - ячейка с зеркалом, 5 фрейм - через которую проходит луч. Пример уровня:
"2,0,5,0,2,1,5,0,5,0,2,0,5,0,2,0,5,0,5,0,2,1,5,0,2,2,2,3,5,0,5,0,5,0,5,0, 5,0,2,0,5,0,2,0,5,0,2,0,2,0,5,0,2,3,5,0,2,2,5,0,5,0,2,0,2,0,5,0,2,0,5,0"
Уровень можно указать 2 способами:
- в поле "расклад" объекта pipes, при этом файл уровней игнорируется
- с помощью файла уровней
При использовании файла уровней есть возможность принудительного задания начального положения фишки, что может быть нужно для получения корректного начального отображения.
Графика для отображения эффекта прохождения луча добавляется в вкладке "внешний вид - эффект луча". В ней указываем 3 графических ресурса:
- прямая (|) - ресурс для отображения луча проходящего через ячейку(вертикальная прямая, как на 1 кадре анимации для обычных труб)
- угол - ресурс для отображения луча, который отражается зеркалом(должен быть аналогичен 2 кадру для анимации труб)
- крест - ресурс для отображения 2 лучей, которые пересекаются (аналогичен 5 кадру анимации для труб)
При передаче объекту состояния skip, он отрабатывает следующим образом:
- выключается луч
- ячейки разворачиваются в правильную позицию
- включается луч
Также объекту можно передать состояние hide_effect, которое выключает отображение луча. После этого луч включится или при повороте любого зеркала или при передаче объекту init.
Пример: S:\!MOBILE\!!!EditorGames\Wiki_sample
Файл: pipes_light.zip
Примечания и дополнения
Вариантов собранного трубопровода может быть несколько, в зависимости от рисунка, но в случае скипа всегда будет рисоваться вариант, указанный в раскладе.
Трубопровод может иметь несколько входов и выходов. Линия, которая строится при этом, должна соединять в одну сеть все входы и выходы (возможность ставить в соответствие каждому входу свой выход пока не реализована).