diff --git a/src/AnticheatMgr.cpp b/src/AnticheatMgr.cpp index 90c0046..942aac8 100644 --- a/src/AnticheatMgr.cpp +++ b/src/AnticheatMgr.cpp @@ -478,12 +478,17 @@ void AnticheatMgr::SpeedHackDetection(Player* player, MovementInfo movementInfo) // We check the last MovementInfo for the falling flag since falling down a hill and sliding a bit triggered a false positive if ((clientSpeedRate > speedRate * 1.25f) && !m_Players[key].GetLastMovementInfo().HasMovementFlag(MOVEMENTFLAG_FALLING)) { - if (sConfigMgr->GetOption("Anticheat.WriteLog", true)) + if (!player->CanTeleport()) { - LOG_INFO("module", "AnticheatMgr:: Speed-Hack detected player {} ({})", player->GetName(), player->GetGUID().ToString()); - } + if (sConfigMgr->GetOption("Anticheat.WriteLog", true)) + { + LOG_INFO("module", "AnticheatMgr:: Speed-Hack detected player {} ({})", player->GetName(), player->GetGUID().ToString()); + } - BuildReport(player, SPEED_HACK_REPORT); + BuildReport(player, SPEED_HACK_REPORT); + } + else if (player->CanTeleport()) + player->SetCanTeleport(false); } }