Цитата:
Сообщение от MaxXx2021
Вот еще пища для размышлений. На кате последний эпический квест воргенов, нпц эскортит по движущемуся кораблю в воздухе. Т.Е. в эскорте используется m_creature->GetMotionMaster()->MovePoint(0, A, B, C);
где А, В, С, координаты соответственно на траспорте. Отсюда следует, что нужно возможно делать генерацию координат (Траспортных) в мировые и в генераторе движения при каждом микро телепорте обновлять конечную точку движения и микро точку относительно корабля, если нпц Имеет флаг ON_TRANSPORT. Думаю так если это не хак. А вот что бы просто стояли нужно подумать.
|
Это звучит как относительно относительного...
Транспорт - отдельная карта со всеми вытекающими. И передвижение по нему НПС должно быть самым обычным передвижением. Вопрос в том, как правильно обрабатывать транспорт...
Помню с оффа. Лечу на птичке над корабликом (вылетел с суши - это важно!). Остановлюсь - кораблик дальше едет - я стою. Приземляюсь на кораблик - чуть взлетаю. И всё! Если я взлетел с палубы корабля - я нахожусь на иной карте, которая движется относительно остального, но я относительно её остаюсь неподвижен, т.е. я вишу в воздухе над кораблём, но двигаюсь вместе с ним...