Maintenance: CGameMode layout split, needed to port the CGameMode constructor (fn_21217, 0xCCD880). Evidence is the ctor's own stores

Batch #9949 by ragnarok-clanker: no function's compiled code changes; checked with 289 compiled unit(s), including every includer of Source/Client/Mode/CGameMode.h, Source/UI/Window/UIWindowMgr.h.
This commit is contained in:
ragnarok-clanker 2026-11-02 11:50:55 +00:00
commit 00792cfe86
6 changed files with 61 additions and 47 deletions

View file

@ -3038,7 +3038,7 @@ void CGameMode::ReceiveExchangeItemAddAck(const unsigned char* data) {
// FUNCTION: fn_21625
void CGameMode::ReceiveExchangeRequestAck2(const unsigned char* data) {
const auto* packet = reinterpret_cast<const ExchangeRequestAckPacket*>(data);
const std::string& exchangeName = *reinterpret_cast<const std::string*>(&this->unknown_0130[0x18]);
const std::string& exchangeName = this->exchangeName;
switch (packet->result) {
case 3: {
this->SendMsg(40, 0, 0, 0, 0);
@ -3090,7 +3090,7 @@ void CGameMode::ReceiveExchangeRequestAck(const unsigned char* data) {
g_windowMgr.CloseWindow(10011);
UIWindow* window = g_windowMgr.EnsureWindow(10011);
if (window) {
const std::string& exchangeName = *reinterpret_cast<const std::string*>(&this->unknown_0130[0x18]);
const std::string& exchangeName = this->exchangeName;
window->SendMsg(nullptr, 50, reinterpret_cast<std::intptr_t>(exchangeName.c_str()), 0, 0, 0);
}
break;