Decompile 6 functions in Source/UI/Edit/UIEditCtrl.cpp, Source/UI/Buttons/UINaviLinkButton.h, ...

Batch #1404 by Yommy: 6 byte-identical, 0 confirmed by peer review.

- fn_13327 UIItemWnd::Slot18: byte-identical
- fn_13351 UIItemStoreFindWnd::Slot26: byte-identical
- fn_13352 UIItemStoreSubWnd::Slot26: byte-identical
- fn_13387 UIMerchantItemMyShopWnd::Slot19: byte-identical
- fn_13388 UIMerchantItemShopWnd::Slot19: byte-identical
- fn_13407 UISkillListWnd::Slot33: byte-identical

Merged automatically: every function is byte-identical to the original.
This commit is contained in:
ragnarok-clanker 2026-10-28 12:35:18 +00:00
commit f85ea0d07c
11 changed files with 172 additions and 0 deletions

View file

@ -16,6 +16,7 @@ public:
UINaviLinkButton(UIWindowContext& windows, UIButtonContext& buttons, NavigationDestination& navigation);
~UINaviLinkButton() override;
void Slot25(int x, int y) override;
std::string Link();
std::string link;
private:

View file

@ -0,0 +1,17 @@
#ifndef RAGNAROK_SOURCE_UI_BUTTONS_UISPRITEBUTTON_H
#define RAGNAROK_SOURCE_UI_BUTTONS_UISPRITEBUTTON_H
#include "UI/Buttons/UIButton.h"
#include <string>
class UISpriteButton : public UIButton {
public:
int FrameHeight(int action, int frame);
int FrameWidth(int action, int frame);
/* 00CC */ std::string spriteName;
/* 00E4 */ std::string actionName;
};
#endif

View file

@ -14,6 +14,19 @@
#include "UI/Window/UIWindow.h"
#include "UI/Window/UIWindowMgr.h"
#include "Render/Renderer.h"
#include "Render/Textures/SpritePixels.h"
#include "Resource/ResourceMgr.h"
#include "Resource/Sprites/ActionResource.h"
#include "Resource/Sprites/SpriteResource.h"
#include "UI/Buttons/UINaviLinkButton.h"
#include "UI/Buttons/UISpriteButton.h"
#include "UI/Item/UIItemStoreFindWnd.h"
#include "UI/Item/UIItemStoreSubWnd.h"
#include "UI/Item/UIItemWnd.h"
#include "UI/Shop/UIMerchantItemMyShopWnd.h"
#include "UI/Shop/UIMerchantItemShopWnd.h"
#include "UI/Shop/UINoticeMessageBox_LockSellItem.h"
#include "UI/Skill/UISkillListWnd.h"
#include <algorithm>
#include <cstdint>
@ -582,3 +595,50 @@ void UIEditCtrl::MoveReadingWindow(int x) {
window->Move(left, top);
}
// OFFSET: 0x00858B80
// OFFSET: 0x00858BE0
// OFFSET: 0x00858C50
// OFFSET: 0x0097E3E0
// FUNCTION: fn_13327
void UIItemWnd::Slot18() {
}
// OFFSET: 0x00984130
// FUNCTION: fn_13351
void UIItemStoreFindWnd::Slot26(int, int) {
this->SendMsg(nullptr, 6, 232, 0, 0, 0);
}
// OFFSET: 0x00984150
// FUNCTION: fn_13352
void UIItemStoreSubWnd::Slot26(int, int) {
this->SendMsg(nullptr, 6, 232, 0, 0, 0);
}
// OFFSET: 0x00985380
// OFFSET: 0x009886C0
// OFFSET: 0x009886D0
// FUNCTION: fn_13387
void UIMerchantItemMyShopWnd::Slot19() {
this->Invalidate();
}
// OFFSET: 0x009886E0
// FUNCTION: fn_13388
void UIMerchantItemShopWnd::Slot19() {
this->Invalidate();
}
// OFFSET: 0x00988C20
// OFFSET: 0x0098A220
// FUNCTION: fn_13407
void UISkillListWnd::Slot33(int, int) {
this->SendMsg(nullptr, 49, 0, 0, 0, 0);
}

