Decompile 3 functions in Source/UI/Window/UIWindow.cpp, Source/Client/Mode/CGameMode.h, ...

Batch #1400 by Yommy: 0 byte-identical, 3 confirmed by peer review.

- fn_03560 UIWindow::Slot44: logic confirmed by peer review
- fn_03565 CGameMode::MapName: logic confirmed by peer review
- fn_03568 UINavigationV4Wnd::IsListShown: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
This commit is contained in:
ragnarok-clanker 2026-10-28 12:35:57 +00:00
commit 26ff979bde
3 changed files with 23 additions and 2 deletions

View file

@ -6,13 +6,16 @@
#include "Contents/ActorNameCard.h"
#include <cstddef>
#include <string>
class CView;
struct WorldScene;
class CGameMode : public CMode {
public:
/* 0058 */ unsigned char unknown_0058[0x74];
/* 0058 */ unsigned char unknown_0058[0x10];
/* 0068 */ char mapName[16];
/* 0078 */ unsigned char unknown_0078[0x54];
/* 00CC */ WorldScene* scene;
/* 00D0 */ CView* camera;
/* 00D4 */ unsigned char unknown_00D4[0x8C];
@ -20,9 +23,12 @@ public:
/* 0194 */ unsigned char unknown_0194[0x174];
/* 0308 */ ModeDragState drag;
/* 03C8 */ unsigned char unknown_03C8[0x2A8];
std::string MapName();
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(offsetof(CGameMode, mapName) == 0x68);
static_assert(offsetof(CGameMode, scene) == 0xCC);
static_assert(offsetof(CGameMode, camera) == 0xD0);
static_assert(offsetof(CGameMode, nameCard) == 0x160);

View file

@ -21,6 +21,7 @@ public:
bool ClearRouteTexts();
void LayoutWithoutDetails();
void LayoutWithDetails();
bool IsListShown() const;
/* 00B4 */ UIWindow* unknown_00B4;
/* 00B8 */ UIWindow* unknown_00B8;

View file

@ -1,3 +1,4 @@
#include "Client/Mode/CGameMode.h"
#include "Client/Mode/ModeCursor.h"
#include "Client/Mode/ModeEvents.h"
#include "Network/TextEncoding.h"
@ -424,7 +425,8 @@ void UIWindow::Slot43() {
// OFFSET: 0x005C4480
// FUNCTION: fn_03560
std::vector<std::uint32_t> UIWindow::Slot44() {
return {};
std::vector<std::uint32_t> result;
return result;
}
// OFFSET: 0x005C8F60
@ -1181,6 +1183,18 @@ bool UINavigationV4Wnd::ClearRouteTexts() {
return true;
}
// OFFSET: 0x005C4520
// FUNCTION: fn_03565
std::string CGameMode::MapName() {
return this->mapName;
}
// OFFSET: 0x005C45D0
// FUNCTION: fn_03568
bool UINavigationV4Wnd::IsListShown() const {
return this->unknown_00D4->geometry.unknown_0030 != 0;
}
// OFFSET: 0x005C4690
// FUNCTION: fn_03575
void UINavigationV4Wnd::LayoutWithoutDetails() {