void WorldSession::HandleSuspendTokenResponse(WorldPackets::Movement::SuspendTokenResponse& /*suspendTokenResponse*/) { if (!_player->IsBeingTeleportedFar()) return; WorldLocation const& loc = GetPlayer()->GetTeleportDest(); if (sMapStore.AssertEntry(loc.GetMapId())->IsDungeon()) { WorldPackets::Instance::UpdateLastInstance updateLastInstance; updateLastInstance.MapID = loc.GetMapId(); SendPacket(updateLastInstance.Write()); } WorldPackets::Movement::NewWorld packet; packet.MapID = loc.GetMapId(); packet.Pos.Relocate(loc); packet.Reason = !_player->IsBeingTeleportedSeamlessly() ? NEW_WORLD_NORMAL : NEW_WORLD_SEAMLESS; SendPacket(packet.Write()); if (_player->IsBeingTeleportedSeamlessly()) HandleMoveWorldportAck(); }
void WorldSession::HandleMoveWorldportAckOpcode(WorldPacket & /*recvData*/) { TC_LOG_DEBUG("network", "WORLD: got MSG_MOVE_WORLDPORT_ACK."); HandleMoveWorldportAck(); }
void WorldSession::HandleMoveWorldportAckOpcode(WorldPackets::Movement::WorldPortResponse& /*packet*/) { HandleMoveWorldportAck(); }