Merge master into chore/god-object-decomposition-2nd

Resolve conflicts:
- audio_callback_handler.cpp: keep PR's animation_controller include
- movement_handler.cpp: use PR accessors with master's transportResolved logic
- world_packets.cpp: keep PR's decomposed version (functions moved to split files)

Apply overkill field fix to world_packets_entity.cpp (WotLK
SMSG_ATTACKERSTATEUPDATE missing uint32 overkill between damage and
subDamageCount).
This commit is contained in:
Kelsi 2026-04-05 19:42:25 -07:00
commit e32f4fbff9
9 changed files with 148 additions and 35 deletions

View file

@ -1342,7 +1342,11 @@ void GameHandler::mailMarkAsRead(uint32_t mailId) {
glm::vec3 GameHandler::getComposedWorldPosition() {
if (playerTransportGuid_ != 0 && transportManager_) {
return transportManager_->getPlayerWorldPosition(playerTransportGuid_, playerTransportOffset_);
auto* tr = transportManager_->getTransport(playerTransportGuid_);
if (tr) {
return transportManager_->getPlayerWorldPosition(playerTransportGuid_, playerTransportOffset_);
}
// Transport not tracked — fall through to normal position
}
// Not on transport, return normal movement position
return glm::vec3(movementInfo.x, movementInfo.y, movementInfo.z);