mirror of
https://github.com/zeldaret/st
synced 2026-07-11 07:15:33 -04:00
90203403dd
* GameModeAdventure_001 OK * GameModeAdventure_024 17% * GameModeAdventure_024 73% * GameModeAdventure_024 99% * jp region differences * rename GameModeAdventure_024 and GameModeAdventure + UnkStruct_ov000_020d8660_024 OK * UnkActorSystem1OK * UnkActorSystem2 OK * delink more of ov024 & UnkStruct_027e0998_024 OK * improve instance stuff & UnkStruct_027e0cf8_024 OK * AdventureModeManager_160_024 OK & GameModeStartUp OK * fix regressions * fix regressions 2 * AdventureModeManager_170 OK * AdventureModeManager_174_Base OK * AdventureModeManager_174 OK * mark GameModeAdventure_024 as complete * AdventureModeManager_178 OK * AdventureModeManager_180 OK * AdventureModeManager_184_024 OK * AdventureModeManager_18C_024 OK & AdventureModeManager_190_024 OK * AdventureModeManager_15C_20_00 61% * AdventureModeManager_15C_20_00 OK * jp version differences * delink what's left in the overlay * fix regressions * AdventureModeManager_1B8_Base_024 98% * AdventureModeManager_1B8 48% and link AdventureModeManager_024 * AdventureModeManager_1B8_Base and AdventureModeManager_1B8 OK * oops * mark statics as local
182 lines
4.6 KiB
C++
182 lines
4.6 KiB
C++
#include "MainGame/AdventureMode.hpp"
|
|
#include "Unknown/UnkStruct_0204a088.hpp"
|
|
#include "Unknown/UnkStruct_0204a110.hpp"
|
|
#include "Unknown/UnkStruct_0204e5f8.hpp"
|
|
|
|
extern "C" void func_ov002_020b6d50(void *);
|
|
extern "C" void func_ov002_020b6d68(void *);
|
|
extern "C" unk32 func_ov002_020b6cf4(void *, unk32 param1);
|
|
|
|
THUMB_BEGIN
|
|
|
|
AdventureModeManager_174::AdventureModeManager_174(GameModeManagerBase_104 *param1) :
|
|
AdventureModeManager_174_Base(param1),
|
|
mUnk_B8(0) {
|
|
data_0204a088->func_ov000_020611dc(this, 5);
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_08(unk32 param1) {
|
|
switch (param1) {
|
|
case 1:
|
|
case 6:
|
|
this->mUnk_10.func_0201bb84(0x14, 2, 0x14);
|
|
this->mUnk_10.mUnk_18 = 1;
|
|
data_0204e5f8.func_0201b9a8(&this->mUnk_10);
|
|
break;
|
|
case 0:
|
|
case 2:
|
|
case 3:
|
|
case 4:
|
|
case 5:
|
|
case 7:
|
|
case 8:
|
|
case 9:
|
|
case 10:
|
|
case 11:
|
|
case 12:
|
|
case 13:
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_0C(unk32 param1) {
|
|
switch (param1) {
|
|
case 1:
|
|
case 6:
|
|
if (this->mUnk_10.mUnk_0D == this->mUnk_10.mUnk_10) {
|
|
data_0204a088->func_ov000_02061230();
|
|
}
|
|
break;
|
|
case 0:
|
|
case 2:
|
|
case 3:
|
|
case 4:
|
|
case 5:
|
|
case 7:
|
|
case 8:
|
|
case 9:
|
|
case 10:
|
|
case 11:
|
|
case 12:
|
|
case 13:
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_10(unk32 param1, unk32 param2) {
|
|
if (param2 != 1) {
|
|
return;
|
|
}
|
|
|
|
GetAdventureModeManager()->func_ov024_020c699c();
|
|
|
|
switch (param1) {
|
|
case 1:
|
|
case 6:
|
|
this->func_ov024_020c88f0();
|
|
this->mUnk_B8 = func_ov002_020b6cf4(&this->mUnk_0C, 0);
|
|
func_ov002_020b6d50(&this->mUnk_BC);
|
|
break;
|
|
case 2:
|
|
case 8:
|
|
data_0204a110.func_02019528();
|
|
data_0204a110.func_02018d78(3);
|
|
data_0204a088->func_ov000_02061248();
|
|
func_ov002_020b6d68(&this->mUnk_BC);
|
|
this->mUnk_B8 = func_ov002_020b6cf4(&this->mUnk_0C, 2);
|
|
break;
|
|
case 12:
|
|
case 13:
|
|
this->mUnk_B8 = func_ov002_020b6cf4(&this->mUnk_0C, 0);
|
|
break;
|
|
case 0:
|
|
case 3:
|
|
case 4:
|
|
case 5:
|
|
case 7:
|
|
case 9:
|
|
case 10:
|
|
case 11:
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_18(unk32 param1) {
|
|
switch (param1) {
|
|
case 1:
|
|
this->mUnk_10.func_0201bb84(0x14, 2, 0x14);
|
|
this->mUnk_10.mUnk_18 = 1;
|
|
data_0204e5f8.func_0201b9a8(&this->mUnk_10);
|
|
break;
|
|
case 2:
|
|
this->mUnk_10.func_0201bb84(0x14, 2, 0x14);
|
|
this->mUnk_10.mUnk_18 = 0;
|
|
data_0204e5f8.func_0201b9a8(&this->mUnk_10);
|
|
break;
|
|
case 8:
|
|
case 12:
|
|
case 13:
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_1C(unk32 param1) {
|
|
switch (param1) {
|
|
case 1:
|
|
case 2:
|
|
if (this->mUnk_10.mUnk_0D == this->mUnk_10.mUnk_10) {
|
|
data_0204a088->func_ov000_02061230();
|
|
}
|
|
break;
|
|
case 8:
|
|
case 12:
|
|
case 13:
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_20(unk32 param1, unk32 param2) {
|
|
if (param2 != 1) {
|
|
return;
|
|
}
|
|
|
|
this->mUnk_B8 = 0;
|
|
|
|
switch (param1) {
|
|
case 1:
|
|
this->func_ov024_020c8b2c();
|
|
break;
|
|
case 2:
|
|
func_ov002_020b6d50(&this->mUnk_BC);
|
|
data_0204a088->func_ov000_02061248();
|
|
data_0204a110.func_02018d78(5);
|
|
GetAdventureModeManager()->func_ov024_020c555c(5);
|
|
GetAdventureModeManager()->func_ov024_020c53e8();
|
|
GetAdventureModeManager()->vfunc_38(SceneIndex_f_hyral, 0, 0, 0);
|
|
data_0204a110.func_02019528();
|
|
data_0204a110.func_02019538(0x0F, 1);
|
|
break;
|
|
case 8:
|
|
data_0204a110.func_02018d78(5);
|
|
func_ov002_020b6d50(&this->mUnk_BC);
|
|
data_0204a088->func_ov000_02061248();
|
|
data_0204a110.func_02019528();
|
|
data_0204a110.func_02019538(0x0F, 1);
|
|
data_0204a110.GetUnkD9C()->func_0201c494(0);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void AdventureModeManager_174::vfunc_24() {}
|
|
|
|
THUMB_END
|
|
|
|
AdventureModeManager_174::~AdventureModeManager_174() {}
|