Decompile 3 functions in Source/UI/Acceptance/UIChooseSellBuyWnd.cpp, Source/Contents/Configuration/ServiceConfiguration.h, ...
Batch #9377 by secret: 0 byte-identical, 3 confirmed by peer review. - fn_12107 UIChooseWarpWnd::Slot44: logic confirmed by peer review - fn_12110 UIExchangeWnd::Slot44: logic confirmed by peer review - fn_12117 UISayDialogWnd::Slot44: logic confirmed by peer review Peer-reviewed-by: gordaoprogramas, Montyla, Toshiro Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
parent
9c1c7dadbd
commit
7b9ff1b0f7
6 changed files with 109 additions and 1 deletions
|
|
@ -1,6 +1,9 @@
|
|||
#ifndef RAGNAROK_SOURCE_CONTENTS_CONFIGURATION_SERVICECONFIGURATION_H
|
||||
#define RAGNAROK_SOURCE_CONTENTS_CONFIGURATION_SERVICECONFIGURATION_H
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
extern signed char g_language;
|
||||
extern bool g_serviceFlag05;
|
||||
extern bool g_serviceFlag06;
|
||||
|
|
@ -15,6 +18,7 @@ extern const char* g_patcherExeName;
|
|||
extern const char* g_runPatcherMessage;
|
||||
extern const char* g_windowName;
|
||||
extern char g_launchServerName[24];
|
||||
extern std::vector<std::string> g_loadingScreens;
|
||||
|
||||
const char* GetLicenceText();
|
||||
void InitializeServiceStrings();
|
||||
|
|
|
|||
|
|
@ -154,6 +154,9 @@ const char* g_bookmarkKeySuffix = bookmarkKeySuffixText;
|
|||
// GLOBAL: gl_25332
|
||||
int g_window315Enabled = 1;
|
||||
|
||||
// GLOBAL: gl_25391
|
||||
bool g_randomLoadingScreen;
|
||||
|
||||
// OFFSET: 0x0087B500
|
||||
// FUNCTION: fn_11241
|
||||
void UIChatHisBox::Configure(int x, int y, int width, int height, unsigned char) {
|
||||
|
|
@ -6386,3 +6389,95 @@ int CSession::GetTraitStat(int type) {
|
|||
// OFFSET: 0x008C8330
|
||||
|
||||
// OFFSET: 0x008C8A50
|
||||
|
||||
// OFFSET: 0x008D4320
|
||||
// FUNCTION: fn_12107
|
||||
std::vector<unsigned char> UIChooseWarpWnd::Slot44() {
|
||||
std::vector<unsigned char> records;
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(21950, nullptr, 0);
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
for (auto choice = this->m_choices.begin(); choice < this->m_choices.end(); ++choice) {
|
||||
const auto record = BuildReplayTaggedRecord(21953, choice->c_str(), choice->size());
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(21951, nullptr, 0);
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
return records;
|
||||
}
|
||||
|
||||
// OFFSET: 0x008D4E70
|
||||
// FUNCTION: fn_12110
|
||||
std::vector<unsigned char> UIExchangeWnd::Slot44() {
|
||||
std::vector<unsigned char> records;
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20600, nullptr, 0);
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20603, &this->unknown_0108, sizeof(this->unknown_0108));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20604, &this->unknown_010C, sizeof(this->unknown_010C));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20602, this->unknown_00F0.c_str(), this->unknown_00F0.size());
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20605, &this->unknown_00CC, sizeof(this->unknown_00CC));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20606, &this->unknown_00D0, sizeof(this->unknown_00D0));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20607, &this->unknown_00D4, sizeof(this->unknown_00D4));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20608, &this->unknown_00D8, sizeof(this->unknown_00D8));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20609, &this->unknown_00DC, sizeof(this->unknown_00DC));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(20601, nullptr, 0);
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
return records;
|
||||
}
|
||||
|
||||
// OFFSET: 0x008D6D40
|
||||
// FUNCTION: fn_12117
|
||||
std::vector<unsigned char> UISayDialogWnd::Slot44() {
|
||||
std::vector<unsigned char> records;
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(22500, nullptr, 0);
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
const UITagTextViewer* viewer = static_cast<UITagTextViewer*>(this->m_viewer);
|
||||
for (auto text = viewer->m_texts.begin(); text != viewer->m_texts.end(); ++text) {
|
||||
const auto record = BuildReplayTaggedRecord(22503, text->c_str(), text->size());
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(22504, &this->unknown_00D4, sizeof(this->unknown_00D4));
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
{
|
||||
const auto record = BuildReplayTaggedRecord(22501, nullptr, 0);
|
||||
records.insert(records.end(), record.begin(), record.end());
|
||||
}
|
||||
return records;
|
||||
}
|
||||
|
||||
// OFFSET: 0x008E30B0
|
||||
|
|
|
|||
|
|
@ -3,6 +3,9 @@
|
|||
|
||||
#include "UI/Window/UIFrameWnd.h"
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
struct UIButtonContext;
|
||||
struct UIListBoxContext;
|
||||
class UIListBox;
|
||||
|
|
@ -11,8 +14,11 @@ class UIChooseWarpWnd : public UIFrameWnd {
|
|||
public:
|
||||
void Slot15(int width, int height) override;
|
||||
void Paint() override;
|
||||
std::vector<unsigned char> Slot44() override;
|
||||
|
||||
/* 00B4 */ UIListBox* m_list;
|
||||
/* 00B8 */ int unknown_00B8;
|
||||
/* 00BC */ std::vector<std::string> m_choices;
|
||||
|
||||
protected:
|
||||
UIButtonContext* m_controls;
|
||||
|
|
|
|||
|
|
@ -9,11 +9,12 @@
|
|||
class UILoadingWnd : public UIFrameWnd {
|
||||
public:
|
||||
UILoadingWnd(UIWindowContext& windows, UIFrameContext& frames);
|
||||
void Slot15(int width, int height) override;
|
||||
void Paint() override;
|
||||
int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override;
|
||||
|
||||
/* 00B4 */ unsigned char unknown_00B4[0x4];
|
||||
/* 00B8 */ UIBarGraph* m_progressBar;
|
||||
/* 00B8 */ UIBarGraph2* m_progressBar;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ public:
|
|||
void Slot11() override;
|
||||
void Slot19() override;
|
||||
void Paint() override;
|
||||
std::vector<unsigned char> Slot44() override;
|
||||
int ButtonX(UIBitmapButton* button);
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ public:
|
|||
void Slot32(int x, int y) override;
|
||||
void Slot35(int delta) override;
|
||||
void Slot19() override;
|
||||
std::vector<unsigned char> Slot44() override;
|
||||
|
||||
void LayoutButtons();
|
||||
void CancelInput();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue