CSM.Dev

Сложный лифт HL1\Xash

Итак, есть лифт на 4 этажа. Из кнопок вызова только панель внутри, а из фич ксаша пока только парент этих кнопок к лифту. Так что все логические энтити халфовские. Собсно задачи:

1.Выявить баги
2.Прикрутить кнопки вызова на этажах
3.Прикрутить двери (внутри кабины и на этажах)

Хл-1 часть (п.1)
Для начала принцип работы лифта вкратце. Во-первых: маршрут у функ_трейна всегда состоит только из двух патчей. По дефолту патчи не связаны, и имеют только имя. Лифт стартует с отдельного патча, связанного с одним из маршрутных в одностороннем порядке. Во-вторых: маршрут назначается в зависимости от выбора этажа. В третьих: когда лифт пребывает, текущий маршрут и таргеты кнопок сбрасываются, и назначаются новые. Т.е. для кнопок - варианты тех этажей, на которые можно уехать с текущего (исключая текущий соответственно). Для патчей - назначение маршрута посредством кнопки. Собсно баг: без костыля посредством мультиманагера и релея лифт а) работает только со второго нажатия кнопки б) останавливается, если нажать любую кнопку, и едет только при повторном нажатии любой кнопки. После нажатия направляется на соответствующий этаж (т.е. если кнопка 3, то этаж 3, итд). Костыль продемонстрирован в самом низу схемы.

Теперь в картинках, чтобы нагляднее, тк схема довольно сложная. Имена большей части энтить выделены цветом, чтобы в таблице была видна их связь:

Оффтоп
Оффтоп
Оффтоп

Теперь рассмотрим алгоритм в рамках одного этажа. В данном случаи первого. Этот алгоритм выполняется одинаково (должен по идее) для всех этажей:

Оффтоп

Однако бывает так, что с четвёртого этажа не едет на второй. Откуда оба вышеуказанных бага - понять не могу.

Теперь ксашевая часть (п.2, п.3) : как уже сказал, нужно прикрутить кнопки вызова на этажах и двери, тобишь встроить в текущую схему ещё какую-то. Это выше моего гуманитарного понимания, так что прошу ваших предложений.

З.Ы. Полноценный лифт можно сделать и без помощи парентов дверей, вообще одними халфовскими энтитями. Но процент гемора вырастает в 2-3 раза, по предварительным подсчётам.
З.З.Ы. Могу написать тутор по завершении создания лифта, используя текущий пример (когда он будет целиком работать как надо).