diff --git a/src/server/game/Scripting/ScriptDefines/ServerScript.cpp b/src/server/game/Scripting/ScriptDefines/ServerScript.cpp
index 32998652c..faab0ca53 100644
--- a/src/server/game/Scripting/ScriptDefines/ServerScript.cpp
+++ b/src/server/game/Scripting/ScriptDefines/ServerScript.cpp
@@ -15,13 +15,14 @@
* with this program. If not, see .
*/
-#include "ServerScript.h"
+#include "IoContext.h"
#include "ScriptMgr.h"
#include "ScriptMgrMacros.h"
+#include "ServerScript.h"
-void ScriptMgr::OnNetworkStart()
+void ScriptMgr::OnNetworkStart(Acore::Asio::IoContext& ioContext)
{
- CALL_ENABLED_HOOKS(ServerScript, SERVERHOOK_ON_NETWORK_START, script->OnNetworkStart());
+ CALL_ENABLED_HOOKS(ServerScript, SERVERHOOK_ON_NETWORK_START, script->OnNetworkStart(ioContext));
}
void ScriptMgr::OnNetworkStop()
diff --git a/src/server/game/Scripting/ScriptDefines/ServerScript.h b/src/server/game/Scripting/ScriptDefines/ServerScript.h
index 07ac15b8f..c583856e2 100644
--- a/src/server/game/Scripting/ScriptDefines/ServerScript.h
+++ b/src/server/game/Scripting/ScriptDefines/ServerScript.h
@@ -18,6 +18,7 @@
#ifndef SCRIPT_OBJECT_SERVER_SCRIPT_H_
#define SCRIPT_OBJECT_SERVER_SCRIPT_H_
+#include "IoContext.h"
#include "ScriptObject.h"
#include
#include // NOTE: this import is NEEDED (even though some IDEs report it as unused)
@@ -41,6 +42,7 @@ protected:
public:
// Called when reactive socket I/O is started (WorldSocketMgr).
virtual void OnNetworkStart() { }
+ virtual void OnNetworkStart(Acore::Asio::IoContext& /*ioContext*/) { OnNetworkStart(); }
// Called when reactive I/O is stopped.
virtual void OnNetworkStop() { }
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h
index 9fdc06897..5e7bf86c5 100644
--- a/src/server/game/Scripting/ScriptMgr.h
+++ b/src/server/game/Scripting/ScriptMgr.h
@@ -154,7 +154,7 @@ public: /* SpellScriptLoader */
void CreateSpellScriptLoaders(uint32 spellId, std::vector::iterator>>& scriptVector);
public: /* ServerScript */
- void OnNetworkStart();
+ void OnNetworkStart(Acore::Asio::IoContext& ioContext);
void OnNetworkStop();
void OnSocketOpen(std::shared_ptr const& socket);
void OnSocketClose(std::shared_ptr const& socket);
diff --git a/src/server/game/Server/WorldSocketMgr.cpp b/src/server/game/Server/WorldSocketMgr.cpp
index 3b5053e1d..d53993eba 100644
--- a/src/server/game/Server/WorldSocketMgr.cpp
+++ b/src/server/game/Server/WorldSocketMgr.cpp
@@ -70,7 +70,7 @@ bool WorldSocketMgr::StartWorldNetwork(Acore::Asio::IoContext& ioContext, std::s
_acceptor->AsyncAcceptWithCallback<&WorldSocketMgr::OnSocketAccept>();
- sScriptMgr->OnNetworkStart();
+ sScriptMgr->OnNetworkStart(ioContext);
return true;
}