From 94f06beb570986be4c08ef2af4e4c92e6d5cd678 Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Sat, 31 Oct 2026 18:44:09 +0000 Subject: [PATCH] Decompile 3 functions in Source/UI/Navigation/UINavigationV4Wnd.cpp, Source/UI/Navigation/UINavigationV4Wnd.h Batch #8533 by youko: 0 byte-identical, 3 confirmed by peer review. - fn_03536 UINavigationRuideWnd::UINavigationRuideWnd: logic confirmed by peer review - fn_03537 UINavigationV4Wnd::UINavigationV4Wnd: logic confirmed by peer review - fn_03538 UINavigationroadiconWnd::UINavigationroadiconWnd: logic confirmed by peer review Peer-reviewed-by: eAthena, Yommy Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes). Adds to the build: Source/UI/Navigation/UINavigationV4Wnd.cpp --- Source/UI/Navigation/UINavigationV4Wnd.cpp | 21 +++++++++++++++++++++ Source/UI/Navigation/UINavigationV4Wnd.h | 6 ++++++ data/compile.json | 1 + 3 files changed, 28 insertions(+) create mode 100644 Source/UI/Navigation/UINavigationV4Wnd.cpp diff --git a/Source/UI/Navigation/UINavigationV4Wnd.cpp b/Source/UI/Navigation/UINavigationV4Wnd.cpp new file mode 100644 index 00000000..a5644562 --- /dev/null +++ b/Source/UI/Navigation/UINavigationV4Wnd.cpp @@ -0,0 +1,21 @@ +#include "UI/Navigation/UINavigationV4Wnd.h" + +// OFFSET: 0x005C2860 +// FUNCTION: fn_03536 +UINavigationRuideWnd::UINavigationRuideWnd(UIWindowContext& windows, UIFrameContext& frames, UIButtonContext& controls, UIListBoxContext& lists) + : UIFrameWnd(windows, frames, 0), m_controls(&controls), m_listContext(&lists) { +} + +// OFFSET: 0x005C28C0 +// FUNCTION: fn_03537 +UINavigationV4Wnd::UINavigationV4Wnd(UIWindowContext& windows, UIFrameContext& frames) : UIFrameWnd(windows, frames, 0) { + this->unknown_0118 = 0; + this->unknown_0100 = nullptr; + this->unknown_011C = 2000; +} + +// OFFSET: 0x005C2960 +// FUNCTION: fn_03538 +UINavigationroadiconWnd::UINavigationroadiconWnd(UIWindowContext& windows, UIFrameContext& frames, UIButtonContext& controls) + : UIFrameWnd(windows, frames, 0), m_controls(&controls) { +} diff --git a/Source/UI/Navigation/UINavigationV4Wnd.h b/Source/UI/Navigation/UINavigationV4Wnd.h index f97d911b..e3faac1b 100644 --- a/Source/UI/Navigation/UINavigationV4Wnd.h +++ b/Source/UI/Navigation/UINavigationV4Wnd.h @@ -25,6 +25,7 @@ struct NavigationWindowInfo { class UINavigationV4Wnd : public UIFrameWnd { public: + UINavigationV4Wnd(UIWindowContext& windows, UIFrameContext& frames); void Slot11() override; void Slot15(int width, int height) override; void Slot19() override; @@ -66,12 +67,16 @@ public: /* 0100 */ UIWindow* unknown_0100; /* 0104 */ std::vector unknown_0104; /* 0110 */ NavigationWindowInfo* info; + /* 0114 */ int unknown_0114; + /* 0118 */ int unknown_0118; + /* 011C */ int unknown_011C; }; class UIStaticBitmap; class UINavigationroadiconWnd : public UIFrameWnd { public: + UINavigationroadiconWnd(UIWindowContext& windows, UIFrameContext& frames, UIButtonContext& controls); void Slot15(int width, int height) override; void Paint() override; void Slot31(int x, int y) override; @@ -85,6 +90,7 @@ protected: class UINavigationRuideWnd : public UIFrameWnd { public: + UINavigationRuideWnd(UIWindowContext& windows, UIFrameContext& frames, UIButtonContext& controls, UIListBoxContext& lists); void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; diff --git a/data/compile.json b/data/compile.json index 99050795..d655850d 100644 --- a/data/compile.json +++ b/data/compile.json @@ -919,6 +919,7 @@ "Source/UI/MiniPartyManager.cpp": 2, "Source/UI/MiniPartyPlacement.cpp": 2, "Source/UI/MiniPartyUsableArea.cpp": 2, + "Source/UI/Navigation/UINavigationV4Wnd.cpp": 2, "Source/UI/Party/UIAdvenPartyBoardWnd.cpp": 2, "Source/UI/Party/UIApplyForPartyWnd.cpp": 2, "Source/UI/Party/UIMiniPartyWnd.cpp": 2,