Нуу.. когда проект уже вроде-как написан, там правда не понятно, зачем все переписывать просто чтобы добавить поезд.
Но с другой стороны: А хуле собственно, класс под поезда, движущиеся по карте платформы и подобные вещи не был написан заранее? Вот собственно схуя ли? Как по-мне крайне очевидно, что такие вещи могут понадобиться.
Это настолько очевидно, что когда я вижу персонажа с шапкой в форме поезда, я совершенно правомерно считаю это пиздецом.
Я конечно не копался в их коде, и может у них и правда были неплохие причины сделать именно так, но со стороны это выглядит как лютые костыли.
Такое можно оправдать только если исходники безнадежно проебаны.
Зато обслуживал системы, у которых 20+ лет развития и они перестали обслуживаться лет 5 назад. И на этом фоне я их люто ненавижу.
Вариант со взломом корпоративной сетки разработчиков и пизжения исходных кодов, чтобы это говно хоть как-то заработало - рассматривался совершенно серьезно.
Нууу...
Это что-то из разряда "сделка с совестью" для программистов.
Будешь потом в холодном поту просыпаться от того, сколько костылей пришлось прикрутить, чтобы это заработало.
Если уж на то пошло, то нужно было создавать базовый класс - движимый объект. И от него плясать.
Но как же быть с пассажирами? они же тоже должны как то взаимодействовать с этой "шляпой" по-крайней мере динамика должна нормально просчитываться.
Вот из за таких грязных хаков, имхо у нас потом и вываливается всякое undefined behaviour.
Объясни мне, как программист - программисту, а каким конкретно образом ты понимаешь тех, кто это сделал?
я знаю выход! нужно броню расписать под хохлому!