diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index b1e4435c55..13b8f2229f 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -1845,7 +1845,14 @@ bool Player::TeleportTo(uint32 mapid, float x, float y, float z, float orientati sLog.outDebug("Player %s using client without required expansion tried teleport to non accessible map %u", GetName(), mapid); if (GetTransport()) + { + m_transport->RemovePassenger(this); + m_transport = NULL; + m_movementInfo.t_pos.Relocate(0.0f, 0.0f, 0.0f, 0.0f); + m_movementInfo.t_time = 0; + m_movementInfo.t_seat = -1; RepopAtGraveyard(); // teleport to near graveyard if on transport, looks blizz like :) + } SendTransferAborted(mapid, TRANSFER_ABORT_INSUF_EXPAN_LVL, mEntry->Expansion()); diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index b0edaf904b..a7d279a77e 100755 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -1241,7 +1241,7 @@ void AuraEffect::SendTickImmune(Unit * target, Unit *caster) const void AuraEffect::PeriodicTick(AuraApplication * aurApp, Unit * caster) const { - bool prevented = GetBase()->CallScriptEffectPeriodicHandlers(const_cast(this), aurApp); + bool prevented = GetBase()->CallScriptEffectPeriodicHandlers(this, aurApp); if (prevented) return;