diff -r 07044bf85174 -r 5fcb7681aebd core/PlayerManager.cpp --- a/core/PlayerManager.cpp Mon May 06 12:12:00 2013 -0400 +++ b/core/PlayerManager.cpp Wed May 08 09:21:40 2013 -0400 @@ -67,7 +67,12 @@ SH_DECL_HOOK1_void(IServerGameClients, ClientCommand, SH_NOATTRIB, 0, edict_t *); #endif SH_DECL_HOOK1_void(IServerGameClients, ClientSettingsChanged, SH_NOATTRIB, 0, edict_t *); + +#if SOURCE_ENGINE == SE_DOTA +SH_DECL_HOOK0_void(IServerGameDLL, ServerActivate, SH_NOATTRIB, 0); +#else SH_DECL_HOOK3_void(IServerGameDLL, ServerActivate, SH_NOATTRIB, 0, edict_t *, int, int); +#endif #if SOURCE_ENGINE == SE_DOTA SH_DECL_EXTERN2_void(ConCommand, Dispatch, SH_NOATTRIB, false, void *, const CCommand &); @@ -246,7 +251,11 @@ return ConfigResult_Ignore; } +#if SOURCE_ENGINE == SE_DOTA +void PlayerManager::OnServerActivate() +#else void PlayerManager::OnServerActivate(edict_t *pEdictList, int edictCount, int clientMax) +#endif { static ConVar *tv_enable = icvar->FindVar("tv_enable"); #if SOURCE_ENGINE == SE_ORANGEBOXVALVE @@ -282,7 +291,12 @@ g_OnMapStarted = true; +#if SOURCE_ENGINE == SE_DOTA + extsys->CallOnCoreMapStart(gpGlobals->pEdicts, gpGlobals->maxEntities, gpGlobals->maxClients); +#else extsys->CallOnCoreMapStart(pEdictList, edictCount, m_maxClients); +#endif + m_onActivate->Execute(NULL); m_onActivate2->Execute(NULL);