Decompile 2 functions in Source/Contents/ClientTiming.cpp, Source/Client/Replay.cpp, ...

Batch #7250 by eAthena: 0 byte-identical, 2 confirmed by peer review.

- fn_24203 CSession::BuildReservedReplayRecords: logic confirmed by peer review
- fn_06365 ShowPlayerLocation: logic confirmed by peer review

Peer-reviewed-by: meitogi, alisonrag, Lumen
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-10-31 05:21:19 +00:00
commit d971cb7a98
2 changed files with 33 additions and 0 deletions

View file

@ -990,3 +990,31 @@ void RequestPlayerAction31() {
}
// OFFSET: 0x006C5B40
// FUNCTION: fn_06365
void ShowPlayerLocation() {
CGameMode* mode = static_cast<CGameMode*>(g_modeMgr.GetGameMode());
if (!mode) {
return;
}
const auto* player = reinterpret_cast<const CRenderObject*>(mode->scene->player);
if (!player) {
return;
}
int column = 0;
int row = 0;
mode->WorldCell(player->render.position.x, player->render.position.z, column, row);
std::string name = mode->MapName();
if (name.size() > 4) {
name.resize(name.size() - 4);
}
const std::string text = std::format("{}({}) : {}, {}", g_session.GetMapDisplayName(mode->MapName().c_str()), name.c_str(), column, row);
g_windowMgr.SendNotice(3, 0, 0, 0, 0, 0);
g_windowMgr.SendNotice(1, reinterpret_cast<std::intptr_t>(text.c_str()), 0x64FFFF, 0, 0, 0);
if (g_serviceType != 10) {
g_windowMgr.SendNotice(19, reinterpret_cast<std::intptr_t>(text.c_str()), 0x64FFFF, 0, 0, 0);
}
}