diff -r 2fe5613a35e3 -r 9921680863d4 core/systems/PluginSys.cpp --- a/core/systems/PluginSys.cpp Wed Mar 14 04:08:59 2007 +0000 +++ b/core/systems/PluginSys.cpp Wed Mar 14 07:54:54 2007 +0000 @@ -16,6 +16,7 @@ #include "ShareSys.h" #include "LibrarySys.h" #include "HandleSys.h" +#include "ForwardSys.h" #include "sourcemm_api.h" #include "sourcemod.h" #include "TextParsers.h" @@ -1879,3 +1880,25 @@ return true; } + +void CPluginManager::AddFunctionsToForward(const char *name, IChangeableForward *pForward) +{ + List::iterator iter; + CPlugin *pPlugin; + IPluginFunction *pFunction; + + for (iter = m_plugins.begin(); iter != m_plugins.end(); iter++) + { + pPlugin = (*iter); + + if (pPlugin->GetStatus() <= Plugin_Paused) + { + pFunction = pPlugin->GetBaseContext()->GetFunctionByName(name); + + if (pFunction) + { + pForward->AddFunction(pFunction); + } + } + } +}