Вагончики

техническая поддержка по Construct 2

Сообщение Вагончики
» 26 дек 2016, 14:39

rokstars, Гениально) И, кстати, шикарный у Вас мониторчик)) Вот теперь мучаюсь разгрузкой вагонов. Как быть если вдруг один из вагонов из середины состава, как заставить оставшихся догонять и снова впритык ехать?

Есть кусочки хвоста разного цвета, вот при проходе по определённой местности звост нужного цвета должен отваливаться (пропадать)
Только вперёд!
Аватара пользователя

Участник
Сообщений: 89
Я тут с 26 июн 2016
Откуда: Санкт-Петебург
Двиг: Construct 2
Лицензия: Personal
VK: antidedik
Репутация 5 [ ? ]

Сообщение Вагончики
» 26 дек 2016, 15:51

rokstars, Плагина нет RotateTo
Аватара пользователя

Игродел
Сообщений: 2992
Я тут с 24 окт 2014
Откуда: Москва
Двиг: C2
Лицензия: Personal
Репутация 591 [ ? ]

Сообщение Вагончики
» 26 дек 2016, 16:07

Вот вроде в точности всё перенёс, но вагончик появляется только один и ехать даже не хочет(

И бехавиор RotateTo для желающих
rex_rotateto.rar
(45.68 КБ) Скачиваний: 73
MoreWagons.capx
(1.22 МБ) Скачиваний: 68
Только вперёд!
Аватара пользователя

Участник
Сообщений: 89
Я тут с 26 июн 2016
Откуда: Санкт-Петебург
Двиг: Construct 2
Лицензия: Personal
VK: antidedik
Репутация 5 [ ? ]

Сообщение Вагончики
» 26 дек 2016, 20:29

antided, Во-первых, в массив данные вносятся не правильно, во-вторых, при создании поезда нужно вносить в массив UID этого поезда (он же голова) иначе за кем будут вагончики следовать, в-третьих, что-то не так с уничтожением поездов....
Вот тут убрать Trigger once:
Изображение
А в функции нахрен снести цикл по ВСЕМ вагонам. ЗАЧЕМ? Нам нужны вагоны только для данного поезда, а их UID'ы хранятся в массиве.
Изображение
Аватара пользователя

Игродел
Сообщений: 2246
Я тут с 22 авг 2013
Репутация 462 [ ? ]

Сообщение Вагончики
» 27 дек 2016, 01:12

во-вторых, при создании поезда нужно вносить в массив UID этого поезда
- исправил.
Вот тут убрать Trigger once
- убрал, но у Вас он есть там.
А в функции нахрен снести цикл по ВСЕМ вагонам.
- это старая версия смерти, исправил.
Во-первых, в массив данные вносятся не правильно
- вот тут застопорился...

И конечно остаётся открытым вопрос разгрузки вагонов определённого цвета, чтобы остальные вагончики догоняли состав.

Называется найди 10 отличий. Всё так же как и у Вас.
MoreWagons.capx
(1.23 МБ) Скачиваний: 70
27-12-2016 1-10-24.jpg
27-12-2016 1-09-28.jpg
Только вперёд!
Аватара пользователя

Участник
Сообщений: 89
Я тут с 26 июн 2016
Откуда: Санкт-Петебург
Двиг: Construct 2
Лицензия: Personal
VK: antidedik
Репутация 5 [ ? ]


Сообщение Вагончики
» 27 дек 2016, 02:07

Вот я идиот то... Разобрался... если можно это так назвать.

Что можно придумать с разгрузкой вагонов определённого цвета?
Только вперёд!
Аватара пользователя

Участник
Сообщений: 89
Я тут с 26 июн 2016
Откуда: Санкт-Петебург
Двиг: Construct 2
Лицензия: Personal
VK: antidedik
Репутация 5 [ ? ]

Сообщение Вагончики
» 27 дек 2016, 02:33

Ну, например, для того чтобы убрать вагон достаточно знать его UID, далее System-pick by comparison, где в условие пишем Body.UID < thisUID (thisUID - UID вагона, который надо убрать, не уверен на 100%, что это сработает, но думаю должно :biggrin: ), далее в экшены добавить изменение скорости раза в 2, а по прибытии в точку назначения вернуть обратно, так же нужно удалить значение из массива экшеном Delete index, где индекс будет равен TrainArray.IndexOf(thisUID)

Ну как-то так примерно.
Аватара пользователя

Игродел
Сообщений: 2246
Я тут с 22 авг 2013
Репутация 462 [ ? ]

Сообщение Вагончики
» 27 дек 2016, 03:09

Он когда наезжает на область, то его UID я и так получаю, проблема в том... даже не надо чтобы он догонял. надо просто его вырезать из состава с моментальным сдвигом всех прочих.

Проблема именно в том, чтобы состав не заметил потери бойца и поезд не катался с промежутком. А проблема в том, что поезд катается с разными скоростями (она падает от количества вагонов, растёт от двигателей) и меняется она очень динамично.
Была дурацкая идея удалить только последний и цвета попеременять по порядку, но там будут вагончики другого спрайта.

Хм... А весь массив Вы сделали в обратном порядке только чтобы можно было брать array.at(0)? А почему было не использовать array.at(array.width)?
Только вперёд!
Аватара пользователя

Участник
Сообщений: 89
Я тут с 26 июн 2016
Откуда: Санкт-Петебург
Двиг: Construct 2
Лицензия: Personal
VK: antidedik
Репутация 5 [ ? ]

Сообщение Вагончики
» 27 дек 2016, 03:45

antided писал(а):А весь массив Вы сделали в обратном порядке только чтобы можно было брать array.at(0)? А почему было не использовать array.at(array.width)?


Нет, просто так удобнее. В противном случае пришлось бы запускать цикл, начиная с конечного элемента.
Аватара пользователя

Игродел
Сообщений: 2246
Я тут с 22 авг 2013
Репутация 462 [ ? ]



Вернуться в Вопрос-Ответ по Construct 2

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх