Тема: MO_Transport
Показать сообщение отдельно
Старый 24.06.2011, 17:25   #21
Deamon
WowCore Dev
 
Регистрация: 11.03.2010
Сообщений: 112
Сказал(а) спасибо: 10
Поблагодарили 51 раз(а) в 25 сообщениях
Deamon Скоро придёт к известности
По умолчанию

Цитата:
Сообщение от HuntsMan Посмотреть сообщение
...
Вот поэтому я и говорю, что вы не знаете механики транспорта на клиенте и пытаетесь делать какие-то выводы.

1) Клиент считает, что НПС\Плеер находится на корабле, если в структуре MovementData в поле GUID'а транспорта стоит собственно GUID соответствующего транспорта. И когда NPC или Player стоит на транспорте - клиент сам апдейтит НА СВОЕЙ СТОРОНЕ их координаты, если транспорт совершает движение. На сервак он ничего при этом не посылает

2) Насчет второго примера. Все правильно. Об этом я и говорил. Расстояние для двух объектов, находящихся на транспорте, должно расчитываться на основании их смещения относительно центра корабля. А для остальных объектов должна расстояние должно браться относительно глобальных координат.

Т.е:
а) Если A и B находяться на одном и том же транспорте - то считать расстояние по относительным координатам.
б) Иначе - считать по относительным координатам.

И предвидя следующий вопрос:
1) Когда плеер стоит на транспорте и на fly mount'е взлетает в воздух, признак нахождения на транспорте моментально сбрасывается.
2) Когда плеер на fly mount'е подлетает к транспорту, признак нахождения на транспорте установится только когда плеер прекратит полет и приземлится на корабль.

Последний раз редактировалось Deamon; 24.06.2011 в 17:30.
Deamon вне форума   Ответить с цитированием