diff --git a/core/CTranslator.cpp b/core/CTranslator.cpp index 059f1366..11a37c6f 100644 --- a/core/CTranslator.cpp +++ b/core/CTranslator.cpp @@ -22,6 +22,7 @@ #include "sourcemod.h" CTranslator g_Translator; +CPhraseFile *g_pCorePhrases = NULL; struct trans_t { @@ -574,6 +575,10 @@ const char *CPhraseFile::GetFilename() return m_File.c_str(); } +/************************** + ** MAIN TRANSLATOR CODE ** + **************************/ + CTranslator::CTranslator() { m_pStringTab = new BaseStringTable(2048); @@ -597,6 +602,12 @@ CTranslator::~CTranslator() delete m_pStringTab; } +void CTranslator::OnSourceModAllInitialized() +{ + unsigned int id = FindOrAddPhraseFile("core.cfg"); + g_pCorePhrases = GetFileByIndex(id); +} + bool CTranslator::GetLanguageByCode(const char *code, unsigned int *index) { void *_index; diff --git a/core/CTranslator.h b/core/CTranslator.h index a77e7405..a487198c 100644 --- a/core/CTranslator.h +++ b/core/CTranslator.h @@ -90,11 +90,15 @@ private: bool m_FileLogged; }; -class CTranslator : public ITextListener_SMC +class CTranslator : + public ITextListener_SMC, + public SMGlobalClass { public: CTranslator(); ~CTranslator(); +public: //SMGlobalClass + void OnSourceModAllInitialized(); public: //ITextListener_SMC void ReadSMC_ParseStart(); SMCParseResult ReadSMC_NewSection(const char *name, bool opt_quotes); @@ -117,6 +121,7 @@ private: String m_CustomError; }; +extern CPhraseFile *g_pCorePhrases; extern CTranslator g_Translator; #endif //_INCLUDE_SOURCEMOD_TRANSLATOR_H_