From f6e9bd51fd2c316347b34ff1c8184d1bf6de2426 Mon Sep 17 00:00:00 2001 From: Stefano Borzì Date: Wed, 11 Sep 2024 16:18:36 +0200 Subject: feat(ScriptMgr): add OnArenaStart hook (#19922) --- src/server/game/Scripting/ScriptDefines/ArenaScript.cpp | 5 +++++ src/server/game/Scripting/ScriptDefines/ArenaScript.h | 3 +++ 2 files changed, 8 insertions(+) (limited to 'src/server/game/Scripting/ScriptDefines') diff --git a/src/server/game/Scripting/ScriptDefines/ArenaScript.cpp b/src/server/game/Scripting/ScriptDefines/ArenaScript.cpp index 35baeb271a..b0869c7996 100644 --- a/src/server/game/Scripting/ScriptDefines/ArenaScript.cpp +++ b/src/server/game/Scripting/ScriptDefines/ArenaScript.cpp @@ -39,6 +39,11 @@ bool ScriptMgr::OnBeforeArenaCheckWinConditions(Battleground* const bg) CALL_ENABLED_BOOLEAN_HOOKS(ArenaScript, ARENAHOOK_ON_BEFORE_CHECK_WIN_CONDITION, !script->OnBeforeArenaCheckWinConditions(bg)); } +void ScriptMgr::OnArenaStart(Battleground* bg) +{ + CALL_ENABLED_HOOKS(ArenaScript, ARENAHOOK_ON_ARENA_START, script->OnArenaStart(bg)); +} + ArenaScript::ArenaScript(const char* name, std::vector enabledHooks) : ScriptObject(name, ARENAHOOK_END) { diff --git a/src/server/game/Scripting/ScriptDefines/ArenaScript.h b/src/server/game/Scripting/ScriptDefines/ArenaScript.h index c50a964498..e9a3f1c800 100644 --- a/src/server/game/Scripting/ScriptDefines/ArenaScript.h +++ b/src/server/game/Scripting/ScriptDefines/ArenaScript.h @@ -28,6 +28,7 @@ enum ArenaHook ARENAHOOK_ON_GET_POINTS, ARENAHOOK_CAN_SAVE_TO_DB, ARENAHOOK_ON_BEFORE_CHECK_WIN_CONDITION, + ARENAHOOK_ON_ARENA_START, ARENAHOOK_END }; @@ -48,6 +49,8 @@ public: [[nodiscard]] virtual bool OnBeforeArenaCheckWinConditions(Battleground* const /* bg */) { return true; } [[nodiscard]] virtual bool CanSaveToDB(ArenaTeam* /*team*/) { return true; } + + virtual void OnArenaStart(Battleground* /* bg */) { }; }; #endif -- cgit v1.2.3