Показать сообщение отдельно
Старый 31.05.2014, 19:46   #16
virusav
Администратор
 
Аватар для virusav
 
Регистрация: 19.02.2010
Сообщений: 492
Сказал(а) спасибо: 55
Поблагодарили 341 раз(а) в 154 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Возвращаемся к старой теме.

В ObjectMgr.cpp есть метод void ObjectMgr::AddGameobjectToGrid(uint32 guid, GameObjectData const* data), который вызывается при загрузке го из таблицы `gameobject`, при старте эвента и в пулл-системе, но туда надо передавать реальный гуид объекта.
Если происходит каст спелла с суммоном го, то там вызывается свой метод добавления ловушки: void GameObject::SummonLinkedTrapIfAny().

При спавне, использовании и деспавне оба го (основной и ловушка) должны отрабатывать вместе.

1. Надо ли сразу загружать го-ловушки или добавлять при появлении основного го в мире (эвент, пулл, каст и т.д.)?
2. Может, в структуре основного го должен храниться гуид ловушки и наоборот, чтобы можно было правильно определить связь между ними?
3. Где лучше всего разместить обработчик хотя бы для спавна, чтобы учесть все случаи появления го в мире?
virusav вне форума   Ответить с цитированием