Decompile 11 functions in Source/Contents/ConfigMgr.cpp, Source/Contents/ConfigMgr.h, ...

Batch #3260 by eAthena: 0 byte-identical, 11 confirmed by peer review.

- fn_09042 CConfigMgr::~CConfigMgr: logic confirmed by peer review
- fn_09044 CConfigMgr::Create: logic confirmed by peer review
- fn_09046 CConfigMgr::Destroy: logic confirmed by peer review
- fn_09052 CSpecialPopupMgr::Create: logic confirmed by peer review
- fn_09053 CSpecialPopupMgr::Destroy: logic confirmed by peer review
- fn_09054 CSpecialPopupMgr::GetPopup: logic confirmed by peer review
- fn_09056 FormatPopupString: logic confirmed by peer review
- fn_09058 CSpecialPopupMgr::LuaAddDesc: logic confirmed by peer review
- fn_09059 CSpecialPopupMgr::LuaAddMsg: logic confirmed by peer review
- fn_09077 CSimpleStringMgr::Destroy: logic confirmed by peer review
- fn_09079 CSimpleStringMgr::GetString: logic confirmed by peer review

Peer-reviewed-by: alisonrag
Reviewed-by: ragnarok-clanker
This commit is contained in:
ragnarok-clanker 2026-10-29 22:23:59 +00:00
commit c3d26bcd9d
3 changed files with 150 additions and 0 deletions

View file

@ -6,5 +6,31 @@
CSimpleStringMgr* g_simpleStringMgr = nullptr;
// OFFSET: 0x007A96A0
// FUNCTION: fn_09077
void CSimpleStringMgr::Destroy() {
if (g_simpleStringMgr) {
delete g_simpleStringMgr;
g_simpleStringMgr = nullptr;
}
}
// OFFSET: 0x007A9DA0
// FUNCTION: fn_09079
const char* CSimpleStringMgr::GetString(const char* key) {
STR_TYPE type = STR_TYPE_EMOTION;
if (key == nullptr || std::strlen(key) == 0) {
return nullptr;
}
auto table = this->m_tables.find(type);
if (table == this->m_tables.end()) {
return nullptr;
}
auto entry = table->second.find(std::string(key));
if (entry == table->second.end()) {
return nullptr;
}
return entry->second.c_str();
}