From 3a2c3389695e7dd02605b2bd5bb3438ee84cb0c9 Mon Sep 17 00:00:00 2001 From: MDIC Date: Wed, 9 Mar 2022 19:05:45 -0500 Subject: [PATCH] False hit exceptions moved to case thanks @nefertum Co-Authored-By: nefertum <4784289+Nefertum@users.noreply.github.com> --- src/AnticheatMgr.cpp | 87 +++++++++++++++++++++++--------------------- 1 file changed, 46 insertions(+), 41 deletions(-) diff --git a/src/AnticheatMgr.cpp b/src/AnticheatMgr.cpp index e07eb99..27a48ef 100644 --- a/src/AnticheatMgr.cpp +++ b/src/AnticheatMgr.cpp @@ -349,38 +349,38 @@ void AnticheatMgr::SpeedHackDetection(Player* player, MovementInfo movementInfo) if (m_Players[key].GetLastMovementInfo().HasMovementFlag(MOVEMENTFLAG_ONTRANSPORT) && player->GetMapId()) switch (player->GetMapId()) - { - case 369: //Transport: DEEPRUN TRAM - case 607: //Transport: Strands of the Ancients - case 582: //Transport: Rut'theran to Auberdine - case 584: //Transport: Menethil to Theramore - case 586: //Transport: Exodar to Auberdine - case 587: //Transport: Feathermoon Ferry - case 588: //Transport: Menethil to Auberdine - case 589: //Transport: Orgrimmar to Grom'Gol - case 590: //Transport: Grom'Gol to Undercity - case 591: //Transport: Undercity to Orgrimmar - case 592: //Transport: Borean Tundra Test - case 593: //Transport: Booty Bay to Ratchet - case 594: //Transport: Howling Fjord Sister Mercy (Quest) - case 596: //Transport: Naglfar - case 610: //Transport: Tirisfal to Vengeance Landing - case 612: //Transport: Menethil to Valgarde - case 613: //Transport: Orgrimmar to Warsong Hold - case 614: //Transport: Stormwind to Valiance Keep - case 620: //Transport: Moa'ki to Unu'pe - case 621: //Transport: Moa'ki to Kamagua - case 622: //Transport: Orgrim's Hammer - case 623: //Transport: The Skybreaker - case 641: //Transport: Alliance Airship BG - case 642: //Transport: Horde Airship BG - case 647: //Transport: Orgrimmar to Thunder Bluff - case 672: //Transport: The Skybreaker (Icecrown Citadel Raid) - case 673: //Transport: Orgrim's Hammer (Icecrown Citadel Raid) - case 712: //Transport: The Skybreaker (IC Dungeon) - case 713: //Transport: Orgrim's Hammer (IC Dungeon) - case 718: //Transport: The Mighty Wind (Icecrown Citadel Raid) - return; + { + case 369: //Transport: DEEPRUN TRAM + case 607: //Transport: Strands of the Ancients + case 582: //Transport: Rut'theran to Auberdine + case 584: //Transport: Menethil to Theramore + case 586: //Transport: Exodar to Auberdine + case 587: //Transport: Feathermoon Ferry + case 588: //Transport: Menethil to Auberdine + case 589: //Transport: Orgrimmar to Grom'Gol + case 590: //Transport: Grom'Gol to Undercity + case 591: //Transport: Undercity to Orgrimmar + case 592: //Transport: Borean Tundra Test + case 593: //Transport: Booty Bay to Ratchet + case 594: //Transport: Howling Fjord Sister Mercy (Quest) + case 596: //Transport: Naglfar + case 610: //Transport: Tirisfal to Vengeance Landing + case 612: //Transport: Menethil to Valgarde + case 613: //Transport: Orgrimmar to Warsong Hold + case 614: //Transport: Stormwind to Valiance Keep + case 620: //Transport: Moa'ki to Unu'pe + case 621: //Transport: Moa'ki to Kamagua + case 622: //Transport: Orgrim's Hammer + case 623: //Transport: The Skybreaker + case 641: //Transport: Alliance Airship BG + case 642: //Transport: Horde Airship BG + case 647: //Transport: Orgrimmar to Thunder Bluff + case 672: //Transport: The Skybreaker (Icecrown Citadel Raid) + case 673: //Transport: Orgrim's Hammer (Icecrown Citadel Raid) + case 712: //Transport: The Skybreaker (IC Dungeon) + case 713: //Transport: Orgrim's Hammer (IC Dungeon) + case 718: //Transport: The Mighty Wind (Icecrown Citadel Raid) + return; break; } @@ -413,16 +413,21 @@ void AnticheatMgr::SpeedHackDetection(Player* player, MovementInfo movementInfo) if (!timeDiff) timeDiff = 1; - // Rouge Class Killing Spree causes false flags so we add the exception here - if (player->getClass() == CLASS_ROGUE && player->GetAura(51690)) + // Exceptions + switch (player->getClass()) { - return; - } - - // Mage Class Blink causes false flags so we add the exception here - if (player->getClass() == CLASS_MAGE && player->GetAura(1953)) - { - return; + case CLASS_ROGUE: + // Killing Spree + if (player->GetAura(51690)) + return; + break; + case CLASS_MAGE: + // Blink + if (player->GetAura(1953)) + return; + break; + default: + break; } // this is the distance doable by the player in 1 sec, using the time done to move to this point.