View file

@ -0,0 +1,8 @@
#ifndef RAGNAROK_SOURCE_UI_ITEM_UIITEMBASEWND_H
#define RAGNAROK_SOURCE_UI_ITEM_UIITEMBASEWND_H
#include "UI/Window/UIFrameWnd.h"
class UIItemBaseWnd : public UIFrameWnd {};
#endif

View file

@ -0,0 +1,11 @@
#ifndef RAGNAROK_SOURCE_UI_ITEM_UIITEMSTOREFINDWND_H
#define RAGNAROK_SOURCE_UI_ITEM_UIITEMSTOREFINDWND_H
#include "UI/Item/UIItemBaseWnd.h"
class UIItemStoreFindWnd : public UIItemBaseWnd {
public:
void Slot26(int x, int y) override;
};
#endif

View file

@ -0,0 +1,11 @@
#ifndef RAGNAROK_SOURCE_UI_ITEM_UIITEMSTORESUBWND_H
#define RAGNAROK_SOURCE_UI_ITEM_UIITEMSTORESUBWND_H
#include "UI/Item/UIItemBaseWnd.h"
class UIItemStoreSubWnd : public UIItemBaseWnd {
public:
void Slot26(int x, int y) override;
};
#endif

View file

@ -0,0 +1,14 @@
#ifndef RAGNAROK_SOURCE_UI_ITEM_UIITEMWND_H
#define RAGNAROK_SOURCE_UI_ITEM_UIITEMWND_H
#include "UI/Item/UIItemBaseWnd.h"
class UIItemWnd : public UIItemBaseWnd {
public:
void Slot18() override;
void Slot19() override;
/* 0128 */ UIWindow* unknown_0128;
};
#endif

View file

@ -0,0 +1,12 @@
#ifndef RAGNAROK_SOURCE_UI_SHOP_UIMERCHANTITEMMYSHOPWND_H
#define RAGNAROK_SOURCE_UI_SHOP_UIMERCHANTITEMMYSHOPWND_H
#include "UI/Item/UIItemBaseWnd.h"
class UIMerchantItemMyShopWnd : public UIItemBaseWnd {
public:
void Slot19() override;
void Slot25(int x, int y) override;
};
#endif

View file

@ -0,0 +1,11 @@
#ifndef RAGNAROK_SOURCE_UI_SHOP_UIMERCHANTITEMSHOPWND_H
#define RAGNAROK_SOURCE_UI_SHOP_UIMERCHANTITEMSHOPWND_H
#include "UI/Item/UIItemBaseWnd.h"
class UIMerchantItemShopWnd : public UIItemBaseWnd {
public:
void Slot19() override;
};
#endif

View file

@ -0,0 +1,16 @@
#ifndef RAGNAROK_SOURCE_UI_SHOP_UINOTICEMESSAGEBOX_LOCKSELLITEM_H
#define RAGNAROK_SOURCE_UI_SHOP_UINOTICEMESSAGEBOX_LOCKSELLITEM_H
#include "UI/Window/UIFrameWnd.h"
#include <cstdint>
class UINoticeMessageBox_LockSellItem : public UIFrameWnd {
public:
void Slot19() override;
/* 00B4 */ std::uint32_t startTick;
/* 00B8 */ std::uint32_t duration;
};
#endif

View file

@ -0,0 +1,11 @@
#ifndef RAGNAROK_SOURCE_UI_SKILL_UISKILLLISTWND_H
#define RAGNAROK_SOURCE_UI_SKILL_UISKILLLISTWND_H
#include "UI/Window/UIFrameWnd.h"
class UISkillListWnd : public UIFrameWnd {
public:
void Slot33(int x, int y) override;
};
#endif