mirror of
https://github.com/zeldaret/st
synced 2026-10-15 00:07:59 -04:00
b40c9e9c50
* fix extra cflags not being used * decomp overlay 102 + mlck "ok" * fix build and match issues * type func_01fff350 param1 * add changes report (based on dtk-template) * docs * changes_fmt implicits * fix regressions * cleanup * ninja format * CourseExecLand.cpp -> UnkStruct_027e0ce0_40_102.cpp
113 lines
3.4 KiB
C++
113 lines
3.4 KiB
C++
#include "FileSelect/FileSelect.hpp"
|
|
#include "FileSelect/FileSelectOptionsManager.hpp"
|
|
#include "Unknown/UnkStruct_0204a088.hpp"
|
|
#include "Unknown/UnkStruct_0204a110.hpp"
|
|
#include "Unknown/UnkStruct_ov000_020b50c0.hpp"
|
|
|
|
FileSelectManager_164::FileSelectManager_164(GameModeManagerBase_104 *param1, FileSelectMain *param2) {
|
|
this->mUnk_10 = param2;
|
|
this->mUnk_14 = param1;
|
|
this->mUnk_18 = param1;
|
|
data_0204a088->func_ov000_020611dc(this, 0x12);
|
|
}
|
|
|
|
FileSelectManager_164::~FileSelectManager_164() {
|
|
if (gpFSOptionsManager != NULL) {
|
|
FileSelectManager_164::func_ov019_020d02f4();
|
|
}
|
|
}
|
|
|
|
void FileSelectManager_164::vfunc2_08(unk32 param1) {
|
|
if (param1 == 0) {
|
|
this->mUnk_0C = 0;
|
|
this->mUnk_10->func_ov019_020cb6e8();
|
|
data_0204a110.func_0201967c(0, 0x13C, 0x2D, 0, 4);
|
|
}
|
|
}
|
|
|
|
void FileSelectManager_164::vfunc2_0C(unk32 param1) {
|
|
if (param1 == 0) {
|
|
switch (this->mUnk_0C) {
|
|
case 0:
|
|
if (this->mUnk_10->func_ov019_020cb748() && !data_0204a110.mUnk_DDC.mUnk_0C->UnkCheck1()) {
|
|
data_0204a088->func_ov000_02061224();
|
|
this->mUnk_0C = 1;
|
|
}
|
|
break;
|
|
case 1:
|
|
data_0204a088->func_ov000_02061230();
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
void FileSelectManager_164::vfunc2_14(unk32 param1) {}
|
|
|
|
void FileSelectManager_164::vfunc_54(unk32 param1, unk32 param2) {
|
|
data_0204999c.func_02013014();
|
|
data_0204999c.mUnk_60 = 0xD6D8;
|
|
data_ov000_020b50c0.func_ov000_0206a758();
|
|
this->mUnk_10->Detach();
|
|
this->mUnk_10->func_ov019_020cb664();
|
|
data_0204a110.func_02019538(0x26, 1);
|
|
FileSelectOptionsManager::Create(this->mUnk_18, this->mUnk_10->mSaveSlotIndex);
|
|
|
|
FileSelectOptionsManager *pVar1 = gpFSOptionsManager;
|
|
this->mUnk_14->Append(pVar1);
|
|
pVar1->vfunc_18();
|
|
|
|
data_0204999c.func_02013070();
|
|
}
|
|
|
|
void FileSelectManager_164::vfunc2_18(unk32 param1) {
|
|
if (param1 == 0) {
|
|
this->mUnk_0C = 1;
|
|
gpFSOptionsManager->func_ov019_020cc85c(2);
|
|
data_0204a110.GetUnkDDC()->func_0201e698();
|
|
}
|
|
}
|
|
|
|
void FileSelectManager_164::vfunc_5C(unk32 param1) {
|
|
if (param1 == 0) {
|
|
switch (this->mUnk_0C) {
|
|
case 1:
|
|
if (gpFSOptionsManager->func_ov019_020cc874() != 0 && !data_0204a110.mUnk_DDC.mUnk_0C->UnkCheck1()) {
|
|
data_0204a088->func_ov000_02061224();
|
|
this->mUnk_0C = 0;
|
|
}
|
|
break;
|
|
case 0:
|
|
if (this->mUnk_10->func_ov019_020cb748()) {
|
|
data_0204a088->func_ov000_02061230();
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
void FileSelectManager_164::vfunc_58(unk32 param1, unk32 param2) {
|
|
data_0204999c.func_02013014();
|
|
data_0204999c.mUnk_60 = 0xD6D8;
|
|
FileSelectManager_164::func_ov019_020d02f4();
|
|
data_0204a110.func_02019538(0x25, 1);
|
|
|
|
FileSelectMain *temp_r4 = this->mUnk_10;
|
|
this->mUnk_14->Append(temp_r4);
|
|
temp_r4->vfunc_18();
|
|
|
|
this->mUnk_10->func_ov019_020cb5dc();
|
|
this->mUnk_10->func_ov019_020cb718();
|
|
data_ov000_020b50c0.func_ov000_0206a77c();
|
|
data_0204999c.func_02013070();
|
|
}
|
|
|
|
void FileSelectManager_164::func_ov019_020d02f4() {
|
|
if (gpFSOptionsManager != NULL) {
|
|
delete gpFSOptionsManager;
|
|
}
|
|
}
|