diff -r bd38ac67afe1 -r d36fac1a8203 extensions/tf2/extension.cpp --- a/extensions/tf2/extension.cpp Thu Apr 10 00:10:45 2008 +0000 +++ b/extensions/tf2/extension.cpp Thu Apr 10 04:49:17 2008 +0000 @@ -34,6 +34,7 @@ #include "RegNatives.h" #include "iplayerinfo.h" #include "sm_trie_tpl.h" +#include "criticals.h" /** * @file extension.cpp @@ -48,6 +49,8 @@ SMEXT_LINK(&g_TF2Tools); +ICvar *icvar = NULL; + CGlobalVars *gpGlobals = NULL; sm_sendprop_info_t *playerSharedOffset; @@ -94,6 +97,10 @@ playerhelpers->RegisterCommandTargetProcessor(this); + spengine = g_pSM->GetScriptingEngine(); + + g_pCVar = icvar; + return true; } @@ -105,6 +112,10 @@ SH_ADD_HOOK(IServerGameDLL, ServerActivate, gamedll, SH_STATIC(OnServerActivate), true); + GET_V_IFACE_CURRENT(GetEngineFactory, icvar, ICvar, CVAR_INTERFACE_VERSION); + + GET_V_IFACE_CURRENT(GetServerFactory, gameents, IServerGameEnts, INTERFACEVERSION_SERVERGAMEENTS); + return true; } @@ -120,8 +131,16 @@ void TF2Tools::SDK_OnAllLoaded() { SM_GET_LATE_IFACE(BINTOOLS, g_pBinTools); + + g_CriticalHitManager.Init(); } +bool TF2Tools::RegisterConCommandBase(ConCommandBase *pVar) +{ + return g_SMAPI->RegisterConCommandBase(g_PLAPI, pVar); +} + + bool TF2Tools::QueryRunning(char *error, size_t maxlength) { SM_CHECK_IFACE(BINTOOLS, g_pBinTools); @@ -291,7 +310,6 @@ if (!filled) { trie.insert("scout", TFClass_Scout); - trie.insert("scout", TFClass_Scout); trie.insert("sniper", TFClass_Sniper); trie.insert("soldier", TFClass_Soldier); trie.insert("demoman", TFClass_DemoMan);