diff --git a/sql/characters/base/charactersdb_anticheat.sql b/data/sql/db_characters/base/charactersdb_anticheat.sql similarity index 100% rename from sql/characters/base/charactersdb_anticheat.sql rename to data/sql/db_characters/base/charactersdb_anticheat.sql diff --git a/sql/updates/characters/AC_2022_08_12_00.sql b/data/sql/db_characters/updates/AC_2022_08_12_00.sql similarity index 100% rename from sql/updates/characters/AC_2022_08_12_00.sql rename to data/sql/db_characters/updates/AC_2022_08_12_00.sql diff --git a/sql/updates/characters/AC_2022_08_21_00.sql b/data/sql/db_characters/updates/AC_2022_08_21_00.sql similarity index 100% rename from sql/updates/characters/AC_2022_08_21_00.sql rename to data/sql/db_characters/updates/AC_2022_08_21_00.sql diff --git a/sql/updates/characters/AC_2023_04_05_00.sql b/data/sql/db_characters/updates/AC_2023_04_05_00.sql similarity index 100% rename from sql/updates/characters/AC_2023_04_05_00.sql rename to data/sql/db_characters/updates/AC_2023_04_05_00.sql diff --git a/sql/world/Acore_strings.sql b/data/sql/db_world/base/Acore_strings.sql similarity index 100% rename from sql/world/Acore_strings.sql rename to data/sql/db_world/base/Acore_strings.sql diff --git a/sql/updates/world/AC_2022_08_15_00.sql b/data/sql/db_world/updates/AC_2022_08_15_00.sql similarity index 100% rename from sql/updates/world/AC_2022_08_15_00.sql rename to data/sql/db_world/updates/AC_2022_08_15_00.sql diff --git a/sql/updates/world/AC_2022_12_18_00.sql b/data/sql/db_world/updates/AC_2022_12_18_00.sql similarity index 100% rename from sql/updates/world/AC_2022_12_18_00.sql rename to data/sql/db_world/updates/AC_2022_12_18_00.sql diff --git a/sql/updates/world/AC_2023_03_09_00.sql b/data/sql/db_world/updates/AC_2023_03_09_00.sql similarity index 100% rename from sql/updates/world/AC_2023_03_09_00.sql rename to data/sql/db_world/updates/AC_2023_03_09_00.sql diff --git a/sql/updates/world/AC_2023_06_22_00.sql b/data/sql/db_world/updates/AC_2023_06_22_00.sql similarity index 100% rename from sql/updates/world/AC_2023_06_22_00.sql rename to data/sql/db_world/updates/AC_2023_06_22_00.sql diff --git a/src/AnticheatDBUpdater.cpp b/src/AnticheatDBUpdater.cpp deleted file mode 100644 index e414fa8..0000000 --- a/src/AnticheatDBUpdater.cpp +++ /dev/null @@ -1,80 +0,0 @@ -/* - *MIT License - * - *Copyright (c) 2023 Azerothcore - * - *Permission is hereby granted, free of charge, to any person obtaining a copy - *of this software and associated documentation files (the "Software"), to deal - *in the Software without restriction, including without limitation the rights - *to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - *copies of the Software, and to permit persons to whom the Software is - *furnished to do so, subject to the following conditions: - * - *The above copyright notice and this permission notice shall be included in all - *copies or substantial portions of the Software. - * - *THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - *IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - *FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - *AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - *LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - *OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - *SOFTWARE. - */ - -#include "ScriptMgr.h" -#include "DBUpdater.h" - -inline std::vector GetDatabaseDirectories(std::string const& folderName) -{ - std::vector directories; - - std::string const path = "/modules/mod-anticheat/sql/updates/" + folderName; - - directories.push_back(path); - - return directories; -} - -class AntiCheatLoadingDBUpdates : public DatabaseScript -{ -public: - AntiCheatLoadingDBUpdates() : DatabaseScript("AntiCheatLoadingDBUpdates") {} - - void OnAfterDatabasesLoaded(uint32 updateFlags) override - { - LOG_INFO("sql.sql", "Loading anticheat updates..."); - - if (DBUpdater::IsEnabled(updateFlags)) - { - std::vector loginDatabaseDirectories = GetDatabaseDirectories("auth"); - if (!loginDatabaseDirectories.empty()) - { - DBUpdater::Update(LoginDatabase, &loginDatabaseDirectories); - } - } - - if (DBUpdater::IsEnabled(updateFlags)) - { - std::vector charactersDatabaseDirectories = GetDatabaseDirectories("characters"); - if (!charactersDatabaseDirectories.empty()) - { - DBUpdater::Update(CharacterDatabase, &charactersDatabaseDirectories); - } - } - - if (DBUpdater::IsEnabled(updateFlags)) - { - std::vector worldDatabaseDirectories = GetDatabaseDirectories("world"); - if (!worldDatabaseDirectories.empty()) - { - DBUpdater::Update(WorldDatabase, &worldDatabaseDirectories); - } - } - } -}; - -void AddAntiCheatDBLoadingScripts() -{ - new AntiCheatLoadingDBUpdates(); -} diff --git a/src/AnticheatMgr.cpp b/src/AnticheatMgr.cpp index 76fb2e0..af62cef 100644 --- a/src/AnticheatMgr.cpp +++ b/src/AnticheatMgr.cpp @@ -28,6 +28,7 @@ #include "Player.h" #include "Configuration/Config.h" #include "SpellAuras.h" +#include "DatabaseEnv.h" constexpr auto LANG_ANTICHEAT_ALERT = 30087; constexpr auto LANG_ANTICHEAT_TELEPORT = 30088; diff --git a/src/PassiveAnticheat.cpp b/src/PassiveAnticheat.cpp index d8fe4ca..e892aed 100644 --- a/src/PassiveAnticheat.cpp +++ b/src/PassiveAnticheat.cpp @@ -24,11 +24,9 @@ void startAnticheatScripts(); void AddSC_anticheat_commandscript(); -void AddAntiCheatDBLoadingScripts(); void Addmod_anticheatScripts() { startAnticheatScripts(); AddSC_anticheat_commandscript(); - AddAntiCheatDBLoadingScripts(); } diff --git a/src/cs_anticheat.cpp b/src/cs_anticheat.cpp index f2afe0e..f0beaa4 100644 --- a/src/cs_anticheat.cpp +++ b/src/cs_anticheat.cpp @@ -30,6 +30,7 @@ #include "Configuration/Config.h" #include "Player.h" #include "SpellAuras.h" +#include "DatabaseEnv.h" #if AC_COMPILER == AC_COMPILER_GNU #pragma GCC diagnostic ignored "-Wdeprecated-declarations